:root{--navy-950:#080f1d;--navy-900:#0c1526;--navy-800:#12203a;--navy-700:#1a2c4d;--line:#24374f;--ink:#e8eef7;--ink-dim:#9db4cc;--ink-faint:#5c7590;--blue:#7db3e8;--blue-bright:#a8d1f7;--nogo:#e05252;--warn:#e08a3c;--caution:#d9c246;--info:#7db3e8;--ok:#39b26b}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--navy-950);color:var(--ink);font-family:Segoe UI,Arial,Helvetica,sans-serif;min-height:100%}a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-bright)}.shell{max-width:1080px;margin:0 auto;padding:0 20px 60px}.topbar{justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);margin-bottom:26px;flex-wrap:wrap}.brand,.topbar{display:flex;align-items:center}.brand{gap:14px}.brand img{height:44px;border-radius:4px}.brand .t1{font-size:20px;letter-spacing:3px;color:var(--blue);font-feature-settings:"smcp";font-variant:small-caps;font-weight:600}.brand .t2{font-size:11px;color:var(--ink-dim);letter-spacing:1px}.nav{display:flex;gap:18px;align-items:center;font-size:14px;flex-wrap:wrap}.nav a.active{color:var(--ink);border-bottom:2px solid var(--blue);padding-bottom:2px}.card{background:var(--navy-900);border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:18px}.card h2{font-size:16px;color:var(--blue);letter-spacing:1px;margin-bottom:14px;text-transform:uppercase}.card h3{font-size:14px;color:var(--ink);margin:12px 0 8px}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}@media (max-width:760px){.grid2{grid-template-columns:1fr}}label{display:block;font-size:12px;color:var(--ink-dim);margin:10px 0 4px;letter-spacing:.5px}input,select,textarea{width:100%;background:var(--navy-800);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:9px 11px;font-size:14px;font-family:inherit}input:focus,select:focus,textarea:focus{outline:1px solid var(--blue)}.row{display:flex;gap:12px}.row>*{flex:1 1;min-width:0}input[type=date]{min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn,button{background:linear-gradient(180deg,#2a4a7a,#1d3357);color:var(--ink);border:1px solid #35578a;padding:10px 22px;border-radius:7px;font-size:14px;cursor:pointer;letter-spacing:.5px;transition:filter .15s}button:hover{filter:brightness(1.2)}button:disabled{opacity:.5;cursor:default}button.danger{background:linear-gradient(180deg,#7a2a2a,#571d1d);border-color:#8a3535}button.ghost{background:transparent;border:1px solid var(--line)}.badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:1px}.badge.nogo{background:#3d1414;color:var(--nogo);border:1px solid var(--nogo)}.badge.warning{background:#3d2a14;color:var(--warn);border:1px solid var(--warn)}.badge.caution{background:#3a3514;color:var(--caution);border:1px solid var(--caution)}.badge.info{background:#14273d;color:var(--info);border:1px solid var(--info)}.badge.ok{background:#143d24;color:var(--ok);border:1px solid var(--ok)}.badge.dim{color:var(--ink-faint);border:1px solid var(--line)}.alertrow,.badge.dim{background:var(--navy-800)}.alertrow{border-left:4px solid var(--line);padding:10px 14px;margin:8px 0;border-radius:0 6px 6px 0}.alertrow.nogo{border-color:var(--nogo)}.alertrow.warning{border-color:var(--warn)}.alertrow.caution{border-color:var(--caution)}.alertrow.info{border-color:var(--info)}.alertrow .code{font-weight:700;font-size:12px;margin-right:8px}.alertrow .detail{font-size:12px;margin-top:5px;max-height:180px;overflow-y:auto}.alertrow .detail,.mono{color:var(--ink-dim);white-space:pre-wrap}.mono{font-family:Consolas,Menlo,monospace;font-size:12.5px;word-break:break-word}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--ink-faint);font-size:11px;letter-spacing:1px;text-transform:uppercase;padding:6px 8px;border-bottom:1px solid var(--line)}td{padding:7px 8px;border-bottom:1px solid #16243a;vertical-align:top}tr:hover td{background:#101c31}.tripcard{border:1px solid var(--line);border-radius:10px;background:var(--navy-900);padding:16px 18px}.tripcard .icao{font-size:26px;font-weight:700;letter-spacing:2px;color:var(--ink)}.tripcard .when{color:var(--ink-dim);font-size:13px;margin:2px 0 10px}.tripcard .countdown{color:var(--blue);font-size:13px;font-weight:600}.footer{margin-top:40px;padding-top:16px;border-top:1px solid var(--line);color:var(--ink-faint);font-size:11px;line-height:1.7}.msg{padding:10px 14px;border-radius:6px;margin:10px 0;font-size:13px}.msg.err{background:#3d1414;color:#f0a0a0;border:1px solid var(--nogo)}.msg.ok{background:#143d24;color:#9fe0ba;border:1px solid var(--ok)}.tabs{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.tabs button{padding:7px 16px;font-size:13px}.tabs button.on{background:var(--blue);color:var(--navy-950);border-color:var(--blue);font-weight:700}.hint{color:var(--ink-faint);font-size:12px;margin-top:6px;line-height:1.5}.spin{color:var(--ink-dim);padding:30px;text-align:center}