@font-face{font-family:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6e8df35dd937fa7a-s.0itc0wjx1mi4q.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fc2699ecc8323b38-s.1gwygi6ipeo67.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa0520225c6f3d07-s.p.33u8lzvd44aqk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6e8df35dd937fa7a-s.0itc0wjx1mi4q.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fc2699ecc8323b38-s.1gwygi6ipeo67.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa0520225c6f3d07-s.p.33u8lzvd44aqk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6e8df35dd937fa7a-s.0itc0wjx1mi4q.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fc2699ecc8323b38-s.1gwygi6ipeo67.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fa0520225c6f3d07-s.p.33u8lzvd44aqk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6e8df35dd937fa7a-s.0itc0wjx1mi4q.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fc2699ecc8323b38-s.1gwygi6ipeo67.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fa0520225c6f3d07-s.p.33u8lzvd44aqk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/6e8df35dd937fa7a-s.0itc0wjx1mi4q.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/fc2699ecc8323b38-s.1gwygi6ipeo67.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/fa0520225c6f3d07-s.p.33u8lzvd44aqk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans Fallback;src:local(Arial);ascent-override:90.59%;descent-override:21.46%;line-gap-override:0.0%;size-adjust:104.87%}.public_sans_6eee4843-module__agm-mq__className{font-family:Public Sans,Public Sans Fallback;font-style:normal}.public_sans_6eee4843-module__agm-mq__variable{--font-public-sans:"Public Sans", "Public Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.352ti9pm7m6qh.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.0o-3_g79811ob.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.0ngr-xkgqz1kf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.15orukf5wyxb5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.226pwps5o-gq_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_63e839d0-module__U3o-Jq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_63e839d0-module__U3o-Jq__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--azure-700:#0a5bab;--azure-600:#0b6bcb;--azure-500:#1a82e2;--azure-400:#4ba0ec;--azure-100:#d4e8fb;--azure-50:#eef6fe;--ink-900:#0e1f2c;--ink-700:#2b3f4d;--slate-600:#5a6f7e;--slate-500:#76899a;--slate-400:#9aabb8;--line-200:#e4ebf0;--line-100:#eef2f5;--surface:#fff;--bg:#f4f8fb;--ok:#1f9d6b;--ok-bg:#e7f6ef;--warn:#c2691a;--danger:#cc3b4b;--radius-lg:18px;--radius-md:13px;--radius-sm:9px;--shadow-card:0 1px 2px #0e1f2c0d, 0 4px 16px #0e1f2c0f;--shadow-pop:0 8px 30px #0e1f2c24;--shadow-btn:0 2px 8px #0b6bcb47;--app-w:440px;--header-h:60px;--safe-b:env(safe-area-inset-bottom,0px);--font:var(--font-public-sans), "Public Sans", system-ui, -apple-system, sans-serif;--mono:var(--font-plex-mono), "IBM Plex Mono", ui-monospace, "SF Mono", monospace}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--ink-900);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}body{background:radial-gradient(120% 80% at 50% -10%,#e8f1fb 0%,#dde8f2 45%,#cfdbe7 100%);justify-content:center;align-items:center;min-height:100dvh;display:flex}#root{justify-content:center;align-items:center;width:100%;height:100dvh;display:flex}.device{width:100%;max-width:var(--app-w);background:var(--bg);flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}@media (min-width:480px){.device{border-radius:30px;height:min(940px,96dvh);overflow:hidden;box-shadow:0 30px 80px #0e1f2c47,0 0 0 1px #0e1f2c0a}}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.pad{padding:20px}.pad-x{padding-left:20px;padding-right:20px}.app-header{height:var(--header-h);background:var(--surface);border-bottom:1px solid var(--line-200);z-index:5;flex:none;align-items:center;gap:12px;padding:0 16px;display:flex;position:relative}.app-header .ah-title{letter-spacing:-.01em;font-size:16px;font-weight:700}.app-header .ah-sub{color:var(--slate-500);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.iconbtn{cursor:pointer;width:40px;height:40px;color:var(--ink-700);background:0 0;border:none;border-radius:10px;flex:none;place-items:center;transition:background .15s;display:grid}.iconbtn:hover{background:var(--line-100)}.iconbtn:active{background:var(--line-200)}.roundel{background:var(--azure-600);color:#fff;letter-spacing:.02em;width:36px;height:36px;box-shadow:inset 0 0 0 3px #ffffff40, inset 0 0 0 4px var(--azure-600);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid;position:relative;overflow:hidden}.roundel img{object-fit:cover;width:100%;height:100%;display:block}.btn{appearance:none;font-family:var(--font);border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:9px;width:100%;padding:15px 18px;font-size:16px;font-weight:700;transition:transform 60ms,background .15s,box-shadow .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--azure-600);color:#fff;box-shadow:var(--shadow-btn)}.btn-primary:hover{background:var(--azure-700)}.btn-primary:disabled{background:var(--azure-100);color:#fff;box-shadow:none;cursor:not-allowed}.btn-ghost{background:var(--azure-50);color:var(--azure-700)}.btn-ghost:hover{background:var(--azure-100)}.btn-quiet{color:var(--slate-600);background:0 0;font-weight:600}.btn-quiet:hover{color:var(--ink-900)}.btn-sm{width:auto;padding:10px 14px;font-size:14px}.field{margin-bottom:16px}.field-label{color:var(--ink-700);letter-spacing:-.005em;align-items:baseline;gap:6px;margin-bottom:7px;font-size:13px;font-weight:700;display:flex}.req{color:var(--azure-600);font-weight:800}.optional{color:var(--slate-400);font-size:12px;font-weight:600}.control{width:100%;font-family:var(--font);color:var(--ink-900);background:var(--surface);border:1.5px solid var(--line-200);border-radius:var(--radius-sm);appearance:none;padding:13px 14px;font-size:16px;transition:border-color .15s,box-shadow .15s}.control::placeholder{color:var(--slate-400)}.control:focus{border-color:var(--azure-500);box-shadow:0 0 0 4px var(--azure-50);outline:none}.control.error{border-color:var(--danger);box-shadow:0 0 0 4px #cc3b4b14}textarea.control{resize:none;min-height:84px;line-height:1.45}.control.mono{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase}select.control{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235a6f7e' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-position:right 13px center;background-repeat:no-repeat;padding-right:40px}.field-hint{color:var(--slate-500);margin-top:6px;font-size:12px}.field-err{color:var(--danger);margin-top:6px;font-size:12px;font-weight:600}.row-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ac{position:relative}.ac-list{z-index:30;background:var(--surface);border:1px solid var(--line-200);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);max-height:240px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.ac-item{border-radius:var(--radius-sm);color:var(--ink-900);cursor:pointer;padding:10px 12px;font-size:14px;transition:background .12s,color .12s}.ac-item:hover,.ac-item.on{background:var(--azure-50);color:var(--azure-700)}.stepper{border:1.5px solid var(--line-200);border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:52px 1fr 52px;align-items:center;display:grid;overflow:hidden}.stepper button{background:var(--azure-50);height:50px;color:var(--azure-700);cursor:pointer;border:none;font-size:24px;font-weight:600;transition:background .12s}.stepper button:hover{background:var(--azure-100)}.stepper button:disabled{color:var(--slate-400);background:var(--line-100);cursor:not-allowed}.stepper .val{text-align:center;font-variant-numeric:tabular-nums;font-size:19px;font-weight:700}.dir-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:4px;display:grid}.dir-opt{border:1.5px solid var(--line-200);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;font-family:var(--font);flex-direction:column;align-items:center;gap:7px;padding:16px 10px 14px;transition:all .15s;display:flex}.dir-opt .di{background:var(--azure-50);width:42px;height:42px;color:var(--azure-600);border-radius:50%;place-items:center;transition:all .15s;display:grid}.dir-opt .dl{color:var(--ink-700);letter-spacing:-.01em;font-size:15.5px;font-weight:800}.dir-opt .ds{color:var(--slate-500);font-size:11.5px;font-weight:600}.dir-opt:hover{border-color:var(--azure-400)}.dir-opt.on{border-color:var(--azure-600);background:var(--azure-50);box-shadow:0 0 0 3px var(--azure-50)}.dir-opt.on .di{background:var(--azure-600);color:#fff}.dir-opt.on .dl{color:var(--azure-700)}.dir-grid.error .dir-opt{border-color:var(--danger)}.fixed-airport{background:var(--azure-50);border:1.5px solid var(--azure-100);border-radius:var(--radius-sm);align-items:center;gap:11px;margin-bottom:16px;padding:13px 14px;display:flex}.fixed-airport .fa-ico{width:34px;height:34px;color:var(--azure-600);background:#fff;border-radius:9px;flex:none;place-items:center;display:grid}.fixed-airport .fa-lab{text-transform:uppercase;letter-spacing:.05em;color:var(--azure-600);font-size:11px;font-weight:700}.fixed-airport .fa-val{color:var(--ink-900);font-size:15px;font-weight:700}.fixed-airport .fa-lock{color:var(--azure-400);flex:none;margin-left:auto}.mov{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px 3px 7px;font-size:11px;font-weight:700;display:inline-flex}.mov.partenza{background:var(--azure-50);color:var(--azure-700)}.mov.arrivo{color:#1c8a5e;background:#e9f6ef}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--line-200);background:var(--surface);color:var(--ink-700);font-family:var(--font);cursor:pointer;border-radius:999px;padding:9px 15px;font-size:14px;font-weight:600;transition:all .14s}.chip:hover{border-color:var(--azure-400)}.chip.on{background:var(--azure-600);border-color:var(--azure-600);color:#fff}.card{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.action{text-align:left;cursor:pointer;width:100%;font-family:var(--font);border-radius:var(--radius-lg);border:none;align-items:center;gap:16px;padding:20px;transition:transform 70ms,box-shadow .15s;display:flex}.action:active{transform:translateY(1px)scale(.997)}.action .a-ico{border-radius:14px;flex:none;place-items:center;width:52px;height:52px;display:grid}.action .a-title{letter-spacing:-.01em;font-size:18px;font-weight:700}.action .a-desc{color:var(--slate-500);margin-top:2px;font-size:13.5px;line-height:1.35}.action .a-arrow{color:var(--slate-400);flex:none;margin-left:auto}.action.primary{background:var(--azure-600);box-shadow:0 8px 24px #0b6bcb52}.action.primary .a-title{color:#fff}.action.primary .a-desc{color:#ffffffd1}.action.primary .a-arrow{color:#ffffffb3}.action.primary .a-ico{color:#fff;background:#ffffff29}.action.plain{background:var(--surface);border:1px solid var(--line-200);box-shadow:var(--shadow-card)}.action.plain .a-ico{background:var(--azure-50);color:var(--azure-600)}.flight{text-align:left;border:1px solid var(--line-200);background:var(--surface);border-radius:var(--radius-md);cursor:pointer;width:100%;font-family:var(--font);box-shadow:var(--shadow-card);padding:14px 15px;transition:border-color .14s,transform 70ms;display:block}.flight:active{transform:scale(.995)}.flight:hover{border-color:var(--azure-200,#b9d8f6)}.flight-top{align-items:center;gap:8px;margin-bottom:9px;display:flex}.flight-date{color:var(--slate-500);letter-spacing:.02em;white-space:nowrap;font-size:12px;font-weight:700}.route{letter-spacing:-.01em;color:var(--ink-900);align-items:center;gap:9px;font-size:17px;font-weight:700;display:flex}.route .arrow{color:var(--azure-500);flex:none}.flight-meta{color:var(--slate-500);align-items:center;gap:14px;margin-top:9px;font-size:12.5px;font-weight:500;display:flex}.flight-meta .m{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.badge{letter-spacing:.015em;white-space:nowrap;border-radius:999px;align-items:center;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.badge.turistico{color:#0b6bcb;background:#eaf3fe}.badge.scuola{color:#b06410;background:#fdf0e3}.badge.locale{color:#1c8a5e;background:#e9f6ef}.badge.trasferimento{color:#6b4bbf;background:#efeafc}.badge.lavoro{color:#4c6273;background:#f0f2f5}.auth{flex-direction:column;flex:1;display:flex;overflow-y:auto}.auth-hero{background:linear-gradient(165deg, var(--azure-600) 0%, var(--azure-700) 70%, #084a8e 100%);color:#fff;flex:none;padding:44px 28px 34px;position:relative;overflow:hidden}.auth-hero:after{content:"";border:1.5px solid #ffffff24;border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-60px;box-shadow:0 0 0 22px #ffffff0d}.auth-hero .roundel{width:56px;height:56px;color:var(--azure-700);background:#fff;margin-bottom:18px;font-size:17px;box-shadow:inset 0 0 0 4px #0b6bcb2e,inset 0 0 0 5px #fff}.auth-hero h1{letter-spacing:-.02em;margin:0;font-size:23px;font-weight:800;line-height:1.15}.auth-hero .sub{letter-spacing:.12em;text-transform:uppercase;opacity:.82;margin-top:6px;font-size:12.5px;font-weight:600}.auth-body{padding:26px 24px 30px}.auth-tabs{background:var(--line-100);border-radius:11px;grid-template-columns:1fr 1fr;margin-bottom:24px;padding:4px;display:grid}.auth-tab{font-family:var(--font);color:var(--slate-500);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px;font-size:14.5px;font-weight:700;transition:all .16s}.auth-tab.on{background:var(--surface);color:var(--azure-700);box-shadow:0 1px 3px #0e1f2c1a}.demo-hint{background:var(--azure-50);border:1px solid var(--azure-100);border-radius:var(--radius-sm);color:var(--azure-700);margin-top:18px;padding:11px 13px;font-size:12.5px;line-height:1.5}.demo-hint b{font-weight:700}.empty{text-align:center;color:var(--slate-500);padding:60px 30px}.empty .e-ico{background:var(--azure-50);width:64px;height:64px;color:var(--azure-500);border-radius:18px;place-items:center;margin:0 auto 16px;display:grid}.empty h3{color:var(--ink-700);margin:0 0 6px;font-size:17px}.empty p{margin:0;font-size:14px;line-height:1.5}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--slate-500);margin:0 0 12px;font-size:12px;font-weight:700}.search{margin-bottom:14px;position:relative}.search input{padding-left:42px}.search .s-ico{color:var(--slate-400);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.filterbar{scrollbar-width:none;gap:8px;margin-bottom:16px;padding-bottom:4px;display:flex;overflow-x:auto}.filterbar::-webkit-scrollbar{display:none}.filterbar .chip{flex:none}.detail-hero{background:var(--surface);border-bottom:1px solid var(--line-200);padding:22px 20px 24px}.detail-route{letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:10px;font-size:23px;font-weight:800;line-height:1.22;display:flex}.detail-route>span{display:inline-block}.detail-route .arrow{color:var(--azure-500)}.kv-list{flex-direction:column;display:flex}.kv{border-bottom:1px solid var(--line-100);justify-content:space-between;align-items:flex-start;gap:16px;padding:15px 0;display:flex}.kv:last-child{border-bottom:none}.kv .k{color:var(--slate-500);flex:none;font-size:13.5px;font-weight:600}.kv .v{color:var(--ink-900);text-align:right;font-size:15px;font-weight:600}.kv .v.mono{font-family:var(--mono);letter-spacing:.03em}.kv .v.note{color:var(--ink-700);font-weight:500;line-height:1.5}.toast{left:50%;bottom:calc(24px + var(--safe-b));background:var(--ink-900);color:#fff;box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;z-index:50;white-space:nowrap;border-radius:999px;align-items:center;gap:9px;padding:12px 18px;font-size:14px;font-weight:600;transition:opacity .25s,transform .25s;display:flex;position:absolute;transform:translate(-50%)translateY(20px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.toast .t-ico{color:#5fe0a3;display:inline-flex}.sticky-foot{padding:14px 20px calc(16px + var(--safe-b));background:linear-gradient(to top, var(--surface) 70%, #fff0);border-top:1px solid var(--line-100);flex:none}.page-title{letter-spacing:-.025em;margin:0;font-size:24px;font-weight:800}.page-sub{color:var(--slate-500);margin:4px 0 0;font-size:14px}.greet{color:var(--slate-500);font-size:15px;font-weight:600}.greet b{color:var(--ink-900);font-weight:800}.count-pill{background:var(--azure-50);min-width:22px;height:22px;color:var(--azure-700);border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:12px;font-weight:800;display:inline-flex}@keyframes slideIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.anim-in{animation:.26s cubic-bezier(.22,.61,.36,1) slideIn}.stagger>*{animation:.34s cubic-bezier(.22,.61,.36,1) both fadeUp}.stagger>:first-child{animation-delay:20ms}.stagger>:nth-child(2){animation-delay:60ms}.stagger>:nth-child(3){animation-delay:.1s}.stagger>:nth-child(4){animation-delay:.14s}.stagger>:nth-child(5){animation-delay:.18s}.stagger>:nth-child(6){animation-delay:.22s}.stagger>:nth-child(7){animation-delay:.26s}.stagger>:nth-child(8){animation-delay:.3s}@media (prefers-reduced-motion:reduce){.anim-in,.stagger>*{animation:none!important}}.desktop-view{z-index:100;background:var(--bg);font-family:var(--font);color:var(--ink-900);position:fixed;inset:0;overflow-y:auto}.dv-restricted{place-items:center;min-height:100%;padding:24px;display:grid}.dv-topbar{background:var(--surface);border-bottom:1px solid var(--line-200);z-index:5;align-items:center;gap:14px;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.dv-topbar .roundel{width:38px;height:38px}.dv-brand{line-height:1.25}.dv-brand .b1{letter-spacing:.07em;text-transform:uppercase;color:var(--slate-500);white-space:nowrap;font-size:11px;font-weight:700}.dv-brand .b2{letter-spacing:-.01em;white-space:nowrap;font-size:16px;font-weight:800}.dv-topbar .spacer{flex:1}.dv-who{text-align:right;white-space:nowrap;line-height:1.25}.dv-who .wn{font-size:14px;font-weight:700}.dv-who .wr{color:var(--azure-700);text-transform:uppercase;letter-spacing:.04em;font-size:11.5px;font-weight:700}.dv-btn{font-family:var(--font);border:1.5px solid var(--line-200);background:var(--surface);color:var(--ink-700);cursor:pointer;white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:700;text-decoration:none;transition:all .14s;display:inline-flex}.dv-btn:hover{border-color:var(--azure-400);color:var(--ink-900)}.dv-btn-primary{background:var(--azure-600);border-color:var(--azure-600);color:#fff;box-shadow:0 2px 8px #0b6bcb47}.dv-btn-primary:hover{background:var(--azure-700);border-color:var(--azure-700);color:#fff}.dv-page{max-width:1320px;margin:0 auto;padding:28px 28px 60px}.dv-page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.dv-toolbar{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:flex-end;gap:18px;margin-bottom:20px;padding:16px 18px;display:flex}.dv-fgroup{flex-direction:column;gap:6px;display:flex}.dv-flabel{text-transform:uppercase;letter-spacing:.05em;color:var(--slate-500);font-size:11px;font-weight:700}.dv-daterow{align-items:center;gap:8px;display:flex}.dv-daterow .sep{color:var(--slate-400);font-size:13px;font-weight:700}.dv-toolbar .grow{flex:1}.dv-reset{color:var(--slate-500);font-family:var(--font);cursor:pointer;background:0 0;border:none;padding:9px 4px;font-size:13px;font-weight:600}.dv-reset:hover{color:var(--azure-700)}.dv-quick{gap:6px;display:flex}.dv-qr{font-family:var(--font);border:1.5px solid var(--line-200);background:var(--surface);color:var(--slate-600);cursor:pointer;white-space:nowrap;border-radius:999px;padding:7px 12px;font-size:12.5px;font-weight:600;transition:all .14s}.dv-qr:hover{border-color:var(--azure-400)}.dv-qr.on{background:var(--azure-50);border-color:var(--azure-100);color:var(--azure-700)}.dv-table-card{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.dv-table-wrap{overflow-x:auto}.dv-print-head{display:none}table.reg{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}table.reg thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-600);border-bottom:2px solid var(--line-200);white-space:nowrap;z-index:2;background:#f7fafc;padding:13px 14px;font-size:11px;font-weight:800;position:sticky;top:0}table.reg thead th.num,table.reg td.num{text-align:center}table.reg tbody td{border-bottom:1px solid var(--line-100);color:var(--ink-700);vertical-align:middle;white-space:nowrap;padding:13px 14px}table.reg tbody tr:last-child td{border-bottom:none}table.reg tbody tr:hover td{background:var(--azure-50)}table.reg .c-date{color:var(--ink-900);font-weight:700}table.reg .c-time{font-variant-numeric:tabular-nums}table.reg .c-pilot{color:var(--ink-900);font-weight:700}table.reg .c-num{font-variant-numeric:tabular-nums;font-weight:600}table.reg .c-mono{font-family:var(--mono);letter-spacing:.02em;font-size:12.5px}table.reg .c-note{text-overflow:ellipsis;max-width:230px;color:var(--slate-500);font-size:12.5px;overflow:hidden}@media print{body{background:#fff}.device{width:auto;max-width:none;height:auto;box-shadow:none;border-radius:0;display:block;position:static;overflow:visible}.desktop-view{background:#fff;position:static;overflow:visible}.dv-topbar,.dv-toolbar,.no-print{display:none!important}.dv-page{max-width:none;padding:0}.dv-table-card{box-shadow:none;border:none;border-radius:0}.dv-print-head{margin-bottom:14px;display:block}.dv-print-head h2{margin:0;font-size:18px}.dv-print-head .ph-sub{color:#555;margin-top:3px;font-size:12px}table.reg{font-size:11px}table.reg thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f0f0f0!important}table.reg tbody tr:hover td{background:0 0}table.reg tbody td,table.reg thead th{white-space:normal;padding:7px 8px}.badge{border:1px solid #ccc}tr{break-inside:avoid}@page{size:A4 landscape;margin:12mm}}
