:root{color-scheme:light dark;--tg-bg-color: #f6f7fb;--tg-text-color: #17212b;--tg-hint-color: #708499;--tg-link-color: #2481cc;--tg-button-color: #2481cc;--tg-button-text-color: #ffffff;--tg-secondary-bg-color: #ffffff;--tg-section-bg-color: #ffffff;--tg-accent-text-color: #17804a;--border-color: rgba(23, 33, 43, .12);--danger-color: #c2410c;--warning-color: #b7791f;--success-bg: #e7f6ed;--danger-bg: #fff2ed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--tg-bg-color);color:var(--tg-text-color)}:root[data-theme=dark]{--tg-bg-color: #111827;--tg-text-color: #f3f4f6;--tg-hint-color: #9ca3af;--tg-secondary-bg-color: #1f2937;--tg-section-bg-color: #1f2937;--border-color: rgba(243, 244, 246, .14);--success-bg: rgba(23, 128, 74, .18);--danger-bg: rgba(194, 65, 12, .18)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--tg-bg-color)}button,input,select{font:inherit}button{min-height:44px;border:1px solid var(--border-color);border-radius:8px;background:var(--tg-secondary-bg-color);color:var(--tg-text-color);cursor:pointer}button:disabled{cursor:progress;opacity:.62}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(36,129,204,.28);outline-offset:2px}input,select{width:100%;min-height:44px;border:1px solid var(--border-color);border-radius:8px;padding:10px 12px;background:var(--tg-secondary-bg-color);color:var(--tg-text-color)}.app-shell{width:min(100%,760px);min-height:100vh;margin:0 auto;padding:max(14px,env(safe-area-inset-top)) 12px calc(92px + env(safe-area-inset-bottom))}.topbar{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:start;padding:6px 0 14px}.topbar h1,.state-view h1{margin:4px 0;font-size:30px;line-height:1.04;letter-spacing:0}.topbar p,.state-view p,.muted-text,.grouped-row p{margin:0;color:var(--tg-hint-color)}.eyebrow{color:var(--tg-hint-color);font-size:13px;font-weight:700;text-transform:uppercase}.trip-avatar{display:inline-flex;align-items:center;justify-content:center;width:64px;aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,#2481cc2e,#17804a29),var(--tg-section-bg-color);color:var(--tg-button-color);font-weight:900;box-shadow:inset 0 0 0 1px #17212b14}.topbar-main{min-width:0}.topbar-title-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:10px;align-items:start}.icon-button{width:44px;padding:0;border-color:transparent;background:#2481cc14;color:var(--tg-button-color);font-size:20px;font-weight:900}.avatar-row{display:flex;gap:7px;align-items:center;margin-top:12px}.avatar-row span,.avatar-row strong{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:2px solid var(--tg-bg-color);border-radius:50%;background:var(--tg-section-bg-color);color:var(--tg-text-color);font-size:13px;font-weight:800;box-shadow:0 2px 8px #17212b14}.money-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--border-color);border-radius:8px;background:var(--border-color)}.money-panel>div{min-width:0;padding:16px 14px;background:var(--tg-section-bg-color)}.money-panel span,.money-panel small{display:block;color:var(--tg-hint-color);font-size:13px}.money-panel strong{display:block;margin:8px 0 4px;overflow-wrap:anywhere;font-size:25px;line-height:1.05}.money-positive{color:var(--tg-accent-text-color)}.money-negative{color:var(--warning-color)}.quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 12px}.quick-actions button{display:grid;gap:6px;justify-items:center;min-height:68px;padding:10px 6px;border-color:var(--border-color);background:var(--tg-section-bg-color);color:var(--tg-text-color);font-weight:750}.quick-actions span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#2481cc1a;color:var(--tg-button-color);font-size:12px;font-weight:900}.tabbar{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:8px 0;background:color-mix(in srgb,var(--tg-bg-color) 92%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.tabbar button{border-color:transparent;background:#7084991f;min-height:44px;padding:8px 4px;font-size:14px;font-weight:800;line-height:1.1;color:var(--tg-hint-color)}.tabbar button.active{border-color:transparent;background:var(--tg-section-bg-color);color:var(--tg-button-color);box-shadow:0 4px 16px #17212b14}.screen-stack{display:grid;gap:16px}.tool-panel,.state-view,.inline-message{border:1px solid var(--border-color);border-radius:8px;background:var(--tg-section-bg-color)}.field span{display:block;color:var(--tg-hint-color);font-size:13px;font-weight:600}.tool-panel{padding:14px}.panel-title{margin:0 0 12px;font-size:18px;line-height:1.2;font-weight:800}.group-section h2{margin:0 0 8px;padding-left:2px;color:var(--tg-hint-color);font-size:15px;line-height:1.2}.grouped-list{overflow:hidden;border:1px solid var(--border-color);border-radius:8px;background:var(--tg-section-bg-color)}.grouped-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:68px;padding:12px;border-bottom:1px solid var(--border-color);background:var(--tg-section-bg-color)}.grouped-row:last-child{border-bottom:0}.grouped-row_actions{grid-template-columns:1fr}.row-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#2481cc1a;color:var(--tg-button-color);font-size:12px;font-weight:900}.row-copy{display:grid;min-width:0;gap:3px}.row-copy strong,.row-copy small,.grouped-row h3,.grouped-row p{overflow:hidden;text-overflow:ellipsis}.row-copy strong,.grouped-row h3{white-space:nowrap}.row-copy small,.grouped-row p{color:var(--tg-hint-color);font-size:13px;line-height:1.25}.row-value,.grouped-row .row-main>strong{justify-self:end;white-space:nowrap;font-weight:850}.row-tone-primary{color:var(--tg-button-color)}.row-tone-success{color:var(--tg-accent-text-color)}.row-tone-warning{color:var(--warning-color)}.tool-panel{display:grid;gap:12px}.field{display:grid;gap:6px}.segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.segmented button{min-height:40px;padding:7px 4px}.segmented button.selected{background:var(--tg-button-color);color:var(--tg-button-text-color);border-color:var(--tg-button-color)}.picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choice{display:flex;align-items:center;gap:8px;min-height:42px;padding:9px 10px;border:1px solid var(--border-color);border-radius:8px}.choice_single{width:100%}.choice input{width:18px;min-height:18px}.primary-button,.secondary-button{width:100%;padding:10px 12px;font-weight:800}.primary-button{border-color:var(--tg-button-color);background:var(--tg-button-color);color:var(--tg-button-text-color)}.secondary-button{color:var(--tg-link-color)}.button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip,.status-pill{display:inline-flex;align-items:center;min-height:30px;border-radius:8px;padding:5px 8px;background:var(--tg-bg-color);color:var(--tg-hint-color);font-size:13px}.row-main{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;align-items:center}.row-main_button{width:100%;min-height:58px;grid-template-columns:44px minmax(0,1fr) auto 16px;padding:0;border:0;border-radius:0;background:transparent;color:var(--tg-text-color);text-align:left}.row-main_button:hover,.row-main_button:focus-visible{background:color-mix(in srgb,var(--tg-button-color) 6%,transparent)}.row-split{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.row-context-action{min-width:88px;padding:7px 10px;color:var(--tg-link-color)}.row-detail-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-top:8px}.row-detail-actions button{color:var(--tg-link-color)}.row-chevron{color:var(--tg-hint-color);transform:rotate(0)}.row-main_button[aria-expanded=true] .row-chevron{transform:rotate(90deg)}.grouped-row h3{margin:0 0 4px;font-size:16px;line-height:1.2}.inline-edit{display:grid;gap:10px;padding-top:8px}.empty-state,.form-error{border-radius:8px;padding:12px;color:var(--tg-hint-color);background:var(--tg-bg-color)}.form-error{color:var(--danger-color);background:var(--danger-bg)}.inline-message{margin:0 0 10px;padding:12px;background:var(--success-bg);color:var(--tg-accent-text-color)}.inline-message_error{background:var(--danger-bg);color:var(--danger-color)}.inline-message ul{margin:8px 0 0;padding-left:18px}.inline-message span{font-weight:800}.state-view{display:grid;gap:12px;margin-top:16px;padding:18px}.native-sheet-layer{position:fixed;inset:0;z-index:20;display:flex;align-items:flex-end;justify-content:center;padding:0 max(10px,calc((100vw - 760px)/2 + 10px))}.sheet-backdrop{position:absolute;inset:0;background:linear-gradient(180deg,#050c142e,#050c14a3),#050c1447;animation:sheet-backdrop-fade .18s ease-out both}.native-sheet{position:relative;z-index:1;display:grid;gap:12px;width:min(100%,736px);max-height:min(86vh,720px);overflow:auto;padding:8px 12px calc(18px + env(safe-area-inset-bottom));border:1px solid color-mix(in srgb,var(--tg-button-color) 20%,var(--border-color));border-bottom:0;border-radius:8px 8px 0 0;background:var(--tg-section-bg-color);box-shadow:0 -24px 60px #050c1457;animation:sheet-slide-up .24s cubic-bezier(.2,.8,.2,1) both}.sheet-grabber{justify-self:center;width:44px;height:5px;margin:2px 0 4px;border-radius:999px;background:color-mix(in srgb,var(--tg-hint-color) 48%,transparent)}.sheet-header{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:10px;align-items:start}.sheet-header h2{margin:3px 0 0;font-size:22px;line-height:1.15}.native-sheet .tool-panel{padding:0;border:0}.native-sheet .panel-title{display:none}@keyframes sheet-backdrop-fade{0%{opacity:0}to{opacity:1}}@keyframes sheet-slide-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.native-sheet,.sheet-backdrop{animation:none}}.skeleton-screen{display:grid;gap:14px;padding-top:8px}.skeleton-header{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center}.skeleton-avatar,.skeleton-line,.skeleton-money span,.skeleton-actions span,.skeleton-list span{display:block;overflow:hidden;border-radius:8px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--tg-text-color) 8%,transparent),transparent),color-mix(in srgb,var(--tg-hint-color) 14%,var(--tg-section-bg-color));background-size:180% 100%;animation:skeleton-pulse 1.25s ease-in-out infinite}.skeleton-avatar{width:64px;aspect-ratio:1;border-radius:50%}.skeleton-lines,.skeleton-list{display:grid;gap:9px}.skeleton-line{width:100%;height:14px}.skeleton-line_short{width:34%}.skeleton-line_title{width:70%;height:28px}.skeleton-money{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--border-color);border-radius:8px;background:var(--border-color)}.skeleton-money span{min-height:104px;border-radius:0}.skeleton-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.skeleton-actions span,.skeleton-list span{height:68px}@keyframes skeleton-pulse{0%{background-position:120% 0}to{background-position:-120% 0}}.bottom-primary-action{position:fixed;right:max(14px,calc((100vw - 760px)/2 + 14px));bottom:max(18px,env(safe-area-inset-bottom));left:max(14px,calc((100vw - 760px)/2 + 14px));z-index:10;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;border-color:var(--tg-button-color);background:var(--tg-button-color);color:var(--tg-button-text-color);font-size:16px;font-weight:900;box-shadow:0 10px 28px #2481cc3d}.bottom-primary-action span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#ffffff38;font-size:22px}@media(max-width:430px){.app-shell{padding-left:10px;padding-right:10px}.topbar{grid-template-columns:56px minmax(0,1fr);gap:12px}.trip-avatar{width:56px}.topbar h1,.state-view h1{font-size:28px}.money-panel strong{font-size:22px}.grouped-row{grid-template-columns:42px minmax(0,1fr) auto;gap:8px;padding-right:10px;padding-left:10px}.grouped-row_actions{grid-template-columns:1fr}.row-main{grid-template-columns:42px minmax(0,1fr) auto}.row-main_button{grid-template-columns:42px minmax(0,1fr) auto 16px}.row-icon{width:36px;height:36px}.picker-grid{grid-template-columns:1fr}.row-split{grid-template-columns:minmax(0,1fr)}.row-context-action{justify-self:stretch}}
