.ttwc-hub{--a:#C0392B;--r0:#f8f8f8;--r1:#4CAF50;--r2:#FFDD8D;--r3:#F7855D;--r4:#FF0000;--r5:#7030A0;font-family:inherit;line-height:1.5;color:inherit;max-width:960px;margin:0 auto;padding:0 20px;box-sizing:border-box}
.ttwc-loading{text-align:center;padding:40px;opacity:.5}
.ttwc-title{font-size:22px;font-weight:500;text-align:center;margin:0 0 4px}
.ttwc-issued{text-align:center;font-size:12px;color:var(--a);margin-bottom:18px}
.ttwc-top{display:flex;gap:14px;margin-bottom:20px}
.ttwc-top-left{flex:1;min-width:0}
.ttwc-top-right{width:240px;flex-shrink:0;background:#FDF6EC;padding:12px 14px;font-size:12px;line-height:1.6;color:#333;border-radius:3px}
.ttwc-top-right b{font-weight:600}
.ttwc-search{position:relative;margin-bottom:6px}
.ttwc-search input{width:100%;box-sizing:border-box;padding:9px 12px;font-size:14px;border:1px solid rgba(128,128,128,.6);border-radius:3px;background:#111;color:#f0f0f0}
.ttwc-search input::placeholder{color:#ccc;opacity:.55}
@media(prefers-color-scheme:dark){.ttwc-search input{background:#fff;color:#111}.ttwc-search input::placeholder{color:#555;opacity:.6}}
.cnvs-dark-mode .ttwc-search input,[data-theme="dark"] .ttwc-search input,.dark-mode .ttwc-search input{background:#fff;color:#111}
.cnvs-dark-mode .ttwc-search input::placeholder,[data-theme="dark"] .ttwc-search input::placeholder,.dark-mode .ttwc-search input::placeholder{color:#555;opacity:.6}
.cnvs-dark-mode .ttwc-dd,[data-theme="dark"] .ttwc-dd,.dark-mode .ttwc-dd{background:#fff}
.cnvs-dark-mode .ttwc-ddi,[data-theme="dark"] .ttwc-ddi,.dark-mode .ttwc-ddi{color:#222}
.ttwc-search input:focus{outline:2px solid var(--a);outline-offset:-1px}
.ttwc-dd{position:absolute;top:100%;left:0;right:0;background:#f8f8f7;border:1px solid #999;max-height:200px;overflow-y:auto;z-index:20;display:none;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.ttwc-dd.show{display:block}
.ttwc-ddi{padding:7px 12px;font-size:13px;cursor:pointer;display:flex;justify-content:space-between;color:#222}
.ttwc-ddi:hover{background:rgba(0,0,0,.05)}
.ttwc-ddi-zone{font-size:11px;color:#777}
.ttwc-geo{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--a);cursor:pointer;padding:4px 0;border:none;background:none;font-family:inherit}
.ttwc-geo:hover{text-decoration:underline}
.ttwc-geo-msg{font-size:11px;color:var(--a);margin-top:2px;display:none}
.ttwc-card{padding:12px 14px;margin-top:6px;border-radius:4px;color:#222;display:none}
.ttwc-card.show{display:block}
.ttwc-card-name{font-weight:600;font-size:15px}
.ttwc-card-zone{font-size:12px;color:#555;margin-bottom:6px}
.ttwc-card-dayrow{font-size:12px;margin-bottom:3px;line-height:1.8}
.ttwc-card-dayrow b{font-size:11px;letter-spacing:.02em;opacity:.7;margin-right:4px}
.ttwc-card-norisk{opacity:.4;font-size:11px}
.ttwc-card-change{font-size:12px;color:var(--a);cursor:pointer;margin-top:4px;display:none}
.ttwc-card-change.show{display:inline}
.ttwc-card-change:hover{text-decoration:underline}
.ttwc-noloc{font-size:12px;opacity:.55}
.ttwc-sep{height:3px;background:var(--a);margin:14px 0}
.ttwc-secrow{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;flex-wrap:wrap;gap:4px}
.ttwc-sectitle{font-size:17px;font-weight:500}
.ttwc-legend{display:flex;align-items:center;gap:8px;font-size:11px;opacity:.65;flex-wrap:wrap}
.ttwc-ld{width:9px;height:9px;border-radius:50%;display:inline-block}
.ttwc-dtabs{display:flex;gap:0;margin-bottom:6px}
.ttwc-dtab{padding:5px 14px;font-size:12px;cursor:pointer;border:1px solid rgba(128,128,128,.4);border-bottom:none;opacity:.45;background:transparent;color:inherit;font-family:inherit}
.ttwc-dtab.act{opacity:1;font-weight:600;background:rgba(128,128,128,.06)}
.ttwc-htabs{display:flex;gap:12px;margin-bottom:2px;padding-bottom:6px;border-bottom:1px solid rgba(128,128,128,.25);flex-wrap:wrap}
.ttwc-htab{font-size:12px;cursor:pointer;padding:2px 0;border:none;background:none;color:inherit;font-family:inherit;border-bottom:2px solid transparent;opacity:.6}
.ttwc-htab.act{opacity:1;font-weight:600;border-bottom-color:currentColor}
.ttwc-htab:hover{opacity:.85}
/* ==== Map container ==== */
.ttwc-map-outer{position:relative;border:1px solid rgba(128,128,128,.3);border-radius:3px;overflow:hidden;margin-bottom:3px}
.ttwc-mapw{width:100%;overflow:hidden;cursor:grab}
.ttwc-mapw svg{width:100%;height:auto;display:block;transition:transform .15s ease-out}
.ttwc-zp{cursor:pointer;transition:all .15s}
.ttwc-zp:hover{opacity:.85!important;filter:brightness(1.08)}
/* Map popup */
.ttwc-map-popup{position:absolute;display:none;background:#fff;color:#222;padding:6px 10px;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.25);font-size:12px;pointer-events:none;transform:translate(-50%,-110%);white-space:nowrap;z-index:15;border-left:3px solid var(--a);transition:left .15s ease-out,top .15s ease-out}
.ttwc-map-popup::after{content:'';position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #fff}
.ttwc-popup-name{font-weight:600;font-size:13px;margin-bottom:2px}
.ttwc-popup-nr{opacity:.4;font-size:11px}
/* Map overlays — LOGO: rendered via ::after on .ttwc-map-outer (no child element) */
/* TTMS Early Warning overlay boxes */
.ttwc-ew-overlays{position:absolute;top:8px;left:8px;z-index:12;display:flex;flex-direction:column;gap:4px;max-width:320px;pointer-events:auto}
.ttwc-ew-box{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:3px;font-size:11px;font-weight:600;line-height:1.3;box-shadow:0 1px 4px rgba(0,0,0,.2);white-space:nowrap}
a.ttwc-ew-box-link{text-decoration:none;cursor:pointer;pointer-events:auto;transition:opacity .15s,box-shadow .15s}
a.ttwc-ew-box-link:hover{opacity:.9;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.ttwc-ew-text{flex:1;white-space:normal}
.ttwc-ew-link-icon{text-decoration:none;font-size:14px;line-height:1;flex-shrink:0;opacity:.8}
.ttwc-ew-link-icon:hover{opacity:1}
@media(max-width:768px){.ttwc-ew-overlays{max-width:200px}.ttwc-ew-box{font-size:10px;padding:4px 7px}}
.ttwc-map-attr{position:absolute;bottom:8px;left:8px;font-size:10px;color:#556;opacity:.7}
.ttwc-map-attr a{color:#334;text-decoration:underline}
.ttwc-map-zoom{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:2px}
.ttwc-map-zoom button{width:28px;height:28px;border:1px solid rgba(128,128,128,.4);background:rgba(255,255,255,.9);color:#333;font-size:16px;cursor:pointer;border-radius:3px;display:flex;align-items:center;justify-content:center;line-height:1}
.ttwc-map-zoom button:hover{background:#fff}
.ttwc-map-regions{position:absolute;bottom:8px;left:8px;display:flex;gap:4px;z-index:12;flex-wrap:wrap}
.ttwc-map-regions button{width:34px;height:30px;padding:0;border:1px solid rgba(128,128,128,.4);background:rgba(255,255,255,.9);color:#1a242c;cursor:pointer;border-radius:3px;display:flex;align-items:center;justify-content:center;line-height:1}
.ttwc-map-regions button svg{width:24px;height:22px;fill:currentColor}
.ttwc-map-regions button:hover{background:#fff;color:#9B593B}
@media(max-width:768px){.ttwc-map-regions button{width:30px;height:26px}.ttwc-map-regions button svg{width:21px;height:19px}}
/* Badges */
.ttwc-b{display:inline;font-size:11px;font-weight:600;padding:1px 5px;border-radius:2px;white-space:nowrap}
.ttwc-b0{background:var(--r0);color:#888;border:1px solid #ddd}
.ttwc-b1{background:var(--r1);color:#fff}
.ttwc-b2{background:var(--r2);color:#111}
.ttwc-b3{background:var(--r3);color:#fff}
.ttwc-b4{background:var(--r4);color:#fff}
.ttwc-b5{background:var(--r5);color:#fff}
/* Outlook */
.ttwc-otitle{font-weight:600;font-size:15px;margin-bottom:4px}
.ttwc-otitle span{font-weight:400}
.ttwc-otbl{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed;border:none;border-style:hidden}
.ttwc-otbl th{text-align:left;font-weight:600;font-size:13px;padding:6px 4px;border-bottom:1px solid rgba(128,128,128,.4);border-top:none;opacity:.6}
.ttwc-otbl td{padding:8px 4px;border-bottom:1px solid rgba(128,128,128,.12);vertical-align:top;line-height:1.5}
.ttwc-otbl td:first-child{font-weight:600;width:22%}
.ttwc-otbl td:not(:first-child){width:26%}
.ttwc-nr{opacity:.35}
.ttwc-gen-sep{height:1px;background:rgba(128,128,128,.2);margin:20px 0 16px}
.ttwc-about{margin-top:6px;padding-top:14px}
.ttwc-about h3{font-size:14px;font-weight:600;margin-bottom:6px}
.ttwc-about p{font-size:12px;opacity:.6;line-height:1.7;margin-bottom:10px}
.ttwc-about b{font-weight:600;opacity:1}
.ttwc-gap{height:16px}
@media(max-width:768px){.ttwc-hub{padding:0 14px}.ttwc-top{flex-direction:column}.ttwc-top-right{width:100%}.ttwc-otbl{font-size:11px}.ttwc-otbl td:first-child{width:28%}}

.ttwc-otbl tr:last-child td{border-bottom:none}
.ttwc-otbl th:first-child,.ttwc-otbl td:first-child{border-left:none}
.ttwc-otbl th:last-child,.ttwc-otbl td:last-child{border-right:none}
.ttwc-disclaimer{text-align:left;font-size:12px;color:#666;padding:10px 0 4px;line-height:1.5;margin:12px 0 0;border-top:1px solid rgba(128,128,128,.15)}
.ttwc-disclaimer a{color:#1a73e8;text-decoration:none}
.ttwc-disclaimer a:hover{text-decoration:underline}
.ttwc-hub--supercompact .ttwc-title{font-size:16px;margin-bottom:2px}
.ttwc-hub--supercompact .ttwc-issued{font-size:11px;margin-bottom:6px}
/* v4.6.0: "view detailed outlook" link inside the location card */
.ttwc-card-detail{display:inline-block;margin-top:8px;font-size:12px;font-weight:600;color:#9B593B;text-decoration:none;cursor:pointer}
.ttwc-card-detail:hover{text-decoration:underline}
