@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800&display=swap";
:root{--bg:#fff;--card:#fff;--muted:#0009;--text:#000;--accent:#dc2626;--accent-weak:#ef4444;--ok:#dc2626;--danger:#dc2626;--shadow:#00000014}*{box-sizing:border-box}html,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0f172a;background:#f7f8fa radial-gradient(#e5e7eb 1px,#0000 1px) 0 0/24px 24px;font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Apple Color Emoji,Segoe UI Emoji}.app{background:var(--bg);min-height:100vh;color:var(--text);max-width:560px;margin:0 auto;padding:16px 14px 64px;position:relative}.app:before{content:none}@media (min-width:768px){.app{max-width:1200px;padding:24px 32px 80px}}.top{z-index:10;margin-bottom:6px;padding:10px 0 18px;position:relative}.top:before{content:"";-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:-1;background:linear-gradient(#fffffff2,#ffffffb3,#fff0);position:absolute;inset:0}.tn-form{gap:12px;display:flex}.tn-form input{appearance:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#0f172a;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:14px;outline:none;flex:1;padding:14px 18px;font-size:16px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px #00000005}.tn-form input::placeholder{color:#94a3b8;opacity:.8}.tn-form input:focus{border-color:var(--accent);background:#fff;transform:translateY(-1px);box-shadow:0 0 0 4px #dc26261a,inset 0 1px 2px #00000005}.tn-form button{background:linear-gradient(135deg,var(--accent)0%,#b91c1c 100%);color:#fff;letter-spacing:.02em;cursor:pointer;border:none;border-radius:14px;padding:14px 24px;font-weight:700;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 10px 20px -5px #dc262666}.tn-form button:hover{filter:brightness(1.1);transform:translateY(-3px);box-shadow:0 15px 30px -8px #dc262680}.tn-form button:active{transform:translateY(-1px);box-shadow:0 5px 15px -5px #dc262666}.card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #fff9;border-radius:20px;margin:10px 0;padding:24px;transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s,border-color .3s;box-shadow:0 10px 40px -10px #00000014,0 0 0 1px #00000005}@media (min-width:768px){.card:hover{border-color:#dc262626;transform:translateY(-6px)scale(1.01);box-shadow:0 20px 50px -12px #0000001f,0 0 0 1px #dc26261a}}.card.notice{color:var(--muted)}.card.error{color:var(--danger);background:#dc262614;border-color:#dc2626}.loading-card{background:#dc26260d;border-color:#dc262640;flex-direction:column;justify-content:center;align-items:center;min-height:120px;margin:20px 0;display:flex}.loading-dots{justify-content:center;align-items:center;gap:12px;display:flex}.loading-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;animation:1.4s ease-in-out infinite both bounce}.loading-dot:first-child{animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}.loading-dot:nth-child(3){animation-delay:0s}@keyframes bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.loading-text{color:var(--text);margin-top:16px;font-size:16px;font-weight:600;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}@media (min-width:768px){.loading-card{min-height:140px;margin:0}.loading-dots{gap:16px}.loading-dot{width:12px;height:12px}.loading-text{margin-top:20px;font-size:18px}}.eyebrow{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:12px}.eta .eta-date{align-items:baseline;gap:10px;display:flex}.eta .day{font-size:64px;font-weight:800;line-height:1}.eta .month{color:var(--muted);font-size:18px}.phase .status{margin-bottom:12px;font-size:18px;font-weight:700}.stepper{align-items:center;gap:14px;margin-bottom:8px;display:flex}.dot{background:#fff;border:2px solid #e2e8f0;border-radius:50%;width:16px;height:16px;transition:all .4s cubic-bezier(.34,1.56,.64,1);position:relative;box-shadow:0 2px 4px #0000000d}.dot.active{background:#fff;border-color:#cbd5e1;box-shadow:inset 0 0 0 2px #cbd5e1}.dot.active.completed{box-shadow:none;background:#f1f5f9;border-color:#cbd5e1}.dot.active.current{background:var(--accent);border-color:var(--accent);transform:scale(1.2);box-shadow:0 0 0 4px #dc262626}.dot.active.current,.bullet.latest{outline:10px solid #0000;animation:2s infinite pulse-red;box-shadow:0 0 #dc2626b3}.bullet.latest{border-color:#dc262600}@keyframes pulse-red{0%{transform:scale(.95);box-shadow:0 0 #dc2626b3}70%{transform:scale(1);box-shadow:0 0 0 10px #dc262600}to{transform:scale(.95);box-shadow:0 0 #dc262600}}.caption{color:var(--muted)}.info-row{justify-content:space-between;gap:8px;display:flex}.label{color:var(--muted)}.value{font-weight:600}.timeline{--tl-col:35px;--tl-bullet:14px;--tl-gap:10px;--tl-line:#0003}.timeline .events{margin:0;padding:0;list-style:none}.event{grid-template-columns:var(--tl-col)1fr;padding:var(--tl-gap)0 var(--tl-gap)0;gap:12px;display:grid;position:relative}.event:not(:last-child):after{content:"";left:calc(var(--tl-col)/2 - 1px);top:calc(var(--tl-bullet) + var(--tl-gap));background:var(--tl-line);width:2px;position:absolute;bottom:0}.bullet{width:var(--tl-bullet);height:var(--tl-bullet);box-sizing:border-box;margin-top:2px;margin-left:calc((var(--tl-col) - var(--tl-bullet))/2);z-index:1;background:#00000026;border:2px solid #00000040;border-radius:999px;position:relative}.bullet.latest{background:var(--ok);width:16px;height:16px;margin-left:calc((var(--tl-col) - 16px)/2);border:none}.event-content .event-header{align-items:center;gap:10px;margin-bottom:4px;display:flex}.badge{color:var(--text);background:linear-gradient(#0000000f,#00000008);border:1px solid #00000026;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.when{font-weight:700}.time{color:var(--muted);margin-left:6px;font-weight:500}.desc{color:var(--text)}.loc{color:var(--muted);margin-top:2px;font-size:12px}@media (min-width:640px){.eta .day{font-size:80px}.card{margin:12px 0;padding:20px}.tn-form input{padding:14px 16px;font-size:18px}.tn-form button{padding:14px 20px;font-size:16px}}@media (min-width:768px){.app{grid-template-columns:1fr 1fr;grid-template-areas:"header header""loading loading""eta phase""route weight""timeline timeline";align-items:start;gap:20px;display:grid}.loading-card{z-index:10;order:-1;grid-column:1/-1;width:100%;position:relative}.eta,.phase,.route,.weight{flex-direction:column;height:100%;display:flex}.top{grid-area:header;margin-bottom:0;padding:0;position:static}.top:before{display:none}.tn-form{max-width:600px;margin:0 auto}.eta{grid-area:eta}.phase{grid-area:phase}.route{grid-area:route}.weight{grid-area:weight}.timeline{grid-area:timeline}.card{flex-direction:column;justify-content:center;min-height:120px;margin:0;padding:24px;display:flex}.eta .day{font-size:96px}.eta .month{font-size:24px}.phase .status{font-size:20px}.stepper{gap:18px}.dot{width:16px;height:16px}.timeline .events{max-height:400px;padding-right:8px;overflow-y:auto}.timeline .events::-webkit-scrollbar{width:6px}.timeline .events::-webkit-scrollbar-track{background:#00000014;border-radius:3px}.timeline .events::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}}@media (min-width:1024px){.app{grid-template-columns:1fr 1fr 1fr;grid-template-areas:"header header header""eta phase phase""route weight weight""timeline timeline timeline";max-width:1400px;padding:32px 40px 100px}.eta .day{font-size:120px}.eta .month{font-size:28px}.card{min-height:140px;padding:28px}}.brand-header{justify-content:space-between;align-items:center;gap:12px;min-height:40px;margin:4px 0 32px;display:flex}.brand-logo{width:auto;height:28px;display:block}.brand-title-row{grid-template-columns:1fr auto;align-items:center;margin-bottom:16px;display:grid}.brand-title-left{justify-content:flex-start;align-items:baseline;gap:12px;display:flex}.brand-title{text-align:left;letter-spacing:.2px;margin:0;font-size:22px;font-weight:800}.msv-id{color:var(--muted);font-weight:700}.brand-title-right{justify-content:flex-end;align-items:center;display:flex}@media (min-width:768px){.brand-header{min-height:48px;margin:0 0 8px}.brand-logo{height:34px}.brand-title{margin:6px 0 16px;font-size:26px}}.brand-left{align-items:center;gap:12px;display:flex}.brand-right{align-items:center;margin-left:auto;display:flex}.lang{position:relative}.lang-btn{appearance:none;color:var(--text);cursor:pointer;width:40px;height:40px;box-shadow:0 6px 14px var(--shadow);background:#fff;border:1px solid #00000026;border-radius:999px;place-items:center;display:grid}.lang-btn:hover{border-color:var(--accent);box-shadow:0 8px 18px #dc26262e}.lang-ico{display:block}.lang-menu{z-index:100;background:#fff;border:1px solid #ddd;border-radius:4px;flex-direction:column;width:200px;max-height:300px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000001a}.lang-search{background:#f9f9f9;border-bottom:1px solid #eee;padding:8px}.lang-search input{border:1px solid #ccc;border-radius:4px;width:100%;padding:6px;font-size:14px}.lang-list{flex:1;overflow-y:auto}.lang-item{cursor:pointer;padding:8px 12px;transition:background .2s}.lang-empty{text-align:center;color:#999;padding:12px;font-size:13px}.lang-item:hover{background:#f5f5f5}.lang-item.selected{background:#f0f7ff;font-weight:700}.back-link{color:#666;background-color:#00000008;border-radius:8px;align-items:center;gap:6px;margin-right:8px;padding:8px 12px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.back-link:hover{color:var(--text);background-color:#0000000f;transform:translate(-2px)}.lang-backdrop{display:none}@media (max-width:767px){.brand-header{width:100%}.brand-left{justify-content:flex-start}.brand-right{margin-left:auto}.brand-title-row{grid-template-columns:1fr auto}.brand-title-left{flex-direction:column;align-items:flex-start;gap:4px}.brand-title{margin-bottom:0}.lang{width:100%}.lang-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99;background:#00000080;animation:.2s ease-out fade-in;display:block;position:fixed;inset:0}.lang-menu{z-index:100;border:1px solid #0000001a;border-radius:16px;flex-direction:column;width:90%;max-width:340px;height:auto;max-height:80vh;margin-top:0;padding:0;animation:.3s cubic-bezier(.16,1,.3,1) slide-up-fade;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 25px 50px -12px #00000040}.lang-list{overflow-y:auto}.lang-item{padding:14px 18px;font-size:16px}.lang-btn{width:44px;height:44px;margin-left:auto}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up-fade{0%{opacity:0;transform:translate(-50%,-40%)scale(.96)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.app.home{max-width:680px}@media (min-width:768px){.app.home{display:block}}.tn-form button:disabled{opacity:.7;cursor:not-allowed}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:1rem;height:1rem;animation:.8s ease-in-out infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.home-landing{margin-top:48px;padding-bottom:40px}.card.center{text-align:center}.notfound-page{background:#fafafa;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:48px 24px;display:flex}.notfound-header{justify-content:space-between;align-items:center;width:min(680px,92vw);margin-bottom:32px;display:flex}.notfound-header .brand-left{align-items:center;gap:10px;display:flex}.notfound-header .brand-right{align-items:center;display:flex}.notfound-header .brand-logo{height:30px}.notfound-card{text-align:center;background:#fff;border:1px solid #ececec;border-radius:18px;flex-direction:column;gap:14px;width:min(680px,92vw);padding:32px 28px;display:flex;box-shadow:0 10px 30px #0000000f}.notfound-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.notfound-title{color:var(--accent);font-size:22px;font-weight:800}.notfound-text{color:#3a3a3a;font-size:16px}.notfound-btn{color:var(--accent);background:#f6f7f8;border:1px solid #e5e5e5;border-radius:10px;justify-content:center;align-items:center;gap:6px;margin:6px auto 0;padding:10px 14px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 6px 14px #00000014}.notfound-btn:hover{background:#ededed}
