@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--telegram-content-safe-area-top:0px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-main:#0b0f19;--card-bg:#161f30;--card-hover:#1e293b;--bg-app:var(--bg-main);--bg-surface:var(--card-bg);--bg-surface-hover:var(--card-hover);--bg-input:var(--card-bg);--border-color:#ffffff14;--border-color-active:#3b82f680;--accent-green:#10b981;--accent-green-hover:#059669;--accent-green-glow:#10b98133;--accent-blue:#3b82f6;--accent-purple:#8b5cf6;--accent-danger:#f43f5e;--accent-red:#f43f5e;--accent-red-bg:#f43f5e1f;--accent-danger-bg:#f43f5e1f;--accent-warning-bg:#eab3081f;--text-main:#f8fafc;--text-muted:#94a3b8;--text-subtle:#64748b;--radius-lg:24px;--radius-md:14px;--radius-sm:12px;--shadow-card:0 25px 50px -12px #00000059;--shadow-glow:0 8px 20px var(--accent-green-glow);font-synthesis:none;text-rendering:optimizelegibility;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}body{background:radial-gradient(circle at 50% -15%, #1a2436 0%, var(--bg-main) 52%), var(--bg-main);min-width:320px;min-height:100vh;color:var(--text-main);background-attachment:fixed;margin:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{background:var(--bg-app);grid-template-columns:250px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-right:1px solid var(--border-color);background:#0b0f19d6;flex-direction:column;gap:28px;height:100dvh;padding:24px 18px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.5px;align-items:center;gap:12px;min-height:48px;font-size:20px;font-weight:800;display:flex}.brand>span:last-child{gap:2px;display:grid}.brand small{color:var(--text-muted);font-size:13px;font-weight:600}.brand-mark{border-radius:14px;flex:0 0 42px;width:42px;height:42px;overflow:hidden}.brand-mark img{object-fit:cover;width:100%;height:100%;display:block}.nav-list{gap:8px;display:grid}.nav-button,.bottom-button{color:var(--text-muted);background:0 0;border:0;align-items:center;min-height:48px;font-size:15px;font-weight:600;display:flex}.nav-button{text-align:left;border-radius:var(--radius-md);gap:12px;padding:0 14px}.nav-button:hover{background:var(--card-hover);color:var(--text-main)}.nav-button span{color:var(--accent-green);text-align:center;width:26px;font-size:22px;line-height:1}.sidebar-actions{grid-template-columns:48px;align-items:center;gap:10px;margin-top:auto;display:grid}.sidebar-logout{width:100%}.nav-button.is-active,.bottom-button.is-active,.icon-button.is-active{color:#fff;background:#3b82f629;border:1px solid #3b82f673}.icon-button{color:var(--text-muted);border:1px solid var(--border-color);border-radius:var(--radius-md);background:#161f30c7;place-items:center;width:48px;min-width:48px;height:48px;font-size:22px;font-weight:800;display:inline-grid}.icon-button:hover{background:var(--bg-surface-hover);color:var(--text-main);border-color:#fff3}.settings-button{font-size:24px}.workspace{background:linear-gradient(#0b0f1933,#0000);min-width:0;padding:28px clamp(20px,3.5vw,44px) 40px}.screen{width:min(100%,1180px);margin:0 auto}.screen.narrow{width:min(100%,600px)}.page-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;display:flex}.month-controls{grid-template-columns:48px minmax(170px,1fr) 48px;align-items:end;gap:8px;display:grid}.month-picker,.month-picker input{min-width:0}.transactions-month-controls{width:min(100%,360px);margin:0 0 20px auto}.header-actions{align-items:center;gap:10px;display:flex}.eyebrow{color:var(--accent-green);text-transform:uppercase;letter-spacing:.8px;margin:0 0 6px;font-size:12px;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:-.8px;margin-bottom:0;font-size:clamp(28px,4vw,42px);font-weight:800;line-height:1.1}h2{margin-bottom:0;font-size:18px;font-weight:700}p{color:var(--text-muted);line-height:1.55}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.summary-band,.panel,.state-view,.expense-form,.inline-form,.category-row{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.summary-band,.panel,.expense-form,.inline-form,.category-row,.panel-form,.auth-panel,.state-view{background:linear-gradient(145deg, #1e293bc7, var(--card-bg))}.summary-band{background:var(--bg-surface);grid-template-columns:1.25fr .7fr 1fr;align-items:center;gap:16px;margin-bottom:12px;padding:22px 24px;display:grid}.comparison-note{color:var(--text-muted);border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffff08;width:fit-content;margin:0 0 20px;padding:8px 14px;font-size:14px}.summary-band div{gap:4px;display:grid}.summary-band span,label span,dt{color:var(--text-muted);font-size:13px;font-weight:600}.summary-band strong{letter-spacing:-.5px;color:var(--text-main);font-size:clamp(22px,3vw,34px);font-weight:800}.content-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:20px;display:grid}.panel{min-width:0;padding:22px}.section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.category-bars{gap:16px;display:grid}.bar-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.bar-row div{align-items:center;gap:10px;min-width:0;font-weight:600;display:flex}.bar-row>span{background:#ffffff0f;border-radius:999px;grid-column:1/-1;height:8px;overflow:hidden}.bar-row>span.is-over-limit{background:var(--accent-danger)}.overview-screen{background:linear-gradient(160deg, var(--piggy-color-app-gradient-start), var(--piggy-color-app-gradient-end));border-radius:var(--piggy-radius-dialog);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);padding:26px 18px 14px}.overview-header h1{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:normal;margin:0 0 14px;font-size:24px;font-weight:700;line-height:normal}.overview-month-controls{grid-template-columns:38px minmax(170px,1fr) 38px;gap:6px;max-width:300px}.overview-screen .month-picker{position:relative}.overview-screen .month-picker input{appearance:none;background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);border-radius:12px;height:48px;min-height:48px;padding:0 14px;font-size:14px;font-weight:700}.overview-summary{gap:10px;margin-bottom:20px;display:grid}.overview-summary__primary{gap:4px;display:grid}.overview-summary__primary span,.overview-summary__details span{color:var(--piggy-color-text-secondary);font-size:13px;font-weight:600}.overview-summary__primary strong{color:var(--piggy-color-primary);font-variant-numeric:tabular-nums;font-size:24px;font-weight:700}.overview-summary__details{border-top:1px solid var(--piggy-color-glass-divider);gap:10px;padding-top:12px;display:grid}.overview-summary__details p{color:var(--piggy-color-text-secondary);font-family:var(--piggy-font-family);margin:0;font-size:12px}.overview-summary__details div{justify-content:space-between;align-items:baseline;display:flex}.overview-summary__details strong{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.overview-content-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:20px;display:grid}.overview-section{min-width:0}.overview-section__title h2{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);font-size:14px;font-weight:700}.overview-category-bars{gap:12px;display:grid}.overview-bar-row{appearance:none;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;gap:4px;margin:0 -8px;padding:4px 8px;font-family:inherit;transition:background .15s,transform .15s;display:grid}.overview-bar-row:hover{background:var(--piggy-color-glass)}.overview-bar-row:active{transform:scale(.985)}.overview-bar-row__header{color:var(--piggy-color-text-primary);align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:700;display:flex}.overview-bar-row__header .category-icon{width:30px;height:30px}.overview-bar-row>strong{color:var(--piggy-color-text-secondary);font-variant-numeric:tabular-nums;justify-self:end;margin-top:-36px;font-size:12px;font-weight:600}.overview-progress-track{background:var(--piggy-color-glass-strong);border-radius:8px;height:7px;display:block;overflow:hidden}.overview-progress-track>span{background:var(--piggy-color-primary);border-radius:inherit;height:100%;display:block}.overview-progress-track>span.is-over-limit{background:var(--piggy-color-danger)}.overview-limit-warning{color:var(--piggy-color-danger);font-family:var(--piggy-font-family);margin:0;font-size:11px;font-weight:600}.expense-list--overview{gap:10px}.expense-list--overview .expense-row{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);border-radius:14px;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;min-height:0;padding:10px 14px}.expense-list--overview .expense-row:hover{background:var(--piggy-color-glass-strong);border-color:var(--piggy-color-glass-border);transform:none}.expense-list--overview .expense-row .category-icon{width:30px;height:30px}.expense-list--overview .expense-row strong{font-size:13px;font-weight:700}.expense-list--overview .expense-row small{color:var(--piggy-color-text-secondary);margin-top:2px;font-size:11px}.expense-list--overview .expense-row b{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.swatch{border-radius:50%;width:12px;min-width:12px;height:12px;display:inline-block;box-shadow:0 0 8px}.category-icon{background:color-mix(in srgb, currentColor 15%, transparent);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:inline-grid}.category-detail{align-items:center;gap:8px;display:flex}.filters{grid-template-columns:minmax(240px,1fr) minmax(220px,.8fr);align-items:end;gap:16px 24px;display:grid}.filters-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50;background:#020617b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.filters-dialog{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);width:min(100%,620px);padding:24px}.filters-dialog .section-title{align-items:center;margin-bottom:20px}.app-dialog-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#020617b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.app-dialog{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);width:min(100%,460px);max-width:460px;padding:24px}.app-dialog h2{margin:0 0 10px;font-size:20px}.app-dialog p{color:var(--text-muted);margin:0 0 20px;line-height:1.5}.app-dialog-actions{justify-content:flex-end;margin-top:20px}.select-menu{position:relative}.select-menu-trigger{border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-main);text-align:left;background:#0b0f1961;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:0 14px;display:flex}.select-menu-options{border:1px solid var(--border-color-active);border-radius:var(--radius-md);box-shadow:var(--shadow-card);z-index:20;background:#161f30;max-height:280px;margin-top:6px;padding:6px;position:absolute;left:0;right:0;overflow-y:auto}.select-menu-options button{color:var(--text-main);text-align:left;background:0 0;border:0;border-radius:9px;width:100%;min-height:42px;padding:8px 10px}.select-menu-options button:hover,.select-menu-options button.is-selected{background:#3b82f659}label{gap:7px;display:grid}.field{color:var(--text-muted);font-size:14px;font-weight:600}input,select,textarea{color:var(--text-main);border:1px solid var(--border-color);border-radius:var(--radius-md);background:#0b0f1961;width:100%;min-height:48px;padding:0 14px;transition:all .2s}input:hover,select:hover,textarea:hover{border-color:#fff3}textarea{resize:vertical;min-height:96px;padding-block:12px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{border-color:var(--accent-green);box-shadow:0 0 0 3px var(--accent-green-glow);outline:none}.ledger-layout{grid-template-columns:minmax(360px,.85fr) minmax(360px,1fr);align-items:start;gap:20px;display:grid}.expense-list{gap:10px;display:grid}.expense-row{min-height:64px;color:inherit;text-align:left;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#161f30e0;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;transition:transform .15s,background .15s;display:grid}.expense-row:hover{background:var(--card-hover);border-color:#ffffff26;transform:translateY(-2px)}.expense-row.is-selected{border-color:var(--accent-green);background:#10b9811f}.expense-row strong{font-size:15px;font-weight:600}.expense-row strong,.expense-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.expense-row small{color:var(--text-muted);margin-top:3px;font-size:12px}.expense-row b{white-space:nowrap;font-size:15px;font-weight:700}.details-list{gap:14px;margin:0;display:grid}.details-list div{border-bottom:1px solid #ffffff0a;grid-template-columns:132px minmax(0,1fr);gap:6px;padding-bottom:10px;display:grid}.details-list dd{overflow-wrap:anywhere;margin:0;font-weight:600}.original-document{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.original-document p{color:var(--text-muted);margin:4px 0 12px}.original-backdrop{z-index:50;background:#000000b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.original-viewer{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);width:min(100%,920px);max-height:calc(100vh - 40px);padding:16px;display:grid}.original-viewer-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.original-viewer-header h2{overflow-wrap:anywhere;margin:0;font-size:18px}.original-viewer img,.original-viewer iframe{object-fit:contain;border:0;width:100%;min-height:420px;max-height:calc(100vh - 132px)}.items-preview{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.product-table,.items-editor{gap:10px;display:grid}.items-toggle{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;padding-top:16px;display:flex}.items-toggle h2,.items-toggle p{margin-bottom:0}.items-toggle p{margin-top:4px;font-size:14px}.product-table-head,.product-table-row{grid-template-columns:minmax(0,1.4fr) minmax(96px,.7fr) 72px minmax(96px,.7fr);align-items:center;gap:12px;display:grid}.product-table-head{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:700}.product-table-row{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#0b0f1966;min-height:48px;padding:8px 12px}.product-table-row strong,.product-table-row b{overflow-wrap:anywhere}.actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.primary-button,.ghost-button,.danger-button{border-radius:var(--radius-md);justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg, var(--accent-green), var(--accent-green-hover));box-shadow:var(--shadow-glow);border:none}.primary-button:hover{filter:brightness(1.08);transform:translateY(-1px)}.ghost-button{color:var(--text-muted);border:1px solid var(--border-color);background:0 0}.ghost-button:hover{color:var(--text-main);background:#ffffff0d}.danger-button{color:#fca5a5;background:var(--accent-danger-bg);border:1px solid #f43f5e4d}.danger-button:hover{background:#f43f5e38}.shared-expenses-page{gap:18px;display:grid}.shared-expenses-card,.shared-expenses-participants{gap:16px;display:grid}.shared-expenses-card>p{color:var(--text-muted);margin:0}.shared-expenses-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.shared-expenses-summary--grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shared-expenses-summary div{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#ffffff0a;padding:12px}.shared-expenses-summary dt{color:var(--text-muted);font-size:13px}.shared-expenses-summary dd{font-variant-numeric:tabular-nums;margin:5px 0 0;font-weight:800}.shared-expenses-method{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.shared-expenses-method>p{grid-column:1/-1;margin:0;font-weight:700}.shared-expenses-method label{color:var(--text-muted);border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffff0a;justify-content:center;align-items:center;min-height:48px;padding:0 12px;font-weight:700;display:flex;position:relative}.shared-expenses-method label:hover{background:var(--bg-surface-hover);color:var(--text-main)}.shared-expenses-method label.is-selected{color:#fff;border-color:var(--accent-green);background:#10b98129}.shared-expenses-method input{appearance:none;clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shared-expenses-method label:has(input:focus-visible){outline-offset:2px;outline:3px solid #3b82f6a6}.shared-expenses-debt-tabs{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-wrap:wrap;gap:8px;padding:8px;display:flex}.shared-expenses-debt-tabs button{border-radius:var(--radius-sm);color:var(--text-muted);font:inherit;background:0 0;border:0;flex:140px;min-height:44px;padding:0 14px;font-weight:700}.shared-expenses-debt-tabs button:hover{background:var(--bg-surface-hover);color:var(--text-main)}.shared-expenses-debt-tabs button.is-selected{color:#fff;background:#10b98129;box-shadow:inset 0 0 0 1px #10b9816b}.shared-expenses-debt-tabs button:focus-visible{outline-offset:2px;outline:3px solid #3b82f6a6}.shared-expenses-empty-state{color:var(--text-muted);padding:20px}.shared-expenses-empty-state p{margin:0}.shared-expenses-debt-card{cursor:pointer;text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center}.shared-expenses-debt-card:hover{background:var(--bg-surface-hover);border-color:#10b9816b}.shared-expenses-debt-card__main{gap:4px;min-width:0;display:grid}.shared-expenses-debt-card__main strong{overflow-wrap:anywhere}.shared-expenses-debt-card__main span,.shared-expenses-debt-card__status{color:var(--text-muted);overflow-wrap:anywhere;font-size:14px}.shared-expenses-debt-card__amount{font-variant-numeric:tabular-nums;justify-self:end;font-size:18px;font-weight:800}.shared-expenses-debt-card__status{grid-column:1/-1}.shared-expenses-participant{grid-template-columns:minmax(0,1fr) minmax(120px,.55fr) auto;align-items:end;gap:10px;display:grid}.shared-expenses-participant strong{font-variant-numeric:tabular-nums;align-items:center;min-height:48px;display:flex}.shared-expenses-table{min-width:0}.shared-expenses-table__head,.shared-expenses-table__row{grid-template-columns:minmax(120px,1.2fr) minmax(90px,.75fr) minmax(110px,.9fr) minmax(110px,.9fr) minmax(180px,1.35fr);align-items:center;gap:10px;padding:12px 0;display:grid}.shared-expenses-table__head{color:var(--text-muted);border-bottom:1px solid var(--border-color);font-size:13px}.shared-expenses-table__row{border-bottom:1px solid #ffffff0f}.shared-expenses-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.shared-expenses-recent-contacts{border-top:1px solid var(--border-color);gap:8px;padding-top:16px;display:grid}.shared-expenses-recent-contacts h2,.shared-expenses-recent-contacts p{margin:0}.shared-expenses-recent-contacts h2{font-size:16px}.shared-expenses-recent-contacts p{color:var(--text-muted);font-size:14px}.shared-expenses-recent-contacts>div{flex-wrap:wrap;gap:8px;display:flex}.shared-transaction-link{border-radius:var(--radius-sm);background:#10b9811a;border:1px solid #10b98147;flex:100%;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}@media (width<=840px){.shared-expenses-table__head{display:none}.shared-expenses-table__row{border:1px solid var(--border-color);border-radius:var(--radius-sm);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;padding:14px}.shared-expenses-table__row>strong,.shared-expenses-table__row>span:not(.shared-expenses-row-actions){overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.shared-expenses-table__row>strong:before,.shared-expenses-table__row>span:not(.shared-expenses-row-actions):before{color:var(--text-muted);content:attr(data-label);font-size:12px;font-weight:700}.shared-expenses-row-actions{grid-column:1/-1;justify-content:stretch}.shared-expenses-row-actions button{flex:150px}}@media (width<=460px){.shared-expenses-debt-tabs button{flex-basis:calc(50% - 4px)}}.expense-form{gap:16px;padding:24px;display:grid}.items-editor{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#0b0f1980;padding:16px}.items-editor .section-title p{margin-bottom:0;font-size:14px}.item-row{grid-template-columns:minmax(0,1.35fr) minmax(110px,.7fr) minmax(82px,.45fr) minmax(104px,.65fr) 44px;align-items:end;gap:10px;display:grid}.item-row-head{color:var(--text-muted);text-transform:uppercase;align-items:center;font-size:12px;font-weight:700}.item-row label span{display:none}.item-row strong{overflow-wrap:anywhere;align-items:center;min-height:48px;display:inline-flex}.icon-action{border-radius:var(--radius-sm);place-items:center;width:44px;min-width:44px;height:48px;font-size:22px;font-weight:700;display:inline-grid}.danger-icon{color:#fca5a5;background:var(--accent-danger-bg);border:1px solid #f43f5e4d}.expense-screen{position:relative}.expense-page-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.expense-eyebrow,.form-label,.expense-field>span,.category-field>span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin:0;font-size:11px;font-weight:800}.expense-title{font-size:clamp(28px,5vw,38px)}.expense-form{border-radius:28px;gap:18px;padding:20px;box-shadow:0 25px 50px -12px #000000bf}.hero-amount{border:1px solid var(--border-color);background:#0b0f1985;border-radius:20px;align-items:center;padding:22px 14px 18px;display:grid}.hero-amount-input-wrap{justify-content:center;align-items:baseline;gap:8px;width:100%;display:flex}.hero-amount input{letter-spacing:-2px;text-align:center;background:0 0;border:0;border-radius:0;outline:0;width:min(100%,290px);min-height:66px;padding:0;font-size:clamp(42px,12vw,52px);font-weight:800}.hero-amount input:focus-visible{box-shadow:none}.hero-amount-input-wrap>span{color:var(--text-muted);font-size:30px;font-weight:700}.hero-amount small{color:var(--accent-green);margin-top:-3px;font-size:12px}.expense-field{gap:8px;display:grid}.field-error{color:#fca5a5;font-size:13px;line-height:1.35}.expense-field input,.expense-field textarea{background:var(--card-bg)}.expense-date-row{grid-template-columns:auto auto minmax(0,1fr);gap:8px;display:grid}.date-chip,.category-chip{color:var(--text-muted);background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;min-height:48px;padding:0 13px;font-size:13px;font-weight:700}.date-chip:hover,.category-chip:hover{color:var(--text-main);background:var(--card-hover)}.date-chip.is-active,.category-chip.is-active{color:#fff;border-color:var(--accent-blue);background:#3b82f626}.expense-date-row input{min-width:0}.category-field{border:0;min-width:0;margin:0;padding:0}.category-chips{flex-wrap:wrap;gap:8px;display:flex}.category-chip{align-items:center;gap:6px;display:inline-flex}.category-more{color:var(--accent-blue);border-color:#3b82f673}.expense-items-toggle{border:1px solid var(--border-color);background:#0b0f195c;border-radius:20px;padding:16px}.items-editor{background:#0b0f198f;border-radius:20px}.items-editor .section-title strong,.item-total{color:var(--accent-green)}.expense-item-card{background:var(--card-bg);border-radius:14px;align-items:end;padding:12px}.expense-item-card .item-total{justify-content:flex-end;min-height:48px;font-size:14px}.expense-actions{margin-top:2px}.expense-actions .primary-button{box-shadow:var(--shadow-glow);flex:2}.expense-actions .ghost-button{flex:1}.category-sheet-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;pointer-events:none;z-index:40;background:#020617b8;transition:opacity .25s;position:fixed;inset:0}.category-sheet-backdrop.is-open{opacity:1;pointer-events:auto}.category-sheet{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);width:min(100%,680px);height:min(76dvh,620px);padding:10px 20px max(20px, env(safe-area-inset-bottom));z-index:41;background:#161f30ed;border-radius:28px 28px 0 0;grid-template-rows:auto auto minmax(0,1fr);transition:transform .3s cubic-bezier(.2,.8,.2,1);display:grid;position:fixed;bottom:0;left:50%;overflow:hidden;transform:translate(-50%,105%);box-shadow:0 -20px 50px #00000073}.category-sheet.is-open{transform:translate(-50%)}.sheet-handle{background:#ffffff2e;border-radius:999px;justify-self:center;width:42px;height:4px}.category-sheet header{justify-content:space-between;align-items:center;margin:16px 0;display:flex}.category-sheet h2{margin-top:4px}.category-sheet header button{color:var(--text-muted);background:0 0;border:0;min-width:44px;min-height:44px;font-size:26px}.category-sheet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0;padding-bottom:4px;display:grid;overflow-y:auto}@media (pointer:coarse){.category-sheet-grid{-ms-overflow-style:none;scrollbar-width:none}.category-sheet-grid::-webkit-scrollbar{display:none}}.sheet-category{color:var(--text-main);border:1px solid var(--border-color);text-align:left;overflow-wrap:anywhere;background:#0b0f199e;border-radius:14px;justify-content:flex-start;align-items:center;gap:9px;min-height:52px;padding:0 12px;font-weight:700;display:flex}.sheet-category .category-icon{flex:0 0 36px}.sheet-category:hover,.sheet-category.is-active{background:var(--card-hover);border-color:var(--accent-blue)}.category-tree{gap:6px;display:grid;overflow-y:auto}.category-tree-row{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.category-tree-row.is-child{margin-left:34px}.category-tree-select{text-align:left;min-height:44px;color:var(--text-main);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:7px 8px;display:flex}.category-tree-select:hover,.category-tree-select.is-active{background:var(--card-hover)}.category-tree-select small{color:var(--text-muted);margin-left:auto}.category-tree-toggle,.category-tree-spacer{place-items:center;width:32px;height:44px;display:grid}.category-tree-toggle{color:var(--text-muted);background:0 0;border:0}.category-tree-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.category-management-tree{margin-top:18px;overflow:visible}.category-management-tree .category-tree-row{border-bottom:1px solid var(--border-color);grid-template-columns:32px minmax(180px,1fr) auto}.category-management-tree .row-actions{align-items:center;gap:6px;display:flex}.tree-usage{color:var(--text-muted);white-space:nowrap;font-size:13px}.category-sheet-tree{padding-bottom:4px}.muted-icon{color:var(--text-muted);background:#94a3b814;border:1px solid #94a3b838}.stack,.panel-form{gap:16px;display:grid}.panel-form{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:min(100%,540px);padding:24px}.readonly-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.readonly-grid>div{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);align-content:space-between;min-height:88px;padding:14px;display:grid}.readonly-grid span{color:var(--text-muted);font-size:13px;font-weight:600}.readonly-grid strong{overflow-wrap:anywhere;font-size:20px}.inline-form{grid-template-columns:minmax(0,1fr) minmax(180px,.45fr) auto;align-items:end;gap:12px;margin-bottom:18px;padding:18px;display:grid}.category-list{gap:10px;display:grid}.category-row{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.category-row p{margin-bottom:0}.category-limit-field{width:168px}.row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.state-view{text-align:center;place-items:center;min-height:230px;padding:28px;display:grid}.state-view h1{font-size:24px}.auth-page{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));background:radial-gradient(circle at 50% 0%, #1a2436 0%, var(--bg-main) 68%), var(--bg-main);place-items:center;display:grid}.auth-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:#161f30cc;width:min(100%,440px);padding:32px;box-shadow:0 25px 50px -12px #000000bf}.brand-row{align-items:center;gap:16px;margin-bottom:28px;display:flex}.content-section{gap:22px;width:min(100%,1040px);margin:0 auto;display:grid}.narrow-section{width:min(100%,640px)}.section-heading{gap:4px;display:grid}.form-error,.form-success,.muted{line-height:1.5}.form-error{color:#fca5a5;background:var(--accent-danger-bg);border-radius:var(--radius-sm);border:1px solid #f43f5e4d;padding:12px 14px}.form-success{color:#6ee7b7}.muted{color:var(--text-muted)}.status-banner,.toast{border-radius:var(--radius-md);width:min(100%,1180px);margin:0 auto 14px;padding:12px 16px;font-weight:600}.status-banner{color:#fde047;background:var(--accent-warning-bg);border:1px solid #eab3084d}.toast{z-index:20;box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:8px}.toast--error{color:#fecdd3;background:linear-gradient(var(--accent-danger-bg), var(--accent-danger-bg)), var(--bg-surface);border:1px solid #f43f5e73}.toast button{border-radius:var(--radius-sm);background:0 0;border:0;width:32px;height:32px;font-size:22px}.skeleton{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);overflow:hidden}.skeleton.wide{height:120px;margin-bottom:18px}.skeleton.block{height:360px}.bottom-nav,.bottom-nav[hidden]{display:none}.fab-button{right:max(24px, env(safe-area-inset-right));bottom:max(24px, env(safe-area-inset-bottom));z-index:30;color:#fff;background:linear-gradient(135deg, var(--accent-green), var(--accent-green-hover));width:60px;height:60px;box-shadow:var(--shadow-glow);border:none;border-radius:50%;place-items:center;display:grid;position:fixed}.fab-button:hover{background:var(--accent-green-hover)}.fab-button__icon,.fab-button__icon:before,.fab-button__icon:after{background:#fff;border-radius:1px;display:block}.fab-button__icon{width:22px;height:4px;position:relative}.fab-button__icon:before,.fab-button__icon:after{content:"";position:absolute;inset:0}.fab-button__icon:after{transform:rotate(90deg)}.ai-fab-button{right:max(96px, calc(env(safe-area-inset-right) + 78px));color:#fff;background:var(--accent-blue);box-shadow:0 8px 20px #3b82f640}.ai-fab-button span{font-size:24px}.ai-fab-button.has-draft{box-shadow:none;background:#d97706}.recognition-backdrop{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#020617c2;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.recognition-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:#161f30eb;width:min(100%,920px);max-height:min(920px,100dvh - 40px);padding:26px;overflow-y:auto;box-shadow:0 25px 50px -12px #000000bf}.recognition-header,.recognition-status,.recognition-item,.recognition-fields{gap:12px;display:grid}.recognition-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;margin-bottom:18px}.recognition-header h1{font-size:clamp(26px,4vw,38px)}.recognition-preview{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#0b0f1999;place-items:center;min-height:120px;margin-bottom:16px;display:grid;overflow:hidden}.recognition-preview img{object-fit:contain;width:100%;max-height:260px;display:block}.recognition-empty{text-align:center;place-items:center;gap:8px;padding:42px 18px;display:grid}.recognition-empty p{max-width:520px}.ai-symbol{color:#fff;background:var(--accent-blue);width:58px;height:58px;box-shadow:none;border-radius:50%;place-items:center;font-size:28px;display:grid}.recognition-content{gap:14px;display:grid}.recognition-status{color:var(--text-muted);grid-template-columns:10px auto 1fr;align-items:center}.recognition-status span:last-child{color:var(--text-subtle);justify-self:end;font-size:13px}.status-dot{background:var(--accent-green);width:10px;height:10px;box-shadow:0 0 0 4px var(--accent-green-glow);border-radius:50%}.status-dot.is-error{background:var(--accent-danger);box-shadow:0 0 0 4px #f43f5e40}.recognition-alert{border-radius:var(--radius-md);gap:4px;padding:12px 14px;display:grid}.recognition-alert.warning{color:#fde047;background:var(--accent-warning-bg);border:1px solid #eab3084d}.recognition-alert.error{color:#fca5a5;background:var(--accent-danger-bg);border:1px solid #f43f5e4d}.recognition-form,.recognition-items{gap:14px;display:grid}.recognition-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.recognition-items{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#0b0f1966;padding:14px}.recognition-items .section-title p{margin-bottom:0;font-size:14px}.recognition-item{border-top:1px solid #ffffff0f;grid-template-columns:minmax(0,2fr) repeat(3,minmax(90px,.8fr)) 44px;align-items:end;padding-top:12px}.recognition-item label span{display:none}.recognition-progress{gap:8px;padding:16px 0;display:grid}.recognition-progress p{margin-bottom:0;font-size:14px}.recognition-steps{gap:8px;margin:0;padding:0;list-style:none;display:grid}.recognition-steps li{color:var(--text-subtle);align-items:center;gap:9px;font-size:14px;display:flex}.recognition-steps li.is-complete{color:#6ee7b7;font-weight:700}.recognition-steps li span{color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;font-weight:800;display:inline-grid}.recognition-steps li.is-complete span{color:#fff;background:var(--accent-green);border-color:var(--accent-green)}.progress-track{background:#ffffff14;border-radius:999px;height:8px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--accent-green);width:45%;height:100%;animation:1.2s ease-in-out infinite alternate progress;display:block}.recognition-delete{justify-self:start}@keyframes progress{0%{transform:translate(-100%)}to{transform:translate(230%)}}.fab-button>span:not(.fab-button__icon){place-items:center;width:34px;height:34px;font-size:32px;font-weight:700;line-height:34px;display:grid;transform:translateY(-1px)}@keyframes loading{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width<=900px){.app-shell{padding-bottom:calc(92px + env(safe-area-inset-bottom));display:block}.sidebar{display:none}.workspace{padding:max(18px, env(safe-area-inset-top)) 14px 18px}:root.is-telegram-mini-app .workspace{padding:max(80px, calc(env(safe-area-inset-top) + 20px), calc(var(--tg-content-safe-area-inset-top,0px) + 20px), calc(var(--telegram-content-safe-area-top) + 20px)) 14px 18px}.page-header,.section-title,.items-toggle{flex-direction:column;align-items:stretch}.month-controls{grid-template-columns:48px minmax(0,1fr) 48px}.transactions-month-controls{width:100%;margin-left:0}.summary-band,.content-grid,.overview-content-grid,.ledger-layout,.filters,.inline-form,.item-row{grid-template-columns:1fr}.category-row{grid-template-columns:36px minmax(0,1fr);align-items:start}.category-row .row-actions{grid-column:1/-1;width:100%}.category-row .category-limit-field{flex:160px;max-width:260px}.item-row-head{display:none}.item-row{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:stretch;padding:10px}.item-row label span{display:inline}.item-row strong{min-height:auto}.items-preview{overflow-x:auto}.product-table{min-width:480px}.details-list div{grid-template-columns:1fr}.shared-expenses-summary--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shared-expenses-participant{grid-template-columns:1fr;align-items:stretch}.shared-expenses-table{overflow-x:auto}.bottom-nav{z-index:20;-webkit-backdrop-filter:blur(18px)saturate(1.25);bottom:max(8px, env(safe-area-inset-bottom));left:max(8px, env(safe-area-inset-left));right:max(8px, env(safe-area-inset-right));background:#0d1322b8;border:1px solid #ffffff24;border-radius:20px;grid-template-columns:repeat(4,1fr);padding:6px;display:grid;position:fixed;box-shadow:0 12px 32px #00000052}.bottom-button{border-radius:var(--radius-sm);flex-direction:column;justify-content:center;gap:2px;padding:2px}.bottom-button span{font-size:23px;line-height:1}.bottom-button small{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:11px;overflow:hidden}.fab-button{right:max(18px, env(safe-area-inset-right));bottom:calc(96px + max(8px, env(safe-area-inset-bottom)))}.ai-fab-button{right:max(92px, calc(env(safe-area-inset-right) + 74px))}.recognition-backdrop{place-items:end center;padding:0}.recognition-panel{width:100%;max-height:calc(100dvh - 14px);padding:18px 14px calc(18px + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0}.recognition-fields,.recognition-item{grid-template-columns:1fr}.recognition-item{border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:stretch;padding:10px}.recognition-item label span{display:inline}.category-sheet{border-radius:28px 28px 0 0;padding-inline:14px}.category-sheet-grid{gap:8px}.sheet-category{min-width:0;min-height:50px;padding-inline:10px;font-size:14px;line-height:1.2}}@media (width<=500px){.category-sheet-grid{grid-template-columns:minmax(0,1fr)}}@media (width>=901px) and (width<=1180px){.app-shell{grid-template-columns:214px minmax(0,1fr)}.content-grid,.ledger-layout{grid-template-columns:1fr}}.app-shell--overview{background:var(--piggy-color-page-base);grid-template-rows:minmax(686px,auto) auto;grid-template-columns:minmax(0,380px);place-content:center;min-height:100dvh;padding:28px 16px 60px;display:grid}body:has(.app-shell--overview){background:var(--piggy-color-page-base)}.app-shell--overview .sidebar{display:none}.app-shell--overview .workspace{background:linear-gradient(160deg, var(--piggy-color-app-gradient-start), var(--piggy-color-app-gradient-end));border-radius:32px 32px 0 0;width:380px;min-height:686px;padding:26px 18px 14px}.app-shell--overview .overview-screen,.app-shell--overview .glass-tab-screen,.app-shell--overview .glass-detail-screen{background:0 0;border-radius:0;width:100%;padding:0}.app-shell--glass-detail{grid-template-rows:minmax(760px,auto)}.app-shell--glass-detail .workspace{border-radius:32px;min-height:760px;padding:20px 18px 14px}@media (width<=480px){.app-shell--glass-detail .workspace{border-radius:0;min-height:100dvh}}.app-shell--overview .overview-tab-navigation{background:var(--piggy-color-glass-soft);-webkit-backdrop-filter:var(--piggy-blur-card);backdrop-filter:var(--piggy-blur-card);border:0;border-top:1px solid var(--piggy-color-glass-divider);border-radius:0 0 32px 32px;grid-area:2/1;grid-template-columns:repeat(5,1fr);align-items:end;width:380px;padding:6px 18px 14px;display:grid;position:static;bottom:auto;left:auto;right:auto;box-shadow:0 24px 60px #0f233829}.app-shell--overview .overview-tab-navigation .bottom-button{color:var(--piggy-color-text-secondary);font-family:var(--piggy-font-family);background:0 0;border:0;border-top:2px solid #0000;border-radius:0;gap:3px;min-height:52px;padding:10px 2px 12px;font-size:10px;font-weight:400}.app-shell--overview .overview-tab-navigation .bottom-button.is-active{border:0;border-top:2px solid var(--piggy-color-primary);color:var(--piggy-color-primary);background:0 0;font-weight:700}.app-shell--overview .overview-tab-navigation .bottom-button span{justify-content:center;align-items:center;height:18px;display:inline-flex}.app-shell--overview .overview-tab-navigation .bottom-button small{font-size:10px}.overview-tab-add{background:var(--piggy-color-primary);color:var(--piggy-color-white);font-family:var(--piggy-font-family);border:0;border-radius:50%;justify-content:center;place-self:center;align-items:center;width:38px;height:38px;padding:0;font-size:24px;font-weight:400;line-height:1;display:inline-flex;box-shadow:0 6px 16px #0ea5e966}.expense-list--overview .expense-row small{display:none}.overview-header{margin-bottom:16px}.overview-header h1{text-transform:capitalize;font-size:24px}.overview-period-controls{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:8px;display:flex;position:relative}.overview-period-picker{flex:none;position:relative}.overview-period-trigger{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);background:0 0;border:0;align-items:baseline;gap:6px;padding:0;display:flex}.overview-period-trigger--year{opacity:.6}.overview-period-trigger--year span{font-size:24px;font-weight:700;line-height:1}.overview-period-trigger h1{margin:0;line-height:1}.overview-period-chevron{align-self:center}.overview-period-trigger[aria-expanded=true] .overview-period-chevron{transform:rotate(90deg)}.overview-period-menu{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);box-shadow:var(--piggy-shadow-menu);z-index:6;border-radius:16px;max-height:220px;margin-top:6px;padding:6px;position:absolute;top:100%;left:0;overflow-y:auto}.overview-period-menu button{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:12px;width:100%;padding:9px 16px;font-size:13px;font-weight:600;display:block}.overview-period-menu button:hover{background:var(--piggy-color-primary-soft)}.overview-summary{gap:10px;margin-bottom:18px;padding:16px}.overview-summary__primary span,.overview-summary__details span{opacity:.6;font-size:11px;font-weight:400}.overview-summary__details{grid-template-columns:repeat(2,1fr);gap:0;padding-top:10px;display:grid}.overview-summary__details div:last-child{text-align:right;grid-template-columns:100%;justify-items:end}.overview-summary__details div:last-child strong{width:100%}.overview-summary__details div{align-items:start;gap:2px;display:grid}.overview-summary__details strong{font-size:14px}.overview-content-grid{grid-template-columns:1fr;gap:0}.overview-section__title{margin-bottom:10px}.overview-category-bars{gap:14px;margin-bottom:18px}.overview-bar-row__header{font-size:12px;font-weight:400;display:block}.overview-bar-row>strong{margin-top:-20px;font-weight:400}@media (width<=480px){.app-shell--overview{grid-template-columns:minmax(0,100%);align-content:start;padding:0}.app-shell--overview .workspace,.app-shell--overview .overview-tab-navigation{width:100%}.app-shell--overview .workspace{min-height:calc(100dvh - 78px);padding-bottom:calc(78px + env(safe-area-inset-bottom));border-radius:0}.app-shell--overview .overview-tab-navigation{padding-bottom:max(14px, env(safe-area-inset-bottom));z-index:20;border-radius:0;position:fixed;bottom:0;left:0;right:0}}:root{--piggy-color-page-base:#eef2f5;--piggy-color-app-gradient-start:#dceefc;--piggy-color-app-gradient-end:#eef5fb;--piggy-color-primary:#0ea5e9;--piggy-color-primary-hover:#0284c7;--piggy-color-text-primary:#0f2338;--piggy-color-text-secondary:#5b7488;--piggy-color-danger:#e11d48;--piggy-color-danger-dark:#b91c3c;--piggy-color-white:#fff;--piggy-color-glass:#ffffff8c;--piggy-color-glass-soft:#ffffff80;--piggy-color-glass-strong:#fff9;--piggy-color-glass-border:#ffffffb3;--piggy-color-glass-divider:#fff9;--piggy-color-menu:#eef5fbf2;--piggy-color-primary-soft:#0ea5e924;--piggy-color-primary-border:#0ea5e94d;--piggy-color-danger-outline:#ef444466;--piggy-color-danger-soft:#fde8ea;--piggy-color-success:#16a34a;--piggy-color-glass-closed-row:#fff6;--piggy-color-input-divider:#fffc;--piggy-color-primary-softer:#0ea5e914;--piggy-color-primary-icon:#0ea5e929;--piggy-color-primary-dashed-border:#0ea5e980;--piggy-color-neutral-badge:#5b74881f;--piggy-color-scrim:#0f233852;--piggy-shadow-menu:0 16px 32px #0f23382e;--piggy-shadow-primary:0 8px 20px #0ea5e959;--piggy-shadow-primary-small:0 6px 16px #0ea5e959;--piggy-shadow-fab:0 6px 16px #0ea5e966;--piggy-shadow-shell:0 24px 60px #0f233829;--piggy-radius-action:10px;--piggy-radius-control:12px;--piggy-radius-field:14px;--piggy-radius-card:16px;--piggy-radius-dialog:20px;--piggy-radius-shell:32px;--piggy-radius-pill:999px;--piggy-radius-circle:50%;--piggy-blur-row:blur(10px);--piggy-blur-card:blur(14px);--piggy-blur-dialog:blur(20px);--piggy-blur-scrim:blur(2px);--piggy-font-family:"Plus Jakarta Sans", sans-serif;--piggy-touch-target:48px}.piggy-glass-surface{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.piggy-glass-surface--emphasis{-webkit-backdrop-filter:var(--piggy-blur-card);backdrop-filter:var(--piggy-blur-card);border-radius:var(--piggy-radius-dialog);padding:16px}.piggy-glass-surface--soft{background:var(--piggy-color-glass-soft);border-radius:12px}.piggy-eyebrow{color:var(--piggy-color-primary);font-family:var(--piggy-font-family);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.piggy-button{border-radius:var(--piggy-radius-card);font-family:var(--piggy-font-family);justify-content:center;align-items:center;min-height:48px;padding:14px;font-size:14px;font-weight:700;display:inline-flex}.piggy-button--primary{background:var(--piggy-color-primary);box-shadow:var(--piggy-shadow-primary);color:var(--piggy-color-white);border:0}.piggy-button--primary:hover{background:var(--piggy-color-primary-hover)}.piggy-button--secondary{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);color:var(--piggy-color-text-primary)}.piggy-button--danger{border:1px solid var(--piggy-color-danger-outline);color:var(--piggy-color-danger);background:0 0}.piggy-icon-circle{border-radius:var(--piggy-radius-circle);color:var(--piggy-color-primary);background:#0ea5e929;justify-content:center;align-items:center;display:inline-flex}.piggy-icon-circle--small{width:24px;height:24px}.piggy-icon-circle--regular{width:32px;height:32px}.piggy-icon-circle--large{width:56px;height:56px}.piggy-icon-circle--18{width:18px;height:18px}.piggy-icon-circle--24{width:24px;height:24px}.piggy-icon-circle--26{width:26px;height:26px}.piggy-icon-circle--28{width:28px;height:28px}.piggy-icon-circle--30{width:30px;height:30px}.piggy-icon-circle--32{width:32px;height:32px}.piggy-icon-circle--46{width:46px;height:46px}.piggy-icon-circle--56{width:56px;height:56px}.piggy-icon-circle--64{width:64px;height:64px}.piggy-icon-circle--solid{background:var(--piggy-color-primary);color:var(--piggy-color-white)}.piggy-field{gap:6px;display:grid}.piggy-field__label{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:.04em;opacity:.6;text-transform:uppercase;font-size:11px}.piggy-field__control{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);width:100%;min-height:48px;padding:12px 14px;font-size:14px}.piggy-dialog-surface{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-dialog);box-shadow:var(--piggy-shadow-menu);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);padding:22px 20px}.piggy-page-header{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.piggy-page-header__row{justify-content:space-between;align-items:center;gap:12px;display:flex}.piggy-page-header__trailing{flex:none;align-items:center;gap:8px;display:flex}.piggy-page-title{margin:0;font-size:24px;font-weight:700}.piggy-page-title--secondary{font-size:22px}.piggy-back-action{color:var(--piggy-color-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);background:0 0;border:0;align-items:center;gap:6px;padding-bottom:18px;font-size:13px;font-weight:700;display:inline-flex}.piggy-utility-pill{background:var(--piggy-color-primary-soft);border-radius:var(--piggy-radius-pill);color:var(--piggy-color-primary);font-family:var(--piggy-font-family);border:0;justify-content:center;align-items:center;padding:6px 12px;font-size:11px;font-weight:700;display:inline-flex;position:relative}.piggy-utility-pill:after{content:"";height:var(--piggy-touch-target);width:100%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.piggy-filter-pill{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-pill);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);white-space:nowrap;justify-content:center;align-items:center;padding:7px 14px;font-size:12px;display:inline-flex}.piggy-filter-pill.is-active{background:var(--piggy-color-primary);color:var(--piggy-color-white);border:0;font-weight:700}.piggy-segmented{gap:8px;display:flex}.piggy-segmented__option{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-control);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);flex:1;justify-content:center;align-items:center;padding:9px;font-size:12px;font-weight:700;display:flex}.piggy-segmented__option.is-active{background:var(--piggy-color-primary);color:var(--piggy-color-white);border:0}.piggy-menu{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);box-shadow:var(--piggy-shadow-menu);z-index:6;margin-top:6px;padding:6px;position:absolute;top:100%;left:0}.piggy-menu--period{max-height:220px;overflow-y:auto}.piggy-menu--category{z-index:5;max-height:280px;overflow-y:auto}.piggy-menu-item{border-radius:var(--piggy-radius-control);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;width:100%;font-size:13px;font-weight:600;display:flex}.piggy-menu-item:hover{background:var(--piggy-color-primary-soft)}.piggy-menu-item__label{flex:1}.piggy-menu-item__icon,.piggy-menu-item__trailing{flex:none;align-items:center;display:inline-flex}.piggy-menu-item--option{padding:9px 16px}.piggy-menu-item--category{padding:9px 10px;font-weight:700}.piggy-menu-item--child{opacity:.75;padding:7px 10px 7px 40px;font-size:12px;font-weight:600}.piggy-kv-card{gap:12px;display:grid}.piggy-kv-row{justify-content:space-between;font-size:13px;display:flex}.piggy-kv-row+.piggy-kv-row{border-top:1px solid var(--piggy-color-glass-divider);padding-top:12px}.piggy-kv-row__key{opacity:.6}.piggy-kv-row__value{font-weight:700}.piggy-transaction-row{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);text-align:left;align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:12px 14px;display:flex}.piggy-transaction-row__avatar{flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.piggy-transaction-row__body{flex:1;min-width:0;display:block}.piggy-transaction-row__title{align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.piggy-transaction-row__meta{opacity:.6;margin-top:2px;font-size:11px;display:block}.piggy-transaction-row__amount{font-variant-numeric:tabular-nums;flex:none;font-size:13px}.piggy-status-badge{font-family:var(--piggy-font-family);border-radius:6px;align-items:center;font-weight:700;display:inline-flex}.piggy-status-badge--shared{background:var(--piggy-color-primary-soft);color:var(--piggy-color-primary);padding:1px 6px;font-size:10px}.piggy-status-badge--system{background:var(--piggy-color-neutral-badge);color:var(--piggy-color-text-secondary);padding:2px 6px;font-size:9px}.piggy-status-pill{background:var(--piggy-color-primary-soft);border-radius:var(--piggy-radius-pill);color:var(--piggy-color-primary);font-family:var(--piggy-font-family);align-items:center;padding:6px 12px;font-size:11px;font-weight:700;display:inline-flex}.piggy-progress{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.piggy-progress__header{justify-content:space-between;margin-bottom:6px;font-size:12px;display:flex}.piggy-progress__value{opacity:.6}.piggy-progress.is-exceeded .piggy-progress__value{color:var(--piggy-color-danger);opacity:1;font-weight:700}.piggy-progress__track{background:var(--piggy-color-glass-strong);border-radius:8px;height:7px;overflow:hidden}.piggy-progress__fill{background:var(--piggy-color-primary);border-radius:8px;height:100%;display:block}.piggy-progress.is-exceeded .piggy-progress__fill{background:var(--piggy-color-danger)}.piggy-progress__excess{color:var(--piggy-color-danger);margin:4px 0 0;font-size:11px;font-weight:600}.piggy-dashed-button{background:var(--piggy-color-primary-softer);border:1px dashed var(--piggy-color-primary-dashed-border);color:var(--piggy-color-primary);font-family:var(--piggy-font-family);justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.piggy-dashed-button--inline{border-radius:var(--piggy-radius-field);padding:9px 14px}.piggy-dashed-button--dropzone{border-radius:var(--piggy-radius-dialog);flex-direction:column;gap:10px;width:100%;padding:36px 16px}.piggy-info-callout{background:var(--piggy-color-primary-softer);border:1px solid var(--piggy-color-primary-border);border-radius:var(--piggy-radius-card);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);padding:12px 14px;font-size:12px}.piggy-info-callout--compact{border-radius:var(--piggy-radius-field);padding:10px 12px}.piggy-section-title{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);margin:0;font-size:14px;font-weight:700}.piggy-toggle{background:0 0;border:0;flex:none;padding:0;display:inline-flex}.piggy-toggle__track{background:var(--piggy-color-primary);border-radius:var(--piggy-radius-pill);box-sizing:border-box;width:38px;height:22px;display:block;position:relative}.piggy-toggle__knob{background:var(--piggy-color-white);border-radius:var(--piggy-radius-circle);width:18px;height:18px;display:block;position:absolute;top:2px;right:2px}.piggy-toggle[aria-checked=false] .piggy-toggle__track{background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border)}.piggy-toggle[aria-checked=false] .piggy-toggle__knob{left:2px;right:auto}.piggy-timeline-event{border-bottom:1px solid var(--piggy-color-glass-divider);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);gap:12px;padding:10px 0;display:flex}.piggy-timeline-event__dot{background:var(--piggy-color-primary);border-radius:var(--piggy-radius-circle);flex:none;width:8px;height:8px;margin-top:5px}.piggy-timeline-event__body{flex:1;min-width:0}.piggy-timeline-event__title{color:var(--piggy-color-text-primary);margin:0;font-size:13px;font-weight:600}.piggy-timeline-event__time{color:var(--piggy-color-text-primary);opacity:.6;margin:2px 0 0;font-size:11px}.piggy-expense-item{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);grid-template-columns:1fr 50px 70px 22px;align-items:center;gap:6px;padding:8px 10px;display:grid}.piggy-expense-item__name{min-width:0;font-size:13px;font-weight:600}.piggy-expense-item__quantity,.piggy-expense-item__price{border-left:1px solid var(--piggy-color-glass-divider);text-align:right;padding-left:6px;font-size:12px}.piggy-expense-item__remove{color:var(--piggy-color-danger);text-align:center;background:0 0;border:0;padding:0;font-size:14px;font-weight:700}.piggy-state-view{text-align:center;justify-items:center;gap:10px;display:grid}.piggy-state-view__title{color:var(--piggy-color-text-primary);margin:0;font-size:15px;font-weight:700}.piggy-state-view__text{color:var(--piggy-color-text-primary);opacity:.6;margin:0;font-size:12px}.glass-dialog-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;background:#0f233852;padding:0 24px}.glass-dialog{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-dialog);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);width:100%;padding:22px 20px}.glass-dialog--centered{text-align:center}.glass-dialog h2{margin:0 0 8px;font-size:15px;font-weight:700}.glass-dialog p{color:var(--piggy-color-text-primary);opacity:.7;margin:0 0 18px;font-size:12px}.glass-dialog form input{background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);width:100%;margin-bottom:14px;padding:11px 14px;font-size:14px;font-weight:700}.glass-dialog-actions{gap:10px;display:flex}.glass-dialog-actions>button{border-radius:var(--piggy-radius-field);font-family:var(--piggy-font-family);flex:1;min-height:48px;padding:12px;font-size:13px;font-weight:700}.glass-dialog-cancel{background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);color:var(--piggy-color-text-primary)}.glass-dialog-confirm{background:var(--piggy-color-primary);color:var(--piggy-color-white);border:0}.glass-dialog-destructive{background:var(--piggy-color-danger);color:var(--piggy-color-white);border:0}.transactions-header__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.transactions-header__actions{flex:none;align-items:center;gap:6px;margin-bottom:6px;display:flex}.transactions-icon-pill{justify-content:center;align-items:center;padding:6px 10px;display:inline-flex}.transactions-filter-bar{scrollbar-width:none;gap:8px;margin-bottom:16px;display:flex;overflow-x:auto}.transactions-filter-bar::-webkit-scrollbar{display:none}.transactions-filter-bar .piggy-filter-pill{white-space:nowrap;flex:none}.transactions-list{background:0 0;border:0;border-radius:0;padding:0;display:block}.transactions-day-heading{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:normal;opacity:.6;text-transform:none;margin:0 0 8px;font-size:12px;font-weight:700}.transactions-list .transactions-day-heading:not(:first-child){margin-top:14px}.transactions-screen .piggy-state-view{margin-top:4px}.transactions-screen .filters-backdrop{background:var(--piggy-color-scrim);-webkit-backdrop-filter:var(--piggy-blur-scrim);backdrop-filter:var(--piggy-blur-scrim);z-index:10;padding:0 24px}.transactions-screen .filters-dialog{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-dialog);box-shadow:var(--piggy-shadow-menu);width:min(100%,420px);padding:22px 20px}.transactions-screen .filters-dialog .section-title{margin-bottom:14px}.transactions-screen .filters-dialog .section-title h2{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:normal;text-transform:none;margin:0;font-size:15px;font-weight:700}.transactions-screen .filters-dialog .filters{gap:12px;display:grid}.transactions-screen .filters-dialog label>span{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:.04em;opacity:.6;text-transform:uppercase;font-size:11px;font-weight:400}.transactions-screen .filters-dialog .icon-button{background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);color:var(--piggy-color-text-primary)}.transactions-screen .filters-dialog .icon-button:hover{background:var(--piggy-color-glass-strong);color:var(--piggy-color-text-primary)}.transactions-screen .filters-dialog .search-field input{background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);width:100%;padding:11px 14px;font-size:14px;font-weight:600}.transactions-screen .filters-dialog .search-field input::placeholder{color:var(--piggy-color-text-secondary)}.transactions-screen .filters-dialog .select-menu-trigger{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);text-align:left;align-items:center;width:100%;padding:12px 14px;font-size:14px;font-weight:600;display:flex}.transactions-screen .filters-dialog .select-menu-trigger span{color:inherit}.transactions-screen .filters-dialog .select-menu-options{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);box-shadow:var(--piggy-shadow-menu);padding:6px}.transactions-screen .filters-dialog .select-menu-options button{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);border-radius:12px;padding:9px 10px;font-size:13px;font-weight:600}.transactions-screen .filters-dialog .select-menu-options button:hover,.transactions-screen .filters-dialog .select-menu-options button.is-selected{background:var(--piggy-color-primary-soft)}body:has(.glass-auth-page){background:var(--piggy-color-page-base)}.glass-auth-page{background:var(--piggy-color-page-base);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:100dvh;padding:calc(28px + env(safe-area-inset-top)) 16px calc(60px + env(safe-area-inset-bottom));place-items:center;display:grid}.glass-auth-shell{background:linear-gradient(160deg, var(--piggy-color-app-gradient-start), var(--piggy-color-app-gradient-end));border-radius:var(--piggy-radius-shell);box-shadow:var(--piggy-shadow-shell);box-sizing:border-box;width:min(100%,380px);min-height:min(760px,100dvh - 88px);display:flex;overflow:hidden}.glass-auth-content{text-align:center;flex-direction:column;flex:1;justify-content:center;padding:40px 22px;display:flex;overflow-y:auto}.glass-auth__brand{margin-bottom:28px}.glass-auth__mark{border-radius:var(--piggy-radius-card);place-items:center;margin:0 auto 14px;font-size:22px;font-weight:800;display:grid}.glass-auth__title{color:var(--piggy-color-text-primary);letter-spacing:normal;margin:0;font-size:20px;font-weight:700}.glass-auth__hint{color:var(--piggy-color-text-primary);opacity:.7;margin:0 0 22px;font-size:13px;line-height:1.5}.glass-auth__error{background:var(--piggy-color-danger-soft);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);margin:0 0 14px;padding:10px 14px;font-size:12px;font-weight:600;line-height:1.5}.glass-auth__cta{gap:10px;width:100%}.glass-auth__cta:disabled{opacity:.75}.glass-auth__cta-icon{flex:none}.split-history{gap:0;margin:0;padding:0;list-style:none;display:grid}.split-history .piggy-timeline-event__title{overflow-wrap:anywhere}.split-history .piggy-timeline-event__time{overflow-wrap:anywhere;flex-wrap:wrap;gap:2px 10px;display:flex}.split-detail-screen{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.split-detail-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.split-detail-screen .split-detail-header .piggy-back-action{padding-bottom:0}.split-detail-header__links{flex:none;align-items:center;gap:12px;display:flex}.split-detail-link{color:var(--piggy-color-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);background:0 0;border:0;align-items:center;padding:0 8px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.split-detail-title{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:normal;margin:14px 0 4px;font-size:22px;font-weight:700}.split-detail-meta{color:var(--piggy-color-text-primary);opacity:.6;margin:0 0 16px;font-size:13px}.split-detail-status{margin-bottom:18px}.split-detail-alert{background:var(--piggy-color-danger-soft);border:1px solid var(--piggy-color-danger-outline);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);margin:0 0 14px;padding:10px 14px;font-size:12px;font-weight:600}.split-detail-alert--notice{background:var(--piggy-color-primary-soft);border-color:var(--piggy-color-primary-border);color:var(--piggy-color-primary)}.split-detail-summary{margin-bottom:14px}.split-detail-note{margin-bottom:14px;font-size:12px}.split-detail-participants{gap:10px;margin-bottom:18px;display:grid}.split-detail-participant{padding:12px 14px}.split-detail-participant__row{align-items:center;gap:12px;display:flex}.split-detail-participant__identity{flex:1;min-width:0;display:block}.split-detail-participant__name{color:var(--piggy-color-text-primary);font-size:13px;font-weight:700;display:block}.split-detail-participant__status{color:var(--piggy-color-primary);font-size:11px;display:block}.split-detail-participant__status--alert{color:var(--piggy-color-danger)}.split-detail-participant__payment{color:var(--piggy-color-text-primary);opacity:.6;font-size:11px;display:block}.split-detail-participant__amount{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;font-size:13px}.split-detail-participant__actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.split-detail-participant__action{border-radius:var(--piggy-radius-action);flex:140px;padding:8px 10px;font-size:12px}.split-detail-participant__action--wide{flex:100%}.split-detail-actions{gap:10px;display:grid}.split-detail-reminder-sent{color:var(--piggy-color-primary);text-align:center;margin:10px 0 0;font-size:12px;font-weight:600}.split-detail-history{margin-top:22px}.split-detail-history>h2{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:normal;text-transform:none;margin:0 0 10px;font-size:14px;font-weight:700}.split-participant-screen{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);background:0 0;border:0;border-radius:0;padding:0}.split-participant-screen .piggy-page-header{margin-bottom:4px}.split-participant-debts{text-decoration:none}.split-participant-meta{opacity:.6;margin:0 0 18px;font-size:13px}.split-participant-error{background:var(--piggy-color-danger-soft);border:1px solid var(--piggy-color-danger-outline);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);margin:0 0 14px;padding:10px 12px;font-size:12px;font-weight:600}.split-participant-message{text-align:center}.split-participant-message__text{margin:0;font-size:13px;font-weight:600}.split-participant-card{text-align:center;margin-bottom:18px}.split-participant-card__list{gap:10px;margin:0;display:grid}.split-participant-card__share,.split-participant-card__row{gap:4px;display:grid}.split-participant-card__label{opacity:.6;font-size:12px}.split-participant-card__amount{margin:0;font-size:28px;font-weight:800}.split-participant-card__value{margin:0;font-size:12px;font-weight:700}.split-participant-card__value--danger{color:var(--piggy-color-danger)}.split-participant-card__value--success{color:var(--piggy-color-text-secondary)}.split-participant-actions{gap:10px;margin-bottom:18px;display:grid}.split-participant-actions:empty{display:none}.split-participant-history .piggy-section-title{margin:0 0 10px}.transaction-detail-screen{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.transaction-detail-screen p{color:var(--piggy-color-text-primary)}.transaction-detail-loading{gap:18px;display:grid}.transaction-detail-loading__identity,.transaction-detail-loading__card{background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);animation:1.4s ease-in-out infinite transaction-detail-pulse;display:block}.transaction-detail-loading__identity{border-radius:var(--piggy-radius-dialog);width:70%;height:128px;margin:0 auto}.transaction-detail-loading__card{border-radius:var(--piggy-radius-dialog);height:148px}@keyframes transaction-detail-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.transaction-detail-loading__identity,.transaction-detail-loading__card{animation:none}}.transaction-detail__identity{text-align:center;flex-direction:column;align-items:center;margin-bottom:24px;display:flex}.transaction-detail-screen .transaction-detail__avatar{margin-bottom:12px;font-size:20px;font-weight:700}.transaction-detail__amount{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;font-size:28px;font-weight:800}.transaction-detail-screen .transaction-detail__meta{color:var(--piggy-color-text-primary);opacity:.6;margin:4px 0 0;font-size:13px}.transaction-detail-screen .transaction-detail__badge{margin-top:8px}.transaction-detail__notice{margin-bottom:14px}.transaction-detail-screen .transaction-detail__card{margin-bottom:18px}.transaction-detail-screen .transaction-detail__split-row .piggy-kv-row__value{color:var(--piggy-color-primary)}.transaction-detail__items{margin-bottom:18px}.transaction-detail__items-header{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.transaction-detail__items-total{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.transaction-detail-screen .transaction-detail__item{margin-bottom:8px}.transaction-detail__item-unit{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;opacity:.6;font-size:11px;display:block}.transaction-detail__attachment{gap:10px;margin-bottom:18px;display:grid}.transaction-detail-screen .transaction-detail__retention{background:var(--piggy-color-glass-soft);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);color:var(--piggy-color-text-primary);margin:0;padding:10px 14px;font-size:12px}.transaction-detail-screen .transaction-detail__error{background:var(--piggy-color-danger-soft);border:1px solid var(--piggy-color-danger-outline);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);margin:0;padding:10px 14px;font-size:12px;font-weight:600}.transaction-detail__actions{gap:10px;display:grid}.transaction-detail__action-pair{gap:10px;display:flex}.transaction-detail__action-pair>.piggy-button{flex:1;min-width:0}.transaction-detail__viewer-scrim{-webkit-backdrop-filter:var(--piggy-blur-scrim);backdrop-filter:var(--piggy-blur-scrim);background:var(--piggy-color-scrim);z-index:10;justify-content:center;align-items:center;padding:0 24px;display:flex;position:fixed;inset:0}.transaction-detail-screen .transaction-detail__viewer{gap:12px;width:100%;max-width:480px;max-height:80vh;display:grid;overflow:auto}.transaction-detail__viewer-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.transaction-detail__viewer-close{color:var(--piggy-color-text-primary);cursor:pointer;font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);min-width:var(--piggy-touch-target);background:0 0;border:0;font-size:18px;font-weight:700;line-height:1}.transaction-detail__viewer-frame,.transaction-detail__viewer-image{background:var(--piggy-color-white);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);width:100%;max-width:100%;display:block}.transaction-detail__viewer-frame{height:60vh}.expense-form-screen{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.expense-form-screen .piggy-page-header{margin-bottom:18px}.expense-form-screen__recognize{min-height:var(--piggy-touch-target);gap:8px;width:100%;margin-bottom:18px}.expense-form-screen__form{display:block}.expense-form-screen__fields{gap:14px;display:grid}.expense-form-screen__field{display:block;position:relative}.expense-form-screen__label{color:var(--piggy-color-text-primary);letter-spacing:.04em;opacity:.6;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.expense-form-screen__input,.expense-form-screen__amount{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);align-items:center;gap:8px;width:100%;padding:12px 14px;font-size:14px;display:flex}.expense-form-screen__note{resize:vertical;align-items:stretch;line-height:1.5;display:block}.expense-form-screen__amount{padding:13px 14px}.expense-form-screen__amount-input{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);background:0 0;border:0;outline:none;flex:1;width:100%;min-width:0;padding:0;font-size:20px;font-weight:700}.expense-form-screen__currency{color:var(--piggy-color-text-primary);opacity:.6;flex:none;font-size:20px;font-weight:700}.expense-form-screen__input::placeholder,.expense-form-screen__amount-input::placeholder{color:var(--piggy-color-text-secondary);opacity:.7}.expense-form-screen__input:focus-visible,.expense-form-screen__amount:focus-within{border-color:var(--piggy-color-primary-border);outline:2px solid var(--piggy-color-primary-border);outline-offset:1px}.expense-form-screen__error{color:var(--piggy-color-danger-dark);margin-top:6px;font-size:12px;font-weight:600;display:block}.expense-form-screen__date-shortcuts{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.expense-form-screen__category-trigger{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);color:var(--piggy-color-text-primary);cursor:pointer;font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);text-align:left;align-items:center;gap:10px;width:100%;padding:11px 14px;display:flex}.expense-form-screen__category-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.expense-form-screen__category-chevron{color:var(--piggy-color-text-primary);opacity:.6;flex:none;transition:transform .15s;transform:rotate(-90deg)}.expense-form-screen__category-trigger.is-open .expense-form-screen__category-chevron{transform:rotate(0)}.expense-form-screen__chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.expense-form-screen__chips .category-chip{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-pill);color:var(--piggy-color-text-primary);cursor:pointer;font-family:var(--piggy-font-family);white-space:nowrap;flex:none;align-items:center;gap:5px;min-height:32px;padding:5px 10px 5px 5px;font-size:11px;font-weight:600;display:inline-flex;position:relative}.expense-form-screen__chips .category-chip:after{content:"";height:var(--piggy-touch-target);width:100%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.expense-form-screen__chips .category-chip.is-active{background:var(--piggy-color-primary);border-color:var(--piggy-color-primary);color:var(--piggy-color-white)}.expense-form-screen__chips .category-chip.is-active .piggy-icon-circle{background:#ffffff47}.expense-form-screen__chips .category-chip.is-active .category-icon{color:var(--piggy-color-white)!important}.expense-form-screen__chips .category-more{color:var(--piggy-color-primary);padding:5px 12px;font-weight:700}.expense-form-screen__menu-backdrop{z-index:4;position:fixed;inset:0}.expense-form-screen__category-menu{z-index:5;top:100%;left:0;right:0}.expense-form-screen__category-tree{gap:2px;display:grid}.expense-form-screen .category-tree-row{align-items:center;gap:0;display:flex}.expense-form-screen .category-tree-spacer{display:none}.expense-form-screen .category-tree-select{border-radius:var(--piggy-radius-control);color:var(--piggy-color-text-primary);cursor:pointer;font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);text-align:left;background:0 0;border:0;flex:1;order:1;align-items:center;gap:10px;min-width:0;padding:9px 10px;font-size:13px;font-weight:700;display:flex}.expense-form-screen .category-tree-select .category-icon{background:var(--piggy-color-primary-icon);border-radius:var(--piggy-radius-circle);flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.expense-form-screen .category-tree-select.is-active{background:var(--piggy-color-primary-soft)}.expense-form-screen .category-tree-select small{color:var(--piggy-color-text-primary);opacity:.6;text-transform:uppercase;font-size:9px;font-weight:700}.expense-form-screen .category-tree-toggle{color:var(--piggy-color-text-primary);cursor:pointer;min-height:var(--piggy-touch-target);width:var(--piggy-touch-target);background:0 0;border:0;flex:none;order:2;justify-content:center;align-items:center;display:flex}.expense-form-screen .category-tree-row.is-child .category-tree-select{opacity:.75;padding-left:40px;font-size:12px;font-weight:600}.expense-form-screen .category-tree-row.is-child .category-tree-select .category-icon{width:18px;height:18px}.expense-form-screen__items{margin-top:20px;display:block}.expense-form-screen__item-list{gap:8px;margin-bottom:10px;display:grid}.expense-form-screen__item{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);grid-template-columns:1fr 50px 70px 22px;align-items:center;gap:6px;padding:8px 10px;display:grid}.expense-form-screen__item-cell{min-width:0;display:block}.expense-form-screen__item-label{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.expense-form-screen__item-cell input{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);background:0 0;border:0;width:100%;font-size:13px;font-weight:600}.expense-form-screen__item-cell input::placeholder{color:var(--piggy-color-text-secondary);opacity:.7;font-weight:400}.expense-form-screen__item-cell--quantity input,.expense-form-screen__item-cell--price input{border-left:1px solid var(--piggy-color-input-divider);text-align:right;padding-left:6px;font-size:12px;font-weight:400}.expense-form-screen__item-remove{color:var(--piggy-color-danger);cursor:pointer;font-family:var(--piggy-font-family);background:0 0;border:0;justify-content:center;align-items:center;width:22px;min-height:32px;font-size:14px;font-weight:700;display:flex;position:relative}.expense-form-screen__item-remove:after{content:"";height:var(--piggy-touch-target);width:34px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.expense-form-screen__item-error{grid-column:1/-1;margin-top:0}.expense-form-screen__items-empty{color:var(--piggy-color-text-primary);opacity:.5;margin:0 0 10px;padding:8px 4px;font-size:12px}.expense-form-screen__items-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.expense-form-screen__items-clear{color:var(--piggy-color-primary);cursor:pointer;font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);background:0 0;border:0;padding:0 4px;font-size:12px;font-weight:700}.expense-form-screen__items-total{color:var(--piggy-color-text-primary);opacity:.6;margin-left:auto;font-size:12px}.expense-form-screen__items-total strong{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;opacity:1}.expense-form-screen__submit{width:100%;margin-top:20px}.categories-screen__add{background:var(--piggy-color-primary);border-radius:var(--piggy-radius-control);box-shadow:var(--piggy-shadow-primary-small);color:var(--piggy-color-white);cursor:pointer;border:0;place-items:center;width:34px;height:34px;display:grid;position:relative}.categories-screen__add:after{content:"";height:var(--piggy-touch-target);width:var(--piggy-touch-target);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.categories-screen__tree{gap:10px;display:grid}.categories-screen .category-tree-card{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);overflow:hidden}.categories-screen .category-tree-card .category-tree-row{align-items:center;gap:12px;padding:12px 14px;display:flex}.categories-screen .category-tree-select{border-radius:var(--piggy-radius-control);color:var(--piggy-color-text-primary);cursor:pointer;font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:12px;min-width:0;padding:0;font-size:13px;font-weight:700;display:flex}.categories-screen .category-tree-select.is-active{color:var(--piggy-color-primary)}.categories-screen .category-tree-select span:not(.category-icon){overflow-wrap:break-word;flex:1;min-width:0}.categories-screen .category-tree-select .category-icon{background:var(--piggy-color-primary-icon);border-radius:var(--piggy-radius-circle);flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.categories-screen .piggy-status-badge{flex:none}.categories-screen .category-tree-amount{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.categories-screen .category-tree-toggle{color:var(--piggy-color-text-primary);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:relative}.categories-screen .category-tree-toggle:after{content:"";height:var(--piggy-touch-target);width:var(--piggy-touch-target);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.categories-screen .category-tree-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.categories-screen .category-tree-spacer{flex:none;width:22px;height:22px}.categories-screen .category-tree-children{gap:8px;padding:0 14px 12px;display:grid}.categories-screen .category-tree-child{background:var(--piggy-color-glass-soft);border-radius:var(--piggy-radius-control);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);text-align:left;border:0;align-items:center;gap:10px;width:100%;padding:8px 10px 8px 40px;display:flex}.categories-screen .category-tree-child--select{cursor:pointer}.categories-screen .category-tree-child-name{color:var(--piggy-color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}.categories-screen .category-tree-child-amount{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;opacity:.7;flex:none;font-size:12px}.categories-screen .category-tree-empty{color:var(--piggy-color-text-primary);opacity:.5;margin:0;padding:8px 10px 8px 40px;font-size:12px}.categories-screen .category-tree-add-child{min-height:var(--piggy-touch-target);margin-left:30px}.category-edit-screen{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.category-edit-screen__title{margin:0 0 18px;font-size:22px;font-weight:700}.category-edit-screen__hero{justify-content:center;margin-bottom:20px;display:flex}.category-edit-screen__form{display:block}.category-edit-screen__fields{gap:14px;display:grid}.category-edit-screen__field{display:block}.category-edit-screen__label{color:var(--piggy-color-text-primary);letter-spacing:.04em;opacity:.6;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.category-edit-screen .select-menu-trigger{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);text-align:left;align-items:center;width:100%;padding:12px 14px;font-size:14px;font-weight:600;display:flex}.category-edit-screen .select-menu-options{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);box-shadow:var(--piggy-shadow-menu);padding:6px}.category-edit-screen .select-menu-options button{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);border-radius:12px;padding:9px 10px;font-size:13px;font-weight:600}.category-edit-screen .select-menu-options button:hover,.category-edit-screen .select-menu-options button.is-selected{background:var(--piggy-color-primary-soft)}.category-edit-screen .select-menu-trigger span{color:inherit}.category-edit-screen__subcategories{margin-top:20px}.category-edit-screen__subcategories .category-edit-screen__label{margin-bottom:8px}.category-edit-screen__subcategory-list{gap:8px;display:grid}.category-edit-screen__subcategory-row{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);align-items:center;gap:10px;padding:10px 12px;display:flex}.category-edit-screen__subcategory-name{color:var(--piggy-color-text-primary);flex:1;font-size:13px;font-weight:600}.category-edit-screen__subcategory-empty{color:var(--piggy-color-text-primary);opacity:.5;margin:0;padding:8px 4px;font-size:12px}.category-edit-screen__submit{width:100%;margin-top:20px}.category-edit-screen__delete{width:100%;margin-top:10px}.category-edit-screen__system-note{color:var(--piggy-color-text-primary);opacity:.5;text-align:center;margin:12px 0 0;font-size:12px}.settings-screen__rows{gap:10px;margin-top:18px;display:grid}.settings-screen__row{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);justify-content:space-between;align-items:center;padding:13px 16px;display:flex}.settings-screen__row-label{color:var(--piggy-color-text-primary);font-size:13px;font-weight:600}.settings-screen__row-value{color:var(--piggy-color-text-primary);opacity:.6;font-size:13px;font-weight:400}.settings-screen__actions{gap:10px;margin-top:22px;display:grid}.settings-screen__actions .piggy-button{width:100%}.recognition-screen__backdrop{background:var(--piggy-color-scrim);-webkit-backdrop-filter:var(--piggy-blur-scrim);backdrop-filter:var(--piggy-blur-scrim);z-index:50;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.recognition-screen{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-dialog);box-shadow:var(--piggy-shadow-shell);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);width:min(100%,420px);max-height:min(920px,100dvh - 40px);padding:20px 18px;overflow-y:auto}.recognition-screen p{color:var(--piggy-color-text-primary)}.recognition-screen__header{margin-bottom:18px}.recognition-screen__header-row{justify-content:space-between;align-items:center;display:flex}.recognition-screen__title{margin:0;font-size:22px;font-weight:700}.recognition-screen__close{border-radius:var(--piggy-radius-circle);color:var(--piggy-color-text-primary);height:var(--piggy-touch-target);width:var(--piggy-touch-target);background:0 0;border:0;justify-content:center;align-items:center;font-size:20px;font-weight:700;line-height:1;display:inline-flex}.recognition-screen__preview{background:var(--piggy-color-glass-soft);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-dialog);justify-content:center;align-items:center;height:160px;margin-bottom:16px;display:flex;overflow:hidden}.recognition-screen__preview img{object-fit:cover;width:100%;height:100%}.recognition-screen__preview-doc{color:var(--piggy-color-primary);opacity:.6;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.recognition-screen__empty{gap:10px;display:grid}.recognition-screen__state-title{margin:0;font-size:15px;font-weight:700}.recognition-screen__hint{color:var(--piggy-color-text-primary);opacity:.6;margin:0 0 4px;font-size:12px}.recognition-screen__empty .piggy-dashed-button--dropzone{margin-bottom:4px}.recognition-screen__empty .piggy-button{gap:8px}.recognition-screen__actions{gap:10px;margin-top:4px;display:grid}.recognition-screen__progress{gap:12px;display:grid}.recognition-screen__progress-track{background:var(--piggy-color-glass-strong);border-radius:8px;height:7px;overflow:hidden}.recognition-screen__progress-track span{background:var(--piggy-color-primary);height:100%;display:block}.recognition-screen__progress-steps{gap:8px;margin:0;padding:0;font-size:12px;font-weight:600;list-style:none;display:grid}.recognition-screen__progress-steps li{color:var(--piggy-color-text-primary);opacity:.5;align-items:center;gap:8px;display:flex}.recognition-screen__progress-steps li.is-complete{opacity:1}.recognition-screen__progress-steps li span[aria-hidden]{background:var(--piggy-color-primary-soft);border-radius:var(--piggy-radius-circle);color:var(--piggy-color-primary);flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;display:inline-flex}.recognition-screen__content{gap:14px;display:grid}.recognition-screen__status{align-items:center;gap:8px;font-size:13px;display:flex}.recognition-screen__status-dot{background:var(--piggy-color-primary);border-radius:var(--piggy-radius-circle);flex:none;width:8px;height:8px}.recognition-screen__status-dot.is-error{background:var(--piggy-color-danger)}.recognition-screen__status-attempt{color:var(--piggy-color-text-primary);opacity:.6}.recognition-screen__error{background:var(--piggy-color-danger-soft);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);margin:0;padding:10px 14px;font-size:12px;font-weight:600}.recognition-screen__error-block{background:var(--piggy-color-danger-soft);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);gap:10px;padding:14px;font-size:12px;display:grid}.recognition-screen__form,.recognition-screen__fields{gap:14px;display:grid}.recognition-screen__field{display:block}.recognition-screen__label{color:var(--piggy-color-text-primary);letter-spacing:.04em;opacity:.6;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.recognition-screen__note{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);resize:vertical;width:100%;min-height:80px;padding:12px 14px;font-size:14px}.recognition-screen__field-error{color:var(--piggy-color-danger);margin-top:4px;font-size:12px;font-weight:600;display:block}.recognition-screen .select-menu-trigger{-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);background:var(--piggy-color-glass);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);text-align:left;align-items:center;width:100%;padding:12px 14px;font-size:14px;font-weight:600;display:flex}.recognition-screen .select-menu-trigger span{color:inherit}.recognition-screen .select-menu-options{background:var(--piggy-color-menu);-webkit-backdrop-filter:var(--piggy-blur-dialog);backdrop-filter:var(--piggy-blur-dialog);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-card);box-shadow:var(--piggy-shadow-menu);padding:6px}.recognition-screen .select-menu-options button{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);border-radius:12px;padding:9px 10px;font-size:13px;font-weight:600}.recognition-screen .select-menu-options button:hover,.recognition-screen .select-menu-options button.is-selected{background:var(--piggy-color-primary-soft)}.recognition-screen__items{gap:10px;display:grid}.recognition-screen__items-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.recognition-screen__items-empty{color:var(--piggy-color-text-primary);opacity:.5;margin:0;font-size:12px}.recognition-screen__item{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);grid-template-columns:1fr 62px 52px 62px 22px;align-items:end;gap:6px;padding:8px 10px;display:grid}.recognition-screen__item-cell{min-width:0;display:block}.recognition-screen__item-label{color:var(--piggy-color-text-primary);opacity:.5;margin-bottom:2px;font-size:10px;display:block}.recognition-screen__item-cell input{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:var(--piggy-touch-target);background:0 0;border:0;width:100%;font-size:13px;font-weight:600}.recognition-screen__item-cell--numeric input{border-left:1px solid var(--piggy-color-input-divider);text-align:right;padding-left:6px;font-size:12px;font-weight:400}.recognition-screen__item-remove{color:var(--piggy-color-danger);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:22px;font-size:14px;font-weight:700;display:flex;position:relative}.recognition-screen__item-remove:after{content:"";height:var(--piggy-touch-target);width:34px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.recognition-screen__notice{color:var(--piggy-color-text-primary);opacity:.5;margin:0;font-size:12px}.recognition-screen__delete{width:100%}.debts-screen{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.debts-screen .debts-screen__header .piggy-page-title--secondary{margin:0 0 16px}.debts-screen .debts-screen__tabs{margin-bottom:18px}.debts-screen .debts-screen__error{color:var(--piggy-color-danger);margin:0 0 14px;font-size:13px;font-weight:600}.debts-screen .debts-screen__empty{text-align:center}.debts-screen .debts-screen__list{display:grid}.debts-screen .piggy-transaction-row.debts-row{text-align:left}.debts-screen .piggy-transaction-row.debts-row--closed{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--piggy-color-glass-closed-row);opacity:.7}.debts-screen .debts-row__amount--owed{color:var(--piggy-color-primary)}.split-wizard-screen{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family)}.split-wizard-title{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:normal;margin:0 0 6px;font-size:22px;font-weight:700}.split-wizard-hint{color:var(--piggy-color-text-primary);opacity:.6;margin:0 0 18px;font-size:12px}.split-wizard-method{margin-bottom:18px}.split-wizard-participants{gap:10px;margin-bottom:16px;display:grid}.split-wizard-row{align-items:center;gap:12px;padding:11px 14px;display:flex}.split-wizard-row__label{color:var(--piggy-color-text-primary);flex:1;font-size:13px;font-weight:600}.split-wizard-row__name-field{flex:1;min-width:0}.split-wizard-row__name-field input{color:var(--piggy-color-text-primary);min-height:var(--piggy-touch-target);background:0 0;border:0;width:100%;padding:0;font-family:inherit;font-size:13px;font-weight:600}.split-wizard-row__name-field input:focus-visible{outline:2px solid var(--piggy-color-primary);outline-offset:2px}.split-wizard-row__amount{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.split-wizard-row__amount-field{flex:none}.split-wizard-row__amount-field input{color:var(--piggy-color-text-primary);font-variant-numeric:tabular-nums;min-height:var(--piggy-touch-target);text-align:right;background:0 0;border:0;width:70px;padding:0;font-family:inherit;font-size:13px;font-weight:700}.split-wizard-row__amount-field input:focus-visible{outline:2px solid var(--piggy-color-primary);outline-offset:2px}.split-wizard-row__remove{color:var(--piggy-color-danger);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:18px;font-weight:700;display:inline-flex;position:relative}.split-wizard-row__remove:after{content:"";height:var(--piggy-touch-target);width:100%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.split-wizard-row__remove:disabled{cursor:not-allowed;opacity:.35}.split-wizard-add{justify-content:center;width:100%}.split-wizard-contacts{margin-bottom:18px}.split-wizard-contacts__title{color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);letter-spacing:normal;text-transform:none;margin:0 0 4px;font-size:14px;font-weight:700}.split-wizard-contacts__hint{color:var(--piggy-color-text-primary);opacity:.6;margin:0 0 10px;font-size:12px}.split-wizard-contacts__search{margin-bottom:10px;display:block}.split-wizard-contacts__search input{background:var(--piggy-color-glass);-webkit-backdrop-filter:var(--piggy-blur-row);backdrop-filter:var(--piggy-blur-row);border:1px solid var(--piggy-color-glass-border);border-radius:var(--piggy-radius-field);color:var(--piggy-color-text-primary);min-height:var(--piggy-touch-target);width:100%;padding:0 14px;font-family:inherit;font-size:13px}.split-wizard-contacts__list{flex-wrap:wrap;gap:8px;display:flex}.split-wizard-contacts__item{background:var(--piggy-color-primary-soft);border:1px solid var(--piggy-color-primary-border);border-radius:var(--piggy-radius-pill);color:var(--piggy-color-primary);cursor:pointer;min-height:var(--piggy-touch-target);padding:7px 14px;font-family:inherit;font-size:12px;font-weight:700}.split-wizard-contacts__item:disabled{cursor:not-allowed;opacity:.4}.split-wizard-allocation{color:var(--piggy-color-text-primary);opacity:.6;margin:0 0 18px;font-size:12px}.split-wizard-allocation--exceeded{color:var(--piggy-color-danger);opacity:1;font-weight:700}.split-wizard-alert{background:var(--piggy-color-danger-soft);border:1px solid var(--piggy-color-danger-outline);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);margin:0 0 14px;padding:10px 14px;font-size:12px;font-weight:600}.split-wizard-actions{gap:10px;display:grid}body:has(.invitation-claim-page){background:var(--piggy-color-page-base)}.invitation-claim-page{background:var(--piggy-color-page-base);box-sizing:border-box;color:var(--piggy-color-text-primary);font-family:var(--piggy-font-family);min-height:100dvh;padding:calc(28px + env(safe-area-inset-top)) 16px calc(60px + env(safe-area-inset-bottom));place-items:center;display:grid}.invitation-claim-shell{background:linear-gradient(160deg, var(--piggy-color-app-gradient-start), var(--piggy-color-app-gradient-end));border-radius:var(--piggy-radius-shell);box-shadow:var(--piggy-shadow-shell);box-sizing:border-box;width:min(100%,380px);min-height:min(760px,100dvh - 88px);display:flex;overflow:hidden}.invitation-claim-content{text-align:center;flex-direction:column;flex:1;justify-content:center;padding:40px 22px;display:flex;overflow-y:auto}.invitation-claim__brand{margin-bottom:28px}.invitation-claim__mark{border-radius:var(--piggy-radius-card);place-items:center;margin:0 auto 14px;font-size:22px;font-weight:800;display:grid}.invitation-claim__title{color:var(--piggy-color-text-primary);letter-spacing:normal;margin:0;font-size:20px;font-weight:700}.invitation-claim__status{color:var(--piggy-color-text-primary);opacity:.7;margin:22px 0 0;font-size:13px;font-weight:600;line-height:1.5}.invitation-claim__status--error{background:var(--piggy-color-danger-soft);border-radius:var(--piggy-radius-field);color:var(--piggy-color-danger-dark);opacity:1;padding:10px 14px}
