.tisseo .info-box{margin-top:18px;padding:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;color:var(--fg)}.tisseo .info-box strong{display:flex;align-items:center;gap:7px;margin-bottom:8px;font-size:13px;font-weight:700;color:var(--fg-strong)}.tisseo .info-box strong svg{stroke:var(--m-accent)}.tisseo .info-box p{margin:6px 0;font-size:12.5px;line-height:1.5;color:var(--fg-muted)}.tisseo .info-box a{color:var(--m-info);text-decoration:underline}.tisseo .info-box code{background:var(--chip-soft);padding:1px 5px;border-radius:4px;font-family:var(--font-num);font-size:.9em;color:var(--fg-strong)}.tisseo .error{padding:12px 14px;background:#e51f1f14;border:1px solid rgba(229,31,31,.25);border-radius:10px;color:var(--m-danger);font-size:13px;margin-bottom:14px}.tisseo .error strong{display:block;font-weight:700;margin-bottom:2px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem}.loading-container.small{padding:1rem}.loading-container.large{padding:3rem}.loading-spinner{position:relative;width:60px;height:60px}.loading-container.small .loading-spinner{width:40px;height:40px}.loading-container.large .loading-spinner{width:80px;height:80px}.spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-top-color:var(--m-primary);border-radius:50%;animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite}.spinner-ring:nth-child(1){animation-delay:-.45s}.spinner-ring:nth-child(2){animation-delay:-.3s;border-top-color:var(--m-secondary)}.spinner-ring:nth-child(3){animation-delay:-.15s;border-top-color:var(--m-accent)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-message{margin:0;color:var(--fg-muted);font-size:14px;text-align:center;animation:loadpulse 1.5s ease-in-out infinite}.loading-container.small .loading-message{font-size:12.5px}.loading-container.large .loading-message{font-size:15px}@keyframes loadpulse{0%,to{opacity:.6}50%{opacity:1}}.tisseo.pip-window{height:100%;display:flex;flex-direction:column;background:var(--surface);color:var(--fg);font-family:var(--font-main);overflow:hidden}.tisseo .pip-head{display:flex;align-items:center;gap:10px;padding:12px 14px;color:#fff}.tisseo .pip-head-empty{background:var(--m-primary)}.tisseo .pip-head .line-badge{flex-shrink:0;min-width:34px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:3px;background:#ffffff2e;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700;font-size:14px;padding:0 6px}.tisseo .pip-head .line-badge svg{width:14px;height:14px;stroke:currentColor;flex-shrink:0}.tisseo .pip-head .nm{flex:1;min-width:0;display:flex;flex-direction:column}.tisseo .pip-head .nm .d{font-weight:600;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tisseo .pip-head .nm .s{font-size:11.5px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tisseo .pip-head .x{width:28px;height:28px;border:0;border-radius:50%;background:#ffffff2e;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0}.tisseo .pip-head .x svg{width:15px;height:15px;stroke:#fff}.tisseo .pip-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 16px 16px;text-align:center}.tisseo .pip-body .big{font-weight:700;font-size:46px;line-height:1;color:var(--fg-strong)}.tisseo .pip-body .clk{font-size:13px;color:var(--fg-muted);margin-top:8px}.tisseo .pip-body .rt2{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--m-success)}.tisseo .pip-body .rt2 .pulse{width:7px;height:7px;border-radius:50%;background:var(--m-success);animation:tpulse 1.6s ease-in-out infinite}.tisseo .pip-body .pip-next-list{margin-top:14px;padding-top:10px;border-top:1px solid var(--border);width:100%;display:flex;flex-direction:column;gap:6px}.tisseo .pip-body .pip-next{display:flex;align-items:baseline;gap:8px;font-size:12.5px;color:var(--fg-muted)}.tisseo .pip-body .pip-next .lbl{flex:1;text-align:left;text-transform:uppercase;letter-spacing:.03em;font-size:10.5px}.tisseo .pip-body .pip-next .eta{color:var(--fg-strong);font-weight:600}.tisseo .pip-body .pip-next .clk{color:var(--fg-muted);min-width:48px;text-align:right}.tisseo .pip-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--fg-muted);font-size:13px}.tisseo .pip-empty svg{stroke:var(--fg-faint)}.tisseo .favorites-page{display:block}.tisseo .toolbar{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.tisseo .toolchip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);border-radius:7px;padding:7px 11px;font-family:var(--font-main);font-size:12.5px;font-weight:600;color:var(--fg);cursor:pointer;transition:all .12s ease}.tisseo .toolchip svg{width:15px;height:15px;stroke:currentColor}.tisseo .toolchip:hover:not(:disabled){border-color:var(--border-strong)}.tisseo .toolchip.on{background:var(--m-primary);border-color:var(--m-primary);color:#fff}.tisseo .toolchip:disabled{opacity:.45;cursor:not-allowed}.tisseo .toolchip .lbl{white-space:nowrap}.tisseo .favorites-error{display:flex;align-items:flex-start;gap:10px;background:#e51f1f14;border:1px solid rgba(229,31,31,.25);border-radius:10px;padding:14px;color:var(--m-danger)}.tisseo .favorites-error svg{stroke:var(--m-danger);flex-shrink:0;margin-top:1px}.tisseo .favorites-error .t{font-weight:600;font-size:14px}.tisseo .favorites-error .s{font-size:12.5px;color:var(--fg-muted);margin-top:2px}.tisseo .fav-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;align-items:start}@media (max-width: 560px){.tisseo .fav-list{grid-template-columns:1fr}}.tisseo .fav{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-card)}.tisseo .fav-head{display:flex;align-items:center;gap:11px;padding:13px 14px}.tisseo .line-badge{flex-shrink:0;min-width:40px;height:36px;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:4px;color:#fff;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700;font-size:15px;padding:0 8px}.tisseo .line-badge svg{width:15px;height:15px;stroke:currentColor;flex-shrink:0}.tisseo .fav-meta{flex:1;min-width:0}.tisseo .fav-meta .dest{font-weight:600;font-size:14.5px;color:var(--fg-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tisseo .fav-meta .stop{font-size:12.5px;color:var(--fg-muted);display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tisseo .fav-meta .stop svg{width:12px;height:12px;stroke:currentColor;flex-shrink:0}.tisseo .fav-actions{display:flex;gap:2px;flex-shrink:0}.tisseo .ghostbtn{width:30px;height:30px;border:0;background:none;border-radius:7px;color:var(--fg-faint);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s ease;padding:0}.tisseo .ghostbtn svg{width:17px;height:17px;stroke:currentColor}.tisseo .ghostbtn:hover{background:var(--chip-soft);color:var(--fg-strong)}.tisseo .ghostbtn.alert-on{color:var(--m-accent)}.tisseo .fav-sched{border-top:1px solid var(--border);background:var(--surface-2)}.tisseo .sched-row{display:flex;align-items:center;gap:12px;padding:11px 14px}.tisseo .sched-row+.sched-row{border-top:1px solid var(--border)}.tisseo .sched-rank{font-size:11px;font-weight:600;color:var(--fg-muted);width:34px;flex-shrink:0;text-transform:uppercase;letter-spacing:.03em}.tisseo .sched-mid{flex:1;min-width:0}.tisseo .sched-eta{font-size:17px;font-weight:600;color:var(--fg-strong)}.tisseo .sched-eta.gone{color:var(--fg-faint)}.tisseo .sched-clock{font-size:12px;color:var(--fg-muted)}.tisseo .sched-empty{display:flex;align-items:center;gap:8px;padding:13px 14px;font-size:12.5px;color:var(--fg-muted)}.tisseo .sched-empty svg{width:15px;height:15px;stroke:var(--fg-faint)}.tisseo .alert-panel{border-top:1px solid var(--border);background:var(--surface-2);padding:14px;display:flex;flex-direction:column;gap:13px}.tisseo .alert-head{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:var(--fg-strong)}.tisseo .alert-head svg{width:16px;height:16px;stroke:var(--m-accent)}.tisseo .switch-row{display:flex;align-items:center;justify-content:space-between}.tisseo .switch-row .lbl{font-size:13px;color:var(--fg)}.tisseo .switch{width:42px;height:24px;border-radius:12px;background:var(--border-strong);border:0;padding:0;cursor:pointer;position:relative;transition:background .15s ease;flex-shrink:0}.tisseo .switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s ease;box-shadow:0 1px 2px #0003}.tisseo .switch.on{background:var(--m-success)}.tisseo .switch.on:after{transform:translate(18px)}.tisseo .alert-times .l{font-size:12px;color:var(--fg-muted);margin-bottom:8px}.tisseo .time-grid{display:flex;flex-wrap:wrap;gap:7px}.tisseo .time-btn{flex:1 1 calc(33% - 5px);min-width:60px;border:1px solid var(--border-strong);background:var(--surface);border-radius:7px;padding:8px 4px;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:600;color:var(--fg);cursor:pointer;transition:all .12s ease}.tisseo .time-btn:hover{border-color:var(--m-accent)}.tisseo .time-btn.on{background:var(--m-primary);border-color:var(--m-primary);color:#fff}.tisseo .alert-summary{font-size:12px;color:var(--m-success);background:#2d9a4e14;border:1px solid rgba(45,154,78,.25);border-radius:7px;padding:9px 11px;display:flex;align-items:center;gap:7px}.tisseo .alert-summary svg{width:14px;height:14px;stroke:var(--m-success);flex-shrink:0}.tisseo .alert-warn{font-size:12px;color:var(--m-danger);background:#e51f1f14;border:1px solid rgba(229,31,31,.25);border-radius:7px;padding:9px 11px}.tisseo .login{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:56px 28px 40px;background:var(--bg)}.tisseo .login-inner{width:100%;max-width:380px}.tisseo .login .logo-lg{width:60px;height:60px;border-radius:15px;background:var(--m-primary);display:flex;align-items:center;justify-content:center;margin-bottom:22px}.tisseo .login .logo-lg svg{width:34px;height:34px;stroke:#fff}.tisseo .login h1{font-size:27px;font-weight:700;color:var(--fg-strong);margin:0 0 6px;letter-spacing:-.01em}.tisseo .login .sub{font-size:14px;color:var(--fg-muted);margin:0 0 30px}.tisseo .field{margin-bottom:15px}.tisseo .field label{display:block;font-size:12.5px;font-weight:600;color:var(--fg);margin-bottom:6px}.tisseo .field input{width:100%;height:46px;padding:0 14px;border:1px solid var(--border-strong);border-radius:9px;background:var(--surface);color:var(--fg-strong);font-family:var(--font-main);font-size:15px;outline:0}.tisseo .field input:focus{border-color:var(--m-primary)}.tisseo .login-error{font-size:13px;color:var(--m-danger);background:#e51f1f14;border:1px solid rgba(229,31,31,.25);border-radius:9px;padding:10px 12px;margin-bottom:15px}.tisseo .btn-primary{width:100%;height:48px;margin-top:8px;border:0;border-radius:9px;background:var(--m-primary);color:#fff;font-family:var(--font-main);font-size:15px;font-weight:600;cursor:pointer;transition:filter .12s ease;display:flex;align-items:center;justify-content:center;gap:8px}.tisseo .btn-primary svg{width:17px;height:17px;stroke:#fff}.tisseo .btn-primary:hover:not(:disabled){filter:brightness(1.08)}.tisseo .btn-primary:disabled{opacity:.55;cursor:not-allowed}.tisseo .login .foot{font-size:12px;color:var(--fg-faint);text-align:center;margin-top:22px}.tisseo .searchbar{position:relative;margin-bottom:14px}.tisseo .searchbar .lead{position:absolute;left:6px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;background:none;padding:0;display:flex;align-items:center;justify-content:center;color:var(--fg-muted);cursor:pointer}.tisseo .searchbar .lead:disabled{cursor:default}.tisseo .searchbar .lead svg{width:17px;height:17px;stroke:currentColor}.tisseo .searchbar input{width:100%;height:42px;padding:0 38px;border:1px solid var(--border-strong);border-radius:9px;background:var(--surface);color:var(--fg-strong);font-family:var(--font-main);font-size:14.5px;outline:0}.tisseo .searchbar input::placeholder{color:var(--fg-faint)}.tisseo .searchbar input:focus{border-color:var(--m-primary)}.tisseo .searchbar .clr{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:26px;height:26px;border:0;background:var(--chip-soft);border-radius:50%;color:var(--fg-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.tisseo .searchbar .clr svg{width:13px;height:13px;stroke:currentColor}.tisseo .line-entry{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.tisseo .line-head{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;background:none;font-family:var(--font-main);text-align:left;cursor:pointer;transition:background .12s ease}.tisseo .line-head:hover{background:var(--chip-soft)}.tisseo .lbadge{flex-shrink:0;min-width:34px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:3px;color:#fff;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700;font-size:13px;padding:0 6px}.tisseo .lbadge svg{width:13px;height:13px;stroke:currentColor;flex-shrink:0}.tisseo .line-head-main{flex:1;min-width:0}.tisseo .line-head-main .nm{font-size:13px;font-weight:600;color:var(--fg-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tisseo .line-head-main .sub{font-size:11.5px;color:var(--fg-muted)}.tisseo .line-head .chev{width:16px;height:16px;stroke:var(--fg-faint);transition:transform .18s ease;flex-shrink:0}.tisseo .line-entry.open .chev{transform:rotate(90deg)}.tisseo .dir-list{border-top:1px solid var(--border);background:var(--surface-2);padding:6px;display:flex;flex-direction:column;gap:4px}.tisseo .dir-row{display:flex;align-items:center;gap:10px;padding:8px;border-radius:7px}.tisseo .dir-row:hover{background:var(--chip-soft)}.tisseo .dir{flex:1;min-width:0}.tisseo .dir .d{font-size:13px;font-weight:600;color:var(--fg-strong);display:flex;align-items:center;gap:6px}.tisseo .dir .d svg{width:13px;height:13px;stroke:var(--m-accent);flex-shrink:0}.tisseo .dir .s{font-size:11.5px;color:var(--fg-muted)}.tisseo .star-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--fg-faint);cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;transition:all .12s ease}.tisseo .star-btn svg{width:16px;height:16px}.tisseo .star-btn:hover{border-color:var(--m-accent);color:var(--m-accent)}.tisseo .star-btn.on{background:var(--m-accent);border-color:var(--m-accent);color:#fff}.tisseo .lines-note{font-size:12.5px;color:var(--fg-muted);padding:8px 6px}.tisseo .stop-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.tisseo .stop-row{display:flex;align-items:center;gap:11px;width:100%;padding:13px 14px;border:0;background:none;font-family:var(--font-main);text-align:left;cursor:pointer}.tisseo .stop-row:disabled{cursor:default}.tisseo .stop-row:hover:not(:disabled){background:var(--surface-2)}.tisseo .stop-ico{width:34px;height:34px;border-radius:8px;background:var(--chip-soft);color:var(--m-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tisseo.dark .stop-ico{color:var(--m-accent)}.tisseo .stop-ico svg{width:18px;height:18px;stroke:currentColor}.tisseo .stop-main{flex:1;min-width:0}.tisseo .stop-main .nm{font-weight:600;font-size:14.5px;color:var(--fg-strong)}.tisseo .stop-main .sub{font-size:12px;color:var(--fg-muted)}.tisseo .stop-row .chev{width:16px;height:16px;stroke:var(--fg-faint);transition:transform .18s ease;flex-shrink:0}.tisseo .stop-card.open .chev{transform:rotate(90deg)}.tisseo .lines-panel{border-top:1px solid var(--border);background:var(--surface-2);padding:8px;display:flex;flex-direction:column;gap:6px}.tisseo .res-list{display:flex;flex-direction:column;gap:9px}.tisseo{height:100%;display:flex;flex-direction:column;background:var(--bg);color:var(--fg);font-family:var(--font-main);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow:hidden}.tisseo h1,.tisseo h2,.tisseo h3,.tisseo h4,.tisseo p{margin:0}.tisseo .num{font-family:var(--font-num);font-variant-numeric:tabular-nums}.tisseo .topbar{flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top,0)}.tisseo .topbar-inner{max-width:1100px;margin:0 auto;width:100%;padding:10px 18px 0}.tisseo .brandrow{display:flex;align-items:center;justify-content:space-between;height:46px}.tisseo .brand{display:flex;align-items:center;gap:9px}.tisseo .brand .mark{width:28px;height:28px;border-radius:7px;background:var(--m-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tisseo .brand .mark svg{width:17px;height:17px;stroke:#fff}.tisseo .brand .wordmark{font-weight:700;font-size:19px;letter-spacing:-.01em;color:var(--fg-strong)}.tisseo .brand .wordmark .dot{color:var(--m-accent)}.tisseo .topactions{display:flex;align-items:center;gap:6px}.tisseo .iconbtn{width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--fg-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s ease;padding:0}.tisseo .iconbtn:hover{border-color:var(--border-strong);color:var(--fg-strong)}.tisseo .iconbtn svg{width:18px;height:18px;stroke:currentColor}.tisseo .iconbtn.on{background:var(--m-primary);border-color:var(--m-primary);color:#fff}.tisseo .tabs{display:flex;gap:4px;margin-top:6px}.tisseo .tab{flex:1;background:none;border:0;border-bottom:2px solid transparent;padding:11px 8px 12px;font-family:var(--font-main);font-size:14px;font-weight:600;color:var(--fg-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;transition:color .12s ease,border-color .12s ease}.tisseo .tab svg{width:17px;height:17px;stroke:currentColor}.tisseo .tab:hover{color:var(--fg-strong)}.tisseo .tab.active{color:var(--fg-strong);border-bottom-color:var(--m-accent)}.tisseo .body{flex:1;overflow-y:auto;overflow-x:hidden}.tisseo .body-inner{max-width:1100px;margin:0 auto;width:100%;padding:18px 18px 44px}.tisseo .body::-webkit-scrollbar{width:8px}.tisseo .body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.tisseo .center-fill{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}.tisseo .section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-left:11px;border-left:3px solid var(--m-accent)}.tisseo .section-head h2{margin:0;font-size:18px;font-weight:700;color:var(--fg-strong);letter-spacing:-.01em;white-space:nowrap}.tisseo .section-head .count{font-family:var(--font-num);font-size:12px;color:var(--fg-muted);background:var(--chip-soft);padding:3px 9px;border-radius:5px}.tisseo .empty{text-align:center;padding:56px 24px;color:var(--fg-muted)}.tisseo .empty svg{width:40px;height:40px;stroke:var(--fg-faint);margin-bottom:12px}.tisseo .empty .t{font-weight:600;color:var(--fg-strong);font-size:15px;margin-bottom:5px}.tisseo .empty .s{font-size:13px;max-width:240px;margin:0 auto}.tisseo .rt{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--m-success);white-space:nowrap;flex-shrink:0}.tisseo .rt .pulse{width:6px;height:6px;border-radius:50%;background:var(--m-success);animation:tpulse 1.6s ease-in-out infinite}.tisseo .search-page{display:block}.tisseo .res-hint{font-size:12px;color:var(--fg-muted);margin:0 0 10px 2px}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/league-spartan-vietnamese-300-normal-CCMdcZQZ.woff2) format("woff2"),url(/assets/league-spartan-vietnamese-300-normal-2GRfcUVJ.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/league-spartan-latin-ext-300-normal-DVol2crm.woff2) format("woff2"),url(/assets/league-spartan-latin-ext-300-normal-BUQsvuA_.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:League Spartan;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/league-spartan-latin-300-normal-E3hk7Ocp.woff2) format("woff2"),url(/assets/league-spartan-latin-300-normal-PU6UdBnL.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/league-spartan-vietnamese-400-normal-qh09PVbx.woff2) format("woff2"),url(/assets/league-spartan-vietnamese-400-normal-DmsCAdAp.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/league-spartan-latin-ext-400-normal-CUEsI60l.woff2) format("woff2"),url(/assets/league-spartan-latin-ext-400-normal-BZqq8HMJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:League Spartan;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/league-spartan-latin-400-normal-DnxLqxAY.woff2) format("woff2"),url(/assets/league-spartan-latin-400-normal-BoJqwX88.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/league-spartan-vietnamese-500-normal-hRA1rvDK.woff2) format("woff2"),url(/assets/league-spartan-vietnamese-500-normal-CiMQ40bL.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/league-spartan-latin-ext-500-normal-Bf0UYA27.woff2) format("woff2"),url(/assets/league-spartan-latin-ext-500-normal-DiebZ98b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:League Spartan;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/league-spartan-latin-500-normal-SanrEFcd.woff2) format("woff2"),url(/assets/league-spartan-latin-500-normal-BMRb0-E5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/league-spartan-vietnamese-600-normal-Cot-T8d4.woff2) format("woff2"),url(/assets/league-spartan-vietnamese-600-normal-DkVdIeVx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/league-spartan-latin-ext-600-normal-nMNwaRqy.woff2) format("woff2"),url(/assets/league-spartan-latin-ext-600-normal-BYU5cLYt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:League Spartan;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/league-spartan-latin-600-normal-DHjw6l_K.woff2) format("woff2"),url(/assets/league-spartan-latin-600-normal-DXHl7Rg9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/league-spartan-vietnamese-700-normal-BhNxTXKp.woff2) format("woff2"),url(/assets/league-spartan-vietnamese-700-normal-Dn0E2a1W.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/league-spartan-latin-ext-700-normal-BwN75zDi.woff2) format("woff2"),url(/assets/league-spartan-latin-ext-700-normal-DQ9i1Vnk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:League Spartan;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/league-spartan-latin-700-normal-CtwlLP3z.woff2) format("woff2"),url(/assets/league-spartan-latin-700-normal-D-5a3uka.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Azeret Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/azeret-mono-latin-ext-400-normal-CwvinM0p.woff2) format("woff2"),url(/assets/azeret-mono-latin-ext-400-normal-Wsi1uLNw.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Azeret Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/azeret-mono-latin-400-normal-BqmUdsta.woff2) format("woff2"),url(/assets/azeret-mono-latin-400-normal-BRS1Zqm5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Azeret Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/azeret-mono-latin-ext-500-normal-DFqw0mEW.woff2) format("woff2"),url(/assets/azeret-mono-latin-ext-500-normal-xVGuEwUD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Azeret Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/azeret-mono-latin-500-normal-BVZ56V1O.woff2) format("woff2"),url(/assets/azeret-mono-latin-500-normal-DPHAfL-P.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Azeret Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/azeret-mono-latin-ext-600-normal-D_PBEJnM.woff2) format("woff2"),url(/assets/azeret-mono-latin-ext-600-normal-DTxi6gbF.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Azeret Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/azeret-mono-latin-600-normal-CqVsP0JD.woff2) format("woff2"),url(/assets/azeret-mono-latin-600-normal-DGYASQR8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Azeret Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/azeret-mono-latin-ext-700-normal-BYM65voq.woff2) format("woff2"),url(/assets/azeret-mono-latin-ext-700-normal-S5Pz4irx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Azeret Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/azeret-mono-latin-700-normal-Br66ecwh.woff2) format("woff2"),url(/assets/azeret-mono-latin-700-normal-DqZWYAHJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--m-primary: #274859;--m-secondary: #637ea1;--m-accent: #ee9149;--m-yellow: #ffda05;--m-success: #2d9a4e;--m-danger: #e51f1f;--m-info: #148eff;--font-main: "League Spartan", system-ui, sans-serif;--font-num: "Azeret Mono", ui-monospace, monospace}.tisseo{--bg: #f4f6f8;--surface: #ffffff;--surface-2: #f7f9fa;--border: #e1e5e9;--border-strong: #d2d8dd;--fg: #32404a;--fg-strong: #274859;--fg-muted: #7c8a94;--fg-faint: #aab4bc;--tab-rail: #eef1f4;--shadow-card: 0 1px 2px rgba(39, 72, 89, .05);--chip-soft: rgba(39, 72, 89, .06)}.tisseo.dark{--bg: #11202a;--surface: #182d38;--surface-2: #1d3540;--border: #294653;--border-strong: #335161;--fg: #cdd9df;--fg-strong: #f0f5f7;--fg-muted: #8aa1ac;--fg-faint: #5f7d8a;--tab-rail: #15282f;--shadow-card: 0 1px 3px rgba(0, 0, 0, .3);--chip-soft: rgba(255, 255, 255, .06)}@keyframes tpulse{0%,to{opacity:1}50%{opacity:.3}}:root{font-family:League Spartan,system-ui,sans-serif;line-height:1.45;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{min-width:320px}
