dialog{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:32px;max-width:620px;width:calc(100% - 28px);max-height:90vh;color:var(--ink);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#17221980;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:12px;top:9px;font-size:27px;color:var(--muted)}dialog h2{font-size:39px;margin:12px 0}dialog>p,.detail-intro{font-size:12px;color:var(--muted);line-height:1.7}.detail-location{font-size:13px;color:var(--muted);margin:10px 0 24px}.detail-date{font:600 25px var(--display)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.detail-block{background:#eff1e8;border-radius:5px;padding:14px}.detail-block .eyebrow{font-size:8px;color:var(--muted);letter-spacing:1px}.detail-block strong{display:block;font-size:17px;margin:6px 0}.detail-block small{display:block;font-size:10px;color:var(--muted)}.detail-note{font-size:11px;color:var(--muted);line-height:1.7;background:#f6f0e7;padding:12px;border-left:2px solid #e6c293}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 12px}.primary-button{display:inline-block;background:var(--ink);color:white;text-decoration:none;border-radius:5px;padding:10px 16px;font-size:12px}.planner{border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.planner h3{font:600 23px var(--display);margin:0}.planner p{font-size:11px;color:var(--muted)}.planner input{border:1px solid var(--line);background:var(--paper);padding:8px;border-radius:4px;max-width:100%;font-size:12px}.planner-output{margin-top:12px;font-size:12px;padding:12px;background:#edf1e6;border-radius:4px}.source-row{padding:13px 0;border-bottom:1px solid var(--line);font-size:12px;display:flex;justify-content:space-between;gap:20px}.source-row a{color:var(--green)}.source-row span{color:var(--muted);font-size:10px;white-space:nowrap}.source-footnote{font-size:10px;color:var(--muted)}#toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);opacity:0;background:var(--ink);color:white;border-radius:7px;padding:11px 19px;font-size:12px;pointer-events:none;transition:.2s;z-index:1000}#toast.visible{opacity:1;transform:translate(-50%,0)}
:root{--paper:#f1f3f5;--card:#fff;--ink:#202c3b;--muted:#738091;--line:#dde3e9;--orange:#d55c35;--green:#357f97;--font:Arial, sans-serif;--display:Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:12px/1.45 var(--font)}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}input,select{accent-color:#357f97}button:hover{color:#bf4e29}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #357f97;outline-offset:2px}a{color:inherit}[hidden]{display:none!important}.sr-only,.skip:not(:focus){position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}header{height:64px;padding:0 26px;background:#202c3b;color:white;display:flex;align-items:center;gap:24px}.logo{font-size:20px;font-weight:800;letter-spacing:-.7px;text-decoration:none}.logo span{font-weight:400;margin-left:3px}.logo b{color:#ed916d;margin-left:9px}.subtitle{font-size:9px;letter-spacing:1.8px;color:#a6b3c2}.zone-label{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:10px;color:#a6b3c2}.zone-label select{background:#303f51;color:#fff;border:1px solid #4a5768;border-radius:4px;padding:6px;max-width:210px}main{max-width:2100px;margin:auto;padding:20px 26px}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.7px;color:var(--muted)}h1{font-size:25px;letter-spacing:-.7px;margin:4px 0 0;font-weight:600}.summary{font-size:11px;color:var(--muted)}.summary strong{font-size:23px;color:var(--ink);margin-left:16px}.summary span{margin:0 5px;color:#c4cbd4}.parameters{background:#fff;border:1px solid var(--line);border-radius:7px;display:flex;padding:12px 14px;gap:15px;align-items:center}.parameters label{min-width:0;flex:1;font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted)}.parameters select,.parameters input{display:block;width:100%;border:0;background:transparent;padding:7px 0 0;color:var(--ink);font-size:12px;letter-spacing:0;text-transform:none}.parameters .search-label{flex:1.4}.parameters>button{font-size:11px;white-space:nowrap;color:#357f97}.datebar{display:flex;gap:18px;align-items:center;padding:12px 2px;font-size:10px;color:#657284}.datebar label{display:flex;align-items:center;gap:5px}.datebar input[type=date]{background:transparent;border:1px solid var(--line);border-radius:3px;padding:4px;font-size:10px}.datebar>span{margin-left:auto}.datebar>button{font-weight:600;color:#357f97}.active-filters{display:flex;flex-wrap:wrap;gap:5px}.active-filters:not(:empty){margin-bottom:12px}.active-filters button{background:#e1eaf0;border:1px solid #cbdce7;border-radius:4px;padding:4px 8px;font-size:10px}.dashboard{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px}.panel{background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden}.panel-head{height:44px;display:flex;align-items:center;gap:8px;padding:0 13px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:12px;margin:0;font-weight:700;flex:1;white-space:nowrap}.panel-head h2 span{font-weight:400;color:var(--muted);margin-left:5px;font-size:10px}.panel-head button{font-size:10px;color:#357f97}.panel-head input[type=search]{width:180px;border:0;background:#f2f5f7;padding:5px 8px;border-radius:3px;font-size:10px}.slicers .panel{margin-bottom:14px}.slicer-list{padding:7px;max-height:360px;overflow:auto}.choice{display:flex;align-items:center;gap:7px;padding:6px 5px;cursor:pointer;font-size:11px;border-radius:3px}.choice:hover{background:#f0f4f7}.choice.chosen{background:#e5eef3}.choice input{margin:0;flex:none}.choice span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.choice small{margin-left:auto;color:#8994a2;font-size:10px}.choice i,.series-dot,.day-dots i{display:inline-block;width:7px;height:7px;border-radius:2px;flex:none}.hint{color:var(--muted);font-size:9px}.slicers>p{padding:0 8px;line-height:1.7}.track-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px 10px;padding:8px 12px;max-height:134px;overflow:auto}.track-grid .choice{font-size:10px;padding:5px}.visuals{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr);gap:14px;margin-top:14px}.schedule{grid-row:span 2}.table-scroll{overflow:auto;max-height:654px}table{border-collapse:collapse;width:100%;font-size:10px;text-align:left}th{position:sticky;top:0;background:#f4f6f8;color:#657284;z-index:1;font-weight:500;padding:9px 8px;white-space:nowrap;border-bottom:1px solid var(--line)}th button{padding:0}td{padding:10px 8px;border-bottom:1px solid #edf0f3;vertical-align:top}td:first-child{white-space:nowrap}td small{display:block;color:var(--muted);font-size:9px;margin-top:3px;max-width:210px}.row-open{padding:0;text-align:left;font-size:inherit;line-height:1.4}.row-open strong{font-weight:600}.series-dot{margin-right:5px;width:6px;height:6px}tr:hover td{background:#f3f7fa}#empty{padding:20px;color:var(--muted)}.calendar .panel-head{gap:4px}.calendar .panel-head input{border:0;background:none;max-width:125px;font-size:11px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-week{padding:9px 8px 5px;text-align:center;font-size:9px;color:var(--muted)}.calendar-days{padding:0 8px 8px;gap:3px}.calendar-day{height:38px;border-radius:4px;text-align:left;padding:3px 5px;position:relative;background:#f3f6f8;font-size:10px}.calendar-day.outside{opacity:.4}.calendar-day.selected{background:#dcebf4;box-shadow:inset 0 0 0 2px #357f97}.calendar-day small{font-size:7px;color:#728395;display:block}.day-dots{display:flex;gap:2px;position:absolute;top:8px;right:4px;max-width:25px;flex-wrap:wrap}.day-dots i{width:4px;height:4px}.calendar-note{font-size:9px;padding:0 12px 10px;color:var(--muted)}.calendar-note button{font-size:9px;color:#357f97}#map{height:263px;z-index:0}.geography .hint{font-size:8px}footer{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;padding:18px 0}.muted{color:var(--muted)}.tag{display:inline-block;padding:3px 7px;background:#e8eef2;border-radius:3px;font-size:10px;margin-right:5px}.outline-button{border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-size:11px}.primary-button{background:var(--ink)}dialog h2{font-size:26px}.detail-block strong{font-size:15px}
@media(min-width:1600px){.track-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.table-scroll{max-height:720px}#map{height:320px}.calendar-day{height:42px}}
@media(max-width:1150px){main{padding:16px}.dashboard{grid-template-columns:180px minmax(0,1fr)}.visuals{grid-template-columns:minmax(0,1fr) minmax(270px,.9fr)}.track-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.schedule td:nth-child(4),.schedule th:nth-child(4){display:none}.parameters{gap:9px}.parameters select{font-size:10px}.datebar>span{display:none}.datebar>button{margin-left:auto}.subtitle{display:none}}
@media(max-width:850px){.visuals{grid-template-columns:1fr 1fr}.schedule{grid-column:span 2;grid-row:auto}.table-scroll{max-height:370px}.parameters{flex-wrap:wrap}.parameters label{flex:1 0 25%}.parameters .search-label{flex:2}.heading h1{font-size:21px}.summary strong{font-size:18px;margin-left:7px}.dashboard{grid-template-columns:165px minmax(0,1fr)}.track-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar,.geography{grid-column:span 2}.slicer-list{max-height:420px}.zone-label{font-size:0}.zone-label select{font-size:10px}}
@media(max-width:560px){header{padding:0 14px;gap:12px;height:56px}.logo{font-size:17px}.zone-label select{max-width:145px}header>button{font-size:9px}main{padding:14px 10px}.heading{display:block}.summary{margin-top:10px}.summary strong:first-child{margin-left:0}.parameters label{flex-basis:28%}.datebar{gap:8px;flex-wrap:wrap}.dashboard{display:block}.slicers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.slicers .panel{margin-bottom:10px}.slicer-list{height:160px}.slicers>p{display:none}.panel-head{padding:0 10px}.panel-head h2{font-size:11px}.panel-head input[type=search]{width:100px}.visuals{gap:10px;margin-top:10px}.schedule th:last-child,.schedule td:last-child{display:none}.table-scroll{max-height:390px}.calendar-day{height:42px}footer{gap:12px;align-items:flex-start}.detail-grid{grid-template-columns:1fr}}
@media(min-width:851px) and (max-width:1150px){.schedule td:nth-child(4),.schedule th:nth-child(4){display:table-cell}.schedule td:last-child,.schedule th:last-child{display:none}}
.table-scroll td:nth-child(3) small{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-scroll td:first-child small{display:none}
