:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--tg-theme-text-color, #f4f7ff);background:var(--tg-theme-bg-color, #0d1424);font-synthesis:none;text-rendering:optimizeLegibility;--surface: var(--tg-theme-secondary-bg-color, #172136);--surface-strong: var(--tg-theme-section-bg-color, #202d47);--text: var(--tg-theme-text-color, #f4f7ff);--muted: var(--tg-theme-hint-color, #98a5ba);--accent: var(--tg-theme-button-color, #55d6be);--accent-text: var(--tg-theme-button-text-color, #071813);--danger: #ff6b7a;--line: color-mix(in srgb, var(--text) 12%, transparent)}*{box-sizing:border-box}html{min-height:100%;background:var(--tg-theme-bg-color, #0d1424)}body{margin:0;min-width:320px;min-height:100vh;background:var(--tg-theme-bg-color, #0d1424)}button,input,select{font:inherit}button{color:inherit}.app-shell{width:min(100%,640px);min-height:100vh;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 18px calc(92px + env(safe-area-inset-bottom))}.hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:4px 2px 24px}.logo{color:var(--accent);font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.logo span{margin-left:3px}.hero h1{margin:14px 0 5px;font-size:clamp(28px,7vw,36px);line-height:1.05;letter-spacing:-.035em}.hero p{margin:0;max-width:370px;color:var(--muted);line-height:1.5}.icon-button,.back-link{border:1px solid var(--line);background:transparent;width:42px;height:42px;border-radius:13px;cursor:pointer}.compact-header{display:flex;align-items:center;gap:15px;margin-bottom:24px}.back-link{font-size:22px}.card{border:1px solid var(--line);border-radius:18px;background:var(--surface)}.subscription-list{display:grid;gap:14px}.subscription-card{padding:18px;transition:opacity .2s,transform .2s}.subscription-card:active{transform:scale(.992)}.subscription-card.is-paused{opacity:.66}.card-top,.card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.status{border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.status.active{color:#82efd9;background:#55d6be21}.status.paused{color:#d2b986;background:#d2b98621}.text-button,.danger-link{border:0;padding:6px;background:none;color:var(--accent);cursor:pointer}.route{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:23px 2px;font-size:25px;letter-spacing:.025em}.flight-line{position:relative;height:1px;background:var(--line);text-align:center}.flight-line span{position:relative;top:-13px;display:inline-block;padding:4px 8px;color:var(--accent);background:var(--surface);transform:rotate(6deg)}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.meta-grid>div{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:16px;background:#ffffff09}.meta-grid small,.card-footer small{color:var(--muted);font-size:10px;letter-spacing:.06em}.meta-grid span{font-size:14px;font-weight:650}.card-footer{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.pill-button{border:1px solid var(--line);border-radius:999px;padding:8px 13px;background:transparent;font-size:12px;cursor:pointer}.brand-mark{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 14px;border-radius:18px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);font-size:28px}.fab{position:fixed;z-index:5;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100% - 36px),724px);display:flex;justify-content:center;align-items:center;gap:9px;min-height:58px;border:0;border-radius:20px;color:var(--accent-text);background:var(--accent);font-weight:800;box-shadow:0 16px 34px #00000059;cursor:pointer}.fab span{font-size:24px;line-height:1}.page{display:grid;gap:14px}.form-page{padding-bottom:20px}.route-form,.settings-card{padding:18px}.settings-card h1{margin:5px 0 12px}.form-heading{margin:0 2px 2px}.form-heading h1{margin:6px 0 5px;font-size:clamp(24px,6vw,31px);letter-spacing:-.025em}.form-heading p{margin:0;color:var(--muted);line-height:1.45}.eyebrow{color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.14em}.field{position:relative;display:flex;flex-direction:column;gap:7px;min-width:0}.field>span{color:var(--muted);font-size:12px;font-weight:650}input,select{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px 13px;outline:none;color:var(--text);background:color-mix(in srgb,var(--surface) 92%,var(--text) 8%);transition:border-color .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}select option{color:#111}.route-fields{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:end;gap:8px}.swap-button{display:grid;place-items:center;width:40px;height:46px;border:1px solid var(--line);border-radius:12px;color:var(--accent);background:transparent;cursor:pointer}.two-columns,.budget-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.budget-row{grid-template-columns:1fr 104px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:19px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer}.switch-row input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:48px;height:28px;padding:0;border:0;border-radius:999px;background:#ffffff1f;transition:.2s}.switch-row input:after{content:"";display:block;width:22px;height:22px;margin:3px;border-radius:50%;background:#fff;transition:.2s}.switch-row input:checked{background:var(--accent)}.switch-row input:checked:after{transform:translate(20px)}.form-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:22px}.button{min-height:47px;border:0;border-radius:15px;padding:10px 17px;font-weight:750;cursor:pointer}.button:disabled{cursor:wait;opacity:.55}.button.primary{color:var(--accent-text);background:var(--accent)}.button.ghost{border:1px solid var(--line);background:transparent}.danger-link{display:block;margin:17px auto 0;color:var(--danger)}.settings-card{display:grid;gap:18px}.location-field{z-index:2}.suggestions{position:absolute;z-index:10;top:calc(100% + 7px);left:0;right:0;max-height:260px;overflow-y:auto;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--surface-strong);box-shadow:0 14px 28px #00000038}.suggestion{width:100%;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:8px;border:0;border-radius:11px;padding:10px;text-align:left;background:transparent;cursor:pointer}.suggestion:hover{background:#ffffff12}.suggestion span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion small{color:var(--muted)}.suggestion-state{padding:14px 12px;color:var(--muted);font-size:13px}.error-banner{margin:14px 0;padding:12px 14px;border:1px solid rgba(255,107,122,.35);border-radius:14px;color:#ffb4bc;background:#ff6b7a1a;font-size:13px}.center-state{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.center-state h1{margin:5px 0}.center-state p{max-width:360px;color:var(--muted);line-height:1.5}.loader{width:38px;height:38px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 430px){.app-shell{padding-left:14px;padding-right:14px}.route-fields{grid-template-columns:1fr}.swap-button{justify-self:end;height:36px;margin:-4px 8px;transform:rotate(90deg)}.two-columns,.meta-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
