/* ThailandNet functional extensions for the original V9 visual system. */
.tn-filter-groups{margin:18px 0 14px;border-top:1px solid #eee;border-bottom:1px solid #eee;padding:10px 0}
.tn-filterbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0!important}
.tn-filterbar>span{min-width:42px;color:#777;font-size:14px}
.tn-filterbar a{display:inline-block;padding:7px 11px;border:1px solid #ddd;background:#fff;color:#333;text-decoration:none;border-radius:2px;font-size:14px}
.tn-filterbar a:hover,.tn-filterbar a.active{background:#c8102e;border-color:#c8102e;color:#fff}
.tn-pagination{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:22px 0 4px;padding-top:14px;border-top:1px solid #eee}
.tn-pagination span{margin-right:8px;color:#777}.tn-pagination a{min-width:34px;height:34px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #ddd;color:#333;text-decoration:none;background:#fff;border-radius:2px}
.tn-pagination a.active,.tn-pagination a:hover{background:#c8102e;color:#fff;border-color:#c8102e}.tn-result-count{padding:14px 0;color:#777}
.tn-map-box{margin:18px 0 22px;border:1px solid #e5e5e5;background:#fff}.tn-map-head{padding:12px 14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #eee}.tn-map-head b{font-size:17px}.tn-map-head span{color:#777;font-size:13px;flex:1}.tn-map-head a{font-size:13px;color:#c8102e;text-decoration:none}.tn-map{height:380px;background:#f1f3f4}.tn-map-large{height:620px}.tn-map-legend{padding:8px 12px;color:#777;font-size:12px;border-top:1px solid #eee}
.tn-assistant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.tn-assistant-card{display:flex;min-height:116px;flex-direction:column;gap:7px;padding:14px;border:1px solid #e5e5e5;background:#fff;text-decoration:none;color:#222}.tn-assistant-card:hover{border-color:#bbb;background:#fafafa}.tn-assistant-card span{font-size:12px;color:#c8102e}.tn-assistant-card b{font-size:17px;font-weight:600}.tn-assistant-card small{color:#777;line-height:1.65}
.tn-tool-panel{margin:22px 0;padding:18px;border:1px solid #e5e5e5;background:#fafafa}.tn-tool-panel h2{margin:0 0 14px;font-size:21px}.tn-tool-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.tn-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.tn-tool-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#555;min-width:150px}.tn-tool-form input,.tn-tool-form select{height:40px;border:1px solid #ccc;background:#fff;padding:0 10px;font:inherit}.tn-tool-form button{height:40px;padding:0 18px;border:0;background:#c8102e;color:#fff;cursor:pointer}.tn-tool-result{margin-top:14px;padding:14px;background:#fff;border-left:3px solid #c8102e;font-size:16px;line-height:1.7}.tn-tool-note{margin-top:10px;color:#777;font-size:13px}.tn-clock{font-size:34px;font-variant-numeric:tabular-nums}.tn-time-grid,.tn-gold-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tn-time-grid>div,.tn-gold-grid>div{padding:14px;background:#fff;border:1px solid #ddd}.tn-time-grid span,.tn-gold-grid b{display:block;margin-top:7px;font-size:21px}.tn-emergency{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.tn-emergency a{display:flex;flex-direction:column;padding:12px;border:1px solid #ddd;background:#fff;text-decoration:none;color:#222}.tn-emergency b{font-size:22px;color:#c8102e}
.ts-code a.mini-qr,.ts-code a.mini-card{color:inherit;text-decoration:none}
.leaflet-container{font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif}
@media(max-width:900px){.tn-assistant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tn-map-large{height:520px}.tn-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tn-emergency{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tn-assistant-grid,.tn-tool-grid,.tn-time-grid,.tn-gold-grid{grid-template-columns:1fr}.tn-map,.tn-map-large{height:420px}.tn-tool-form{display:grid;grid-template-columns:1fr;width:100%}.tn-tool-form label{min-width:0}.tn-tool-form button{width:100%}.tn-filterbar a{font-size:13px;padding:6px 8px}}
/* 1.4.9: interactive travel assistant, using the original V9 visual rhythm */
.tn-assistant-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;margin:14px 0;border:1px solid #e4e7ea;background:#fafafa}.tn-assistant-summary b{font-size:16px}.tn-assistant-summary span{font-size:13px;color:#666}.tn-assistant-inline-tools{display:grid;gap:16px;margin-top:22px}.tn-assistant-tool-section{scroll-margin-top:18px}.tn-assistant-tool-section .tn-tool-panel{margin:0}.tn-assistant-subtitle{margin:30px 0 12px;font-size:22px}
@media(max-width:640px){.tn-assistant-summary{display:block}.tn-assistant-summary span{display:block;margin-top:5px}}
