*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--space-3xs:clamp(.3125rem,.3125rem + 0vw,.3125rem);--space-2xs:clamp(.5625rem,.5369rem + .1136vw,.625rem);--space-xs:clamp(.875rem,.8494rem + .1136vw,.9375rem);--space-s:clamp(1.125rem,1.0739rem + .2273vw,1.25rem);--space-m:clamp(1.6875rem,1.6108rem + .3409vw,1.875rem);--space-l:clamp(2.25rem,2.1477rem + .4545vw,2.5rem);--space-xl:clamp(3.375rem,3.2216rem + .6818vw,3.75rem);--space-2xl:clamp(4.5rem,4.2955rem + .9091vw,5rem);--space-3xl:clamp(6.75rem,6.4432rem + 1.3636vw,7.5rem);--space-3xs-2xs:clamp(.3125rem,.1847rem + .5682vw,.625rem);--space-2xs-xs:clamp(.5625rem,.4091rem + .6818vw,.9375rem);--space-xs-s:clamp(.875rem,.7216rem + .6818vw,1.25rem);--space-s-m:clamp(1.125rem,.8182rem + 1.3636vw,1.875rem);--space-m-l:clamp(1.6875rem,1.3551rem + 1.4773vw,2.5rem);--space-l-xl:clamp(2.25rem,1.6364rem + 2.7273vw,3.75rem);--space-xl-2xl:clamp(3.375rem,2.7102rem + 2.9545vw,5rem);--space-2xl-3xl:clamp(4.5rem,3.2727rem + 5.4545vw,7.5rem);--space-s-l:clamp(1.125rem,.5625rem + 2.5vw,2.5rem);--space-inline-compact:var(--space-3xs-2xs);--space-inline-cozy:var(--space-2xs-xs);--space-inline-comfortable:var(--space-xs-s);--space-inline-roomy:var(--space-s-m);--space-inline-generous:var(--space-m-l);--space-stack-tight:var(--space-3xs-2xs);--space-stack-compact:var(--space-2xs-xs);--space-stack-cozy:var(--space-xs-s);--space-stack-spacious:var(--space-s-m);--space-stack-generous:var(--space-m-l);--surface-padding-sm:var(--space-2xs-xs);--surface-padding-md:var(--space-xs-s);--surface-padding-lg:var(--space-s-m);--bg-primary:#191919;--bg-secondary:#222;--bg-tertiary:#2a2a2a;--bg-inset:#1a1a1a;--text-primary:#ececec;--text-secondary:#a0a0a0;--text-muted:#666;--border-color:#ffffff14;--border-emphasis:#ffffff24;--border-focus:#d4a57480;--accent-primary:#d4a574;--accent-hover:#e0b88a;--accent-subtle:#d4a5741f;--accent-secondary:#d4a574;--positive:#3ecf8e;--positive-subtle:#3ecf8e1a;--negative:#f87171;--negative-subtle:#f871711a;--warning:#fbbf24;--warning-subtle:#fbbf241a;--error-color:var(--negative);--success-color:var(--positive);--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--ease-out:cubic-bezier(.16,1,.3,1);--duration-fast:.12s;--duration-normal:.2s;--sidebar-width:240px;--sidebar-collapsed:60px;--content-max-width:860px;--bottomnav-height:56px;--safe-top:env(safe-area-inset-top);--safe-right:env(safe-area-inset-right);--safe-bottom:env(safe-area-inset-bottom);--safe-left:env(safe-area-inset-left)}html{scroll-behavior:smooth;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body{color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.55}::selection{color:var(--text-primary);background:#d4a5744d}
.app-shell{min-height:100dvh;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-main-footer{padding:.75rem 1rem calc(.75rem + max(var(--safe-bottom,0px),0px));justify-content:center;align-items:center;display:flex}.app-main-version{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:color var(--duration-fast)ease;opacity:.5;background:0 0;border:none;border-radius:999px;padding:.2rem .5rem;font-size:.68rem}.app-main-version:hover{color:var(--accent-primary);opacity:1}@media (min-width:769px){.app-main-footer{display:none}}main{padding:var(--surface-padding-lg);padding-left:max(var(--surface-padding-lg),env(safe-area-inset-left));padding-right:max(var(--surface-padding-lg),env(safe-area-inset-right));flex-direction:column;flex:1;display:flex}@media (max-width:768px){main{padding:var(--surface-padding-sm);padding-top:max(var(--surface-padding-sm),env(safe-area-inset-top));padding-bottom:calc(var(--bottomnav-height) + max(1rem,var(--safe-bottom)));overflow-x:hidden}}.container{max-width:var(--content-max-width);width:100%;margin:0 auto}
.sidebar{width:var(--sidebar-width);background:var(--bg-primary);border-right:1px solid var(--border-color);height:100dvh;padding-top:var(--safe-top);z-index:100;transition:width var(--duration-normal)var(--ease-out);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.sidebar-brand{padding:var(--space-m)var(--space-s);align-items:center;display:flex}.sidebar-brand a{color:var(--text-primary);letter-spacing:-.02em;font-size:1.25rem;font-weight:700;text-decoration:none}.sidebar-nav{padding:var(--space-xs)var(--space-2xs);flex-direction:column;flex:1;gap:2px;display:flex}.sidebar-link{align-items:center;gap:var(--space-2xs);padding:var(--space-2xs)var(--space-xs);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--duration-fast)ease;cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-size:.9rem;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover{background:var(--bg-secondary);color:var(--text-primary)}.sidebar-link.active{background:var(--accent-subtle);color:var(--accent-primary)}.sidebar-link :is(iconify-icon,svg){text-align:center;flex-shrink:0;width:20px;font-size:1.2rem}.sidebar-spacer{flex:1}.sidebar-footer{padding:var(--space-xs)var(--space-2xs);border-top:1px solid var(--border-color);flex-direction:column;gap:4px;display:flex}.version-trigger{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:var(--space-3xs)var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--duration-fast)ease,background var(--duration-fast)ease;background:0 0;border:none;font-size:.72rem}.version-trigger:hover{color:var(--accent-primary);background:var(--bg-secondary)}.sidebar-user{align-items:center;gap:var(--space-2xs);padding:var(--space-2xs)var(--space-xs);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast)ease;color:var(--text-primary);text-align:left;background:0 0;border:none;width:100%;display:flex}.sidebar-user:hover{background:var(--bg-secondary)}.sidebar-user .username{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:500;overflow:hidden}.sidebar-user .user-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}@media (max-width:768px){.sidebar{display:none}}
.bottom-nav{height:calc(var(--bottomnav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--bg-secondary);border-top:1px solid var(--border-color);z-index:1000;display:none;position:fixed;bottom:0;left:0;right:0}.bottom-version-trigger{bottom:max(var(--safe-bottom,0px),.25rem);border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary)88%,transparent);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:color var(--duration-fast)ease,border-color var(--duration-fast)ease;border-radius:999px;padding:.2rem .55rem;font-size:.68rem;position:absolute;right:.6rem}.bottom-version-trigger:hover{color:var(--accent-primary);border-color:var(--border-emphasis)}.bottom-nav-items{height:var(--bottomnav-height);align-items:stretch;display:flex}.bottom-nav-item{color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast)ease;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.65rem;font-weight:500;text-decoration:none;display:flex}.bottom-nav-item :is(iconify-icon,svg){font-size:1.35rem}.bottom-nav-item.active{color:var(--accent-primary)}.bottom-nav-item:active{color:var(--text-primary)}@media (max-width:768px){.bottom-nav{display:block}}
.progress-bar-container{z-index:9999;pointer-events:none;height:2px;position:fixed;top:0;left:0;right:0}.progress-bar{background:var(--accent-primary);border-radius:0 1px 1px 0;width:30%;height:100%;animation:1.5s ease-in-out infinite progressIndeterminate}@keyframes progressIndeterminate{0%{width:30%;transform:translate(-100%)}50%{width:60%}to{width:30%;transform:translate(400%)}}.progress-bar-container[aria-hidden=true]{opacity:0;transition:opacity .3s}.global-loading-overlay{display:none}.page-loading{color:var(--text-secondary);justify-content:center;align-items:center;gap:.75rem;padding:3rem;display:flex}.loading-spinner{border:2px solid var(--border-emphasis);border-top-color:var(--accent-primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
.card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--surface-padding-md);border:1px solid var(--border-color);transition:border-color var(--duration-fast)ease}@media (min-width:769px){.card{padding:var(--surface-padding-lg)}}
.btn{border-radius:var(--radius-md);cursor:pointer;touch-action:manipulation;min-height:36px;transition:all var(--duration-fast)ease;color:var(--text-primary);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.4em;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:not(:disabled):active{transform:scale(.98)}.btn-primary,.btn-auth{background:var(--accent-primary);color:#191919;border-color:#0000;font-weight:600}.btn-primary:not(:disabled):hover,.btn-auth:not(:disabled):hover{background:var(--accent-hover)}.btn-secondary{border-color:var(--border-emphasis);color:var(--text-primary);background:0 0}.btn-secondary:not(:disabled):hover{background:var(--bg-secondary);border-color:var(--accent-primary);color:var(--accent-primary)}.btn-danger{background:var(--negative);color:#fff;border-color:#0000}.btn-danger:not(:disabled):hover{background:#ef4444}.btn-warning{background:var(--warning);color:#191919;border-color:#0000}.btn-warning:not(:disabled):hover{background:#f59e0b}.btn-success{background:var(--positive);color:#191919;border-color:#0000}.btn-success:not(:disabled):hover{background:#34d399}.btn-lg{border-radius:var(--radius-lg);min-height:44px;padding:.625rem 1.25rem;font-size:1rem}.btn-sm{min-height:30px;padding:.375rem .75rem;font-size:.8rem}.btn-xs{border-radius:var(--radius-xs);min-height:24px;padding:.25rem .5rem;font-size:.7rem}.btn-jumbo{width:100%;min-height:44px;font-size:.95rem;font-weight:600}.btn-icon{cursor:pointer;border:none;border-radius:50%;gap:0;width:2rem;height:2rem;min-height:0;padding:0;font-size:1.1rem;line-height:1}.btn-icon span,.btn-icon svg,.btn-icon iconify-icon{pointer-events:none}.btn-text{cursor:pointer;min-height:0;color:var(--accent-primary);background:0 0;border:none;padding:0;font-weight:500;display:inline}.btn-text:hover{color:var(--accent-hover)}.btn.small{min-height:28px;padding:.3rem .75rem;font-size:.8rem}@media (hover:none) and (pointer:coarse){.btn{min-height:44px}.btn-icon{width:2.25rem;height:2.25rem}}
.form-group+.form-group{margin-block-start:var(--space-stack-spacious)}.form-label,.form-group label{color:var(--text-secondary);letter-spacing:.01em;margin-bottom:.375rem;font-size:.8rem;font-weight:500;display:block}.form-input,.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border-emphasis);border-radius:var(--radius-md);background:var(--bg-inset);width:100%;color:var(--text-primary);min-height:40px;transition:border-color var(--duration-fast)ease;padding:.5rem .75rem;font-family:inherit;font-size:.95rem}.form-input::placeholder,.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-input:focus,.form-group :is(textarea,select,input:not([type=checkbox],[type=radio])):focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--border-focus);outline:none}.form-group+.btn{margin-block-start:var(--space-stack-tight)}.input-group{display:flex}[dir=ltr] .input-group :is(.form-input,input,select):not(:first-child){border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}[dir=ltr] .input-group :is(.form-input,input,select):not(:last-child){border-right-color:var(--border-color);border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .input-group :is(.form-input,input,select):not(:first-child){border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .input-group :is(.form-input,input,select):not(:last-child){border-left-color:var(--border-color);border-top-left-radius:0;border-bottom-left-radius:0}.input-group .input-auto{width:auto}label.btn-secondary:has(input:checked){background:var(--accent-subtle);border-color:var(--accent-primary)}.form-textarea{resize:vertical;min-height:100px}.form-group .hint{margin-top:var(--space-3xs);color:var(--text-muted);font-size:.8rem;display:block}.form-group .hint strong{color:var(--text-primary)}.form-group .split-info{margin-top:var(--space-stack-tight);padding:var(--space-inline-compact);background:var(--accent-subtle);border-radius:var(--radius-md);color:var(--accent-primary);border-left:3px solid var(--accent-primary);font-size:.8rem;display:block}.form-actions{gap:var(--space-inline-comfortable);margin-top:var(--space-inline-generous);display:flex}@media (hover:none) and (pointer:coarse){.form-input,.form-group input,.form-group textarea{font-size:16px}}
.code-input-container{gap:var(--space-inline-cozy);margin:var(--space-stack-tight)auto 0;justify-content:center;width:min(100%,24rem);display:flex}.form-group .code-input-field{text-align:center;text-transform:uppercase;border:1px solid var(--border-emphasis);border-radius:var(--radius-md);background:var(--bg-inset);min-width:52px;max-width:72px;height:3.25rem;color:var(--text-primary);-webkit-text-fill-color:var(--text-primary);letter-spacing:.08em;caret-color:var(--accent-primary);transition:border-color var(--duration-fast)ease;outline:none;flex:52px;padding:.25rem 0;font-size:clamp(1.1rem,5vw,1.35rem);font-weight:600;line-height:1.25}.code-input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--border-focus)}.code-input-field:disabled{opacity:.5;cursor:not-allowed}@media (max-width:520px){.code-input-container{gap:var(--space-inline-compact);width:min(100%,20rem)}.form-group .code-input-field{flex:46px;min-width:46px;height:2.8rem;font-size:clamp(1rem,8vw,1.2rem)}}
.validation-message{margin-top:var(--space-stack-compact);border-radius:var(--radius-md);text-align:center;padding:.5rem .75rem;font-size:.85rem;font-weight:500}.validation-validating{color:var(--accent-primary);background:#d4a57414;border:1px solid #d4a57433}.validation-valid{background:var(--positive-subtle);color:var(--positive);border:1px solid #3ecf8e33}.validation-expired,.validation-invalid{background:var(--negative-subtle);color:var(--negative);border:1px solid #f8717133}.validation-text-small{margin-bottom:var(--space-stack-tight);font-size:.75rem;font-weight:500}.validation-text-valid{color:var(--positive)}.validation-text-invalid,.validation-text-expired{color:var(--negative)}.validation-text-validating{color:var(--text-muted)}.validation-spinner{animation:1.5s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}
.btn.checker{gap:var(--space-inline-compact);margin:unset;color:unset;justify-content:flex-start;min-height:18px;padding:.35rem .55rem;display:flex}.btn.checker input{align-self:center;width:1em;height:1em}.btn.checker :is(iconify-icon,svg){opacity:.45;transition:opacity var(--duration-fast)ease;font-size:.95rem;inset-block-end:-.15em;inset-inline-end:-.1em}.btn.checker:has(input:checked) :is(iconify-icon,svg){opacity:.85}.category-options-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;width:100%;display:grid}.category-options-grid .btn.checker{gap:.35rem;font-size:.8rem}.category-options-grid .btn.checker span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.page-header{margin-bottom:var(--space-stack-cozy);padding-bottom:var(--space-stack-compact);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:var(--space-inline-cozy);flex-wrap:wrap;display:flex}.page-header h1{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:600}.page-header .entity-info{margin-inline-end:auto;line-height:1.1}.page-header .entity-info .subtitle{color:var(--text-muted);font-size:.8em}.page-header .actions{align-items:center;gap:.5rem;margin-inline-start:auto;display:flex}.value-with-action{align-items:center;gap:.5em;display:flex}.value-with-action .btn-text{transition:opacity var(--duration-fast)ease}.value-with-action:not(:hover) .btn-text{opacity:.2}@media (max-width:768px){.page-header h1{font-size:1.25rem}.page-header .actions{flex-wrap:wrap;gap:.4rem}}
.dashboard-container{max-width:var(--content-max-width);width:min(100%,var(--content-max-width));gap:var(--space-m);flex-direction:column;margin-block:0;margin-inline:auto;display:flex}.dashboard-container .page-header{border:none;margin-bottom:0;padding-bottom:0}.dashboard-title{letter-spacing:-.02em;font-size:1.5rem;font-weight:600}.stats-overview{gap:var(--space-s);background:0 0;border:none;padding:0;display:flex}.stats-grid{gap:var(--space-s);width:100%;display:flex}.stat-item{padding:var(--space-xs)var(--space-s);border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-color);flex-direction:column;flex:1;gap:2px;display:flex}.stat-item.debt{border-color:#f8717126}.stat-item.credit{border-color:#3ecf8e26}.stat-value{font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:600}.stat-item.debt .stat-value{color:var(--negative)}.stat-item.credit .stat-value{color:var(--positive)}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:500}@media (max-width:768px){.stats-grid{gap:var(--space-2xs)}.stat-item{padding:var(--space-2xs)var(--space-xs)}.stat-value{font-size:.9rem}.stat-label{font-size:.6rem}}.shared-balances-grid{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--border-color);flex-direction:column;gap:1px;display:flex;overflow:hidden}a.shared-balance{text-decoration:none}.shared-balance.card{background:var(--bg-secondary);padding:var(--space-xs)var(--space-m);cursor:pointer;align-items:center;gap:var(--space-s);transition:background var(--duration-fast)ease;border:none;border-radius:0;grid-template-columns:minmax(0,1fr);display:grid;position:relative}.shared-balance.card:hover{background:var(--bg-tertiary)}.shared-balance.card .card-header{min-width:0;padding-right:calc(var(--space-s) + 1.9rem);flex:1;margin:0}.shared-balance.card .debt-indicator-wrapper{flex:none;justify-self:stretch;width:100%;min-width:0;max-width:100%}.shared-balance.card .card-header h3{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.5rem;min-width:0;margin:0;font-size:.95rem;font-weight:600;display:flex;overflow:hidden}.shared-balance.card .card-header h3>span:first-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.shared-balance.card .card-header small{color:var(--text-muted);margin-top:.2rem;font-size:.72rem;line-height:1.25;display:block}@media (max-width:768px){.shared-balance.card{align-items:stretch;gap:var(--space-xs);grid-template-columns:1fr}.shared-balance.card .card-header{padding-right:calc(var(--space-xs) + 1.7rem)}.shared-balance.card .card-header h3{gap:.35rem;font-size:.9rem}.shared-balance.card .card-header small{font-size:.68rem}.shared-balance.card .debt-indicator-wrapper{flex:auto;width:100%;min-width:0;max-width:100%}}.shared-balance.card .other-user{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.8rem;overflow:hidden}.shared-balance.card .balance-info{text-align:right;background:0 0;border:none;flex-direction:column;flex-shrink:0;align-items:flex-end;padding:0;display:flex}.shared-balance.card .balance-info .label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.65rem}.shared-balance.card .balance-info .amount{font-variant-numeric:tabular-nums;font-size:1rem;font-weight:600}.balance-info.balance-owe .amount{color:var(--negative)}.balance-info.balance-owed .amount{color:var(--positive)}.balance-info.balance-even .amount{color:var(--text-muted)}.shared-balance.card .card-footer{display:none}.shared-balance.card .card-footer small{color:var(--text-muted);font-size:.7rem}.member-count{color:var(--text-muted);background:var(--bg-tertiary);border-radius:999px;flex-shrink:0;padding:.1rem .35rem;font-size:.64rem}.member-count.solo{background:#64646426}.shared-balance.single-member{opacity:.6}.shared-balance.single-member:hover{opacity:.9}.single-member-toggle{margin-top:var(--space-s);justify-content:center;display:flex}.single-member-toggle button{color:var(--text-muted);border:1px solid var(--border-color);transition:all var(--duration-fast)ease;background:0 0;font-size:.8rem}.single-member-toggle button:hover{color:var(--text-primary);border-color:var(--border-emphasis)}.favorite-star{top:var(--space-xs);right:var(--space-xs);cursor:pointer;z-index:10;width:28px;height:28px;color:var(--text-muted);transition:color var(--duration-fast)ease;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;transform:none}.favorite-star:hover{color:var(--warning)}.favorite-star:disabled{opacity:.4;cursor:not-allowed}.favorite-star.favorited{color:var(--warning)}.star-icon{justify-content:center;align-items:center;display:flex}.star-svg{transition:transform var(--duration-normal)var(--ease-out)}.star-svg.outline{color:inherit}.star-svg.filled{color:var(--warning)}.star-path{stroke-linejoin:round;stroke-linecap:round}.delete-group-button{top:var(--space-xs);right:calc(var(--space-xs) + 32px);cursor:pointer;z-index:10;width:28px;height:28px;color:var(--text-muted);transition:color var(--duration-fast)ease;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;transform:none}.delete-group-button:hover{color:var(--negative)}.delete-group-button:disabled{opacity:.4;cursor:not-allowed}.trash-icon{justify-content:center;align-items:center;display:flex}.trash-svg{transition:transform var(--duration-fast)ease}.no-data{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;min-height:50vh;padding:4rem 1rem;display:flex}.no-data h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.no-data p{color:var(--text-secondary);max-width:400px;margin:0 0 1.5rem;line-height:1.6}.empty-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.dashboard-empty{min-height:50vh}.dashboard-empty h3{font-size:1.25rem}.dashboard-empty p{font-size:.95rem}@media (max-width:768px){.empty-actions{flex-direction:column;width:100%;max-width:280px}}
.user-avatar{width:var(--size,32px);height:var(--size,32px);font-weight:600;font-size:calc(var(--size,32px)*.4);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.user-avatar.-initials{background:var(--bg-tertiary);color:var(--accent-primary)}
.debt-indicator-wrapper{padding:var(--space-s);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);width:100%}.debt-overview{justify-content:space-between;align-items:center;gap:var(--space-inline-comfortable);width:100%;display:flex}.user-section{flex-direction:column;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.user-avatar-container{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:.375rem;display:flex}.user-avatar-container.in-debt{background:var(--negative-subtle);border:1.5px solid #f8717140}.user-avatar-container.in-credit{background:var(--positive-subtle);border:1.5px solid #3ecf8e40}.user-name{color:var(--text-primary);text-align:center;word-wrap:break-word;max-width:100px;font-size:.85rem;font-weight:500}.user-section .user-avatar-container.in-credit+.user-name{color:var(--positive)}.user-section .user-avatar-container.in-debt+.user-name{color:var(--negative)}.debt-line-container{flex-direction:column;flex:1;align-items:stretch;gap:.75rem;min-width:120px;display:flex}.debt-line-container:not(:has(.settled-indicator)){margin-block-start:1.5rem}.debt-line{background:var(--bg-tertiary);border-radius:3px;width:100%;height:6px;position:relative;overflow:hidden}.center-marker{background:var(--text-muted);z-index:2;border-radius:1px;width:2px;height:10px;position:absolute;top:-2px;left:50%;transform:translate(-50%)}.settled-indicator{background:var(--positive);color:#191919;z-index:2;border-radius:50%;justify-content:center;place-self:center;align-items:center;width:24px;height:24px;font-size:.8rem;font-weight:700;display:flex}.amount-display{color:var(--text-secondary);text-align:center;align-items:center;font-size:.85rem;font-weight:500;display:flex}.amount-display .badge{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);padding:.35rem .75rem}.amount-display.debt{color:var(--negative)}.amount-display.credit{color:var(--positive)}.amount-display .bar{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;flex:1;height:.75em;display:flex}.amount-display .bar.credit{flex-direction:row-reverse}:is(.amount-display.debt .bar.debt,.amount-display.credit .bar.credit):before{content:" ";width:calc(var(--amount)/var(--max-amount)*100%);border-radius:inherit;height:100%;display:block}.amount-display .bar:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.amount-display .bar:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.amount-display .bar.credit:before{background:var(--positive)}.amount-display .bar.debt:before{background:var(--negative)}.amount-display.primary-amount{font-size:1rem;font-weight:600}.amount-display:not(.primary-amount){opacity:.7;margin:0 1.5rem}.amount-display:not(.primary-amount) .badge{background:var(--bg-inset);padding:.25rem .5rem}@media (max-width:768px){.debt-overview{grid-template-columns:repeat(var(--user-count),minmax(70px,1fr));gap:.5rem;display:grid}.user-section{order:1;gap:.4rem;min-width:70px}.debt-line-container{grid-column:1/span var(--user-count);order:2;place-self:center;width:60vw}.user-name{font-size:.75rem}.debt-line{height:5px}}
.group-balance-summary{text-align:center;width:100%;padding:var(--space-m);flex-direction:column;align-items:center;gap:.5rem;display:flex}.group-balance-summary .group-balance-title{justify-content:center;align-items:center;gap:.5rem;width:100%;min-width:0;display:flex}.group-balance-summary .group-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);font-size:.95rem;font-weight:600;overflow:hidden}.group-balance-summary .balance-display{align-self:stretch}.group-balance-summary .balance-amount{flex-direction:column;align-items:center;display:flex}.group-balance-summary .amount{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600}.group-balance-summary .amount.debt{color:var(--negative)}.group-balance-summary .amount.credit{color:var(--positive)}.group-balance-summary .balance-description{color:var(--text-muted);font-size:.8rem}.group-balance-summary .member-preview{color:var(--text-secondary);font-size:.85rem}.group-balance-summary .member-name{font-weight:500}.group-balance-summary .more-members{color:var(--text-muted);font-style:italic}.group-details-card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--space-m);margin:var(--space-m)0;border:1px solid var(--border-color)}.group-details-card .group-header{margin-bottom:var(--space-s);padding-bottom:var(--space-xs);border-bottom:1px solid var(--border-color)}.group-details-card .group-header h3{color:var(--text-primary);margin:0}.members-list{margin-bottom:var(--space-m);flex-direction:column;gap:.5rem;display:flex}.member-item{background:var(--bg-tertiary);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.member-info{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.member-avatar,.member-avatar-placeholder{border-radius:50%;flex-shrink:0;width:28px;height:28px}.member-avatar{object-fit:cover}.member-avatar-placeholder{background:var(--bg-tertiary);color:var(--accent-primary);justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.member-name{color:var(--text-primary);font-size:.9rem;font-weight:500}.member-details{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.member-balance{font-size:.75rem;font-weight:500}.member-balance.debt{color:var(--negative)}.member-balance.credit{color:var(--positive)}.member-balance.settled{color:var(--text-muted);font-style:italic}.you-badge{color:var(--accent-primary);font-size:.65rem;font-weight:600}.bank-available-badge{opacity:.7;margin-left:.2rem;font-size:.65rem}.settlement-note{background:var(--accent-subtle);border-radius:var(--radius-sm);border-left:2px solid var(--accent-primary);margin-top:.375rem;padding:.5rem .75rem;font-size:.85rem}.balance-display{flex-direction:column;align-items:center;gap:.375rem;display:flex}.balance-amount{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600}.balance-amount.debt{color:var(--negative)}.balance-amount.credit{color:var(--positive)}.balance-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.split-preview{background:var(--positive-subtle);border-radius:var(--radius-sm);border:1px solid #3ecf8e26;margin-top:.375rem;padding:.5rem}.split-info{color:var(--text-secondary);font-size:.8rem;display:block}.split-options,.who-paid-section{flex-direction:column;display:flex}.who-paid-section{padding:var(--space-s);background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-top:var(--space-s)}.who-paid-section label{color:var(--text-secondary);margin-bottom:.375rem;font-size:.8rem;display:block}
body:has(.modal-overlay:not([aria-hidden=true])){overflow:hidden}.modal-overlay{--transition-duration:.15s;--modal-inline-padding:var(--space-inline-generous);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;padding:var(--space-stack-generous);transition:opacity var(--transition-duration)ease;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-overlay[aria-hidden=true]{opacity:0;pointer-events:none;visibility:hidden}.modal{--space:var(--space-s);background:var(--bg-secondary);border-radius:var(--radius-xl);width:min(520px,calc(100vw - 2*var(--modal-inline-padding)));border:1px solid var(--border-color);max-height:85vh;transition:transform var(--transition-duration)ease,opacity var(--transition-duration)ease;flex-direction:column;margin-inline:auto;display:flex;position:relative;overflow:hidden}.modal-handle{background:var(--border-emphasis);cursor:grab;border-radius:2px;flex-shrink:0;width:32px;height:3px;margin:8px auto 4px;display:none;position:relative}.modal-handle:before{content:"";cursor:grab;width:100vw;height:40px;position:absolute;top:-16px;left:50%;transform:translate(-50%)}.modal-handle:active{cursor:grabbing;background:var(--text-muted)}@media (max-width:768px){.modal-handle{display:block}.modal-header{cursor:grab}.modal-header:active{cursor:grabbing}}.modal-overlay[aria-hidden=true] .modal{transform:translateY(var(--space-s));opacity:0}.modal-content{padding:calc(var(--space)/2)var(--space);-webkit-overflow-scrolling:touch;flex:auto;overflow:hidden auto}.modal-content:last-child{padding-block-end:var(--space)}.modal-header{padding:var(--space)var(--space)calc(var(--space)/2);justify-content:space-between;align-items:flex-start;gap:var(--space-inline-roomy);display:flex}.modal-header h2{color:var(--text-primary);letter-spacing:-.01em;flex:1;margin:0;font-size:1.1rem;font-weight:600}.modal.-confirm .modal-header{border-bottom:1px solid var(--border-color)}.modal .btn-close{background:var(--bg-tertiary);width:28px;min-width:28px;height:28px;min-height:28px;color:var(--text-muted);cursor:pointer;transition:all var(--duration-fast)ease;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.25rem;display:flex}.modal .btn-close :is(iconify-icon,svg){font-size:.95rem}.modal .btn-close:hover{background:var(--border-emphasis);color:var(--text-primary)}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-inline-comfortable);padding:calc(var(--space)/2)var(--space)var(--space);border-top:1px solid var(--border-color);flex-wrap:wrap;display:flex}.modal-footer .error-message{margin:0}.modal.-confirm .modal-footer{border-top:none}.modal-footer .info-text{color:var(--text-secondary);margin-right:auto;font-size:.85rem}@media (max-width:768px){.modal-overlay{--modal-inline-padding:0;padding:0;padding-bottom:calc(var(--bottomnav-height) + var(--safe-bottom) + .5rem);align-items:flex-end}.modal{--space:var(--space-xs);border-bottom-right-radius:0;border-bottom-left-radius:0;width:100%;max-height:min(82vh,38rem)}.modal-overlay[aria-hidden=true] .modal{opacity:1;transform:translateY(100%)}.modal-overlay.-centered{align-items:center;padding:1rem}.modal-overlay.-centered .modal{border-radius:var(--radius-xl);max-height:min(85vh,600px)}.modal-overlay.-centered[aria-hidden=true] .modal{opacity:0;transform:translateY(20px)}.modal-header h2{font-size:1.1rem}.modal.-confirm .modal-footer{flex-direction:column-reverse}.modal.-confirm .modal-footer>.btn{width:100%}.modal .form-group+.form-group{margin-block-start:.75rem}.modal .form-label,.modal .form-group label{font-size:.78rem}.modal .form-input,.modal .form-group input,.modal .form-group textarea,.modal .form-group select{min-height:36px;padding:.45rem .65rem;font-size:.86rem}.modal .btn.checker iconify-icon{font-size:3rem}}@media (max-width:480px){.modal{--space:.875rem;border-radius:var(--radius-xl)var(--radius-xl)0 0;max-height:85vh}.modal-footer{padding-bottom:max(.875rem,calc(.5rem + env(safe-area-inset-bottom)))}.modal .btn.checker iconify-icon{font-size:2.5rem}}@media (max-height:720px){.modal-overlay{padding-block:var(--space-s)}}
.export-format-group{gap:var(--space-inline-cozy);flex-direction:column;display:flex}.export-format-group .form-label{color:var(--text-secondary);font-weight:600}.export-options{gap:.5rem;display:grid}.export-option{border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;transition:border-color var(--duration-fast)ease;align-items:flex-start;gap:.75rem;padding:.75rem;display:flex}.export-option:hover{border-color:var(--border-emphasis)}.export-option.is-selected{border-color:var(--accent-primary);background:var(--accent-subtle)}.export-option__check{border:1.5px solid var(--border-emphasis);width:1.1rem;height:1.1rem;transition:all var(--duration-fast)ease;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.export-option.is-selected .export-option__check{background:var(--accent-primary);border-color:var(--accent-primary)}.export-option__copy{flex-direction:column;gap:2px;display:flex}.export-option__title{color:var(--text-primary);font-size:.9rem;font-weight:600}.export-option__subtitle{color:var(--text-muted);font-size:.8rem}.export-note{margin-top:var(--space-s);color:var(--text-muted);font-size:.8rem}
.currency-options{margin:var(--space-s)0;border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:400px;padding:var(--space-xs);background:var(--bg-secondary);flex-direction:column;gap:.5rem;display:flex;overflow-y:auto}.currency-search-input{border:1px solid var(--border-emphasis);border-radius:var(--radius-sm);background:var(--bg-inset);width:100%;color:var(--text-primary);padding:.5rem .75rem;font-size:.9rem}.currency-search-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--border-focus);outline:none}.currency-option{text-align:left;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-tertiary);transition:border-color var(--duration-fast)ease;flex-direction:column;gap:.35rem;padding:.75rem;display:flex}.currency-option:hover{border-color:var(--accent-primary)}.currency-info{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.375rem;display:flex}.currency-code{color:var(--text-primary);font-size:1rem;font-weight:600}.currency-amount{color:var(--accent-primary);text-align:right;flex:1;font-size:1.1rem;font-weight:600}
.debt-breakdown{margin-top:var(--space-m);padding:var(--space-s);background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.debt-breakdown h4{color:var(--text-primary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;font-size:.8rem;font-weight:600}.debt-list{flex-direction:column;gap:.375rem;display:flex}.debt-item{background:var(--bg-secondary);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:.375rem .5rem;font-size:.85rem;display:flex}.debt-currency{color:var(--accent-primary);font-weight:600}.debt-amount{color:var(--text-primary);font-weight:500}.loading-message{color:var(--text-secondary);justify-content:center;padding:2rem;display:flex}
.user-dropdown{width:100%;position:relative}.user-dropdown-trigger{border:1px solid var(--border-emphasis);border-radius:var(--radius-md);background:var(--bg-inset);cursor:pointer;width:100%;min-height:40px;transition:border-color var(--duration-fast)ease;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.user-dropdown-trigger:hover{border-color:var(--accent-primary)}.user-dropdown-clear{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-xs);width:22px;height:22px;transition:all var(--duration-fast)ease;background:0 0;border:none;justify-content:center;align-items:center;margin-left:auto;margin-right:.35rem;padding:2px;font-size:1.1rem;display:flex}.user-dropdown-clear:hover{background:var(--bg-tertiary);color:var(--text-primary)}.user-dropdown-selected{flex:1;align-items:center;gap:.5rem;display:flex}.user-dropdown-text{color:var(--text-primary);font-size:.95rem}.user-dropdown-placeholder{color:var(--text-muted);font-size:.95rem}.user-dropdown-arrow{color:var(--text-muted);transition:transform var(--duration-fast)ease;margin-left:.35rem;font-size:.7rem}.user-dropdown-arrow.up{transform:rotate(180deg)}.user-dropdown-menu{background:var(--bg-secondary);border:1px solid var(--border-emphasis);border-radius:var(--radius-md);z-index:1000;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow:hidden}.user-dropdown-option{cursor:pointer;transition:background var(--duration-fast)ease;border-bottom:1px solid var(--border-color);align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.user-dropdown-option:last-child{border-bottom:none}.user-dropdown-option:hover{background:var(--bg-tertiary)}.user-dropdown-option.selected{background:var(--accent-subtle)}.user-dropdown-option.focused{background:var(--bg-tertiary);outline:1px solid var(--accent-primary);outline-offset:-1px}
.custom-select{width:100%;position:relative}.custom-select-trigger{border:1px solid var(--border-emphasis);border-radius:var(--radius-md);background:var(--bg-inset);cursor:pointer;width:100%;min-height:40px;color:var(--text-primary);-webkit-user-select:none;user-select:none;transition:border-color var(--duration-fast)ease;justify-content:space-between;align-items:center;gap:.4rem;padding:.5rem .75rem;font-family:inherit;font-size:.95rem;display:flex}.custom-select-trigger:hover{border-color:var(--accent-primary)}.custom-select-trigger:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--border-focus);outline:none}.custom-select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.custom-select-placeholder{color:var(--text-muted);flex:1}.custom-select-arrow{color:var(--text-muted);transition:transform var(--duration-fast)ease;flex-shrink:0;font-size:.7rem}.custom-select-arrow.up{transform:rotate(180deg)}.custom-select-menu{background:var(--bg-secondary);border:1px solid var(--border-emphasis);border-radius:var(--radius-md);z-index:1100;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 4px 16px #00000059}.custom-select-search{border-bottom:1px solid var(--border-color);padding:.4rem .5rem}.custom-select-search-input{border:1px solid var(--border-emphasis);border-radius:var(--radius-sm);background:var(--bg-inset);width:100%;color:var(--text-primary);transition:border-color var(--duration-fast)ease;padding:.35rem .5rem;font-family:inherit;font-size:.85rem}.custom-select-search-input:focus{border-color:var(--accent-primary);outline:none}.custom-select-search-input::placeholder{color:var(--text-muted)}.custom-select-options{overscroll-behavior:contain;max-height:220px;overflow-y:auto}.custom-select-option{cursor:pointer;color:var(--text-primary);border-bottom:1px solid var(--border-color);transition:background var(--duration-fast)ease;white-space:nowrap;text-overflow:ellipsis;padding:.45rem .75rem;font-size:.9rem;overflow:hidden}.custom-select-option:last-child{border-bottom:none}.custom-select-option:hover{background:var(--bg-tertiary)}.custom-select-option.selected{background:var(--accent-subtle);color:var(--accent-primary)}.custom-select-option.focused{background:var(--bg-tertiary);outline:1px solid var(--accent-primary);outline-offset:-1px}.custom-select-option.selected.focused{background:var(--accent-subtle)}.custom-select-empty{color:var(--text-muted);text-align:center;padding:.6rem .75rem;font-size:.85rem}[dir=ltr] .input-group .custom-select:not(:first-child) .custom-select-trigger{border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}[dir=ltr] .input-group .custom-select:not(:last-child) .custom-select-trigger{border-right-color:var(--border-color);border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .input-group .custom-select:not(:first-child) .custom-select-trigger{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .input-group .custom-select:not(:last-child) .custom-select-trigger{border-left-color:var(--border-color);border-top-left-radius:0;border-bottom-left-radius:0}.custom-select.input-auto{flex-shrink:0;width:auto}.custom-select.input-auto .custom-select-trigger{min-width:5rem;padding-inline:.5rem}.custom-select.input-auto .custom-select-menu{min-width:220px}
.tabs{margin-bottom:var(--space-m);border-bottom:1px solid var(--border-color);gap:0;display:flex}.tab{color:var(--text-muted);cursor:pointer;transition:all var(--duration-fast)ease;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem 1rem;font-size:.9rem;font-weight:500}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}
.invitations-grid{margin-top:var(--space-s);flex-direction:column;gap:.75rem;display:flex}.invitation-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-s);transition:border-color var(--duration-fast)ease}.invitation-card:hover{border-color:var(--border-emphasis)}.invitation-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;display:flex}.invitation-status{text-transform:uppercase;color:#fff;white-space:nowrap;border-radius:999px;padding:.15rem .5rem;font-size:.65rem;font-weight:600}.invitation-description{color:var(--text-primary);margin-bottom:.5rem;font-size:1rem;font-weight:600}.invitation-details{margin-bottom:var(--space-s);background:var(--bg-tertiary);border-radius:var(--radius-sm);flex-direction:column;gap:.25rem;padding:.5rem .75rem;display:flex}.invitation-details .detail{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.invitation-details .label{color:var(--text-muted);font-weight:500}.invitation-details .value{color:var(--text-primary);font-weight:500}.invitation-actions{flex-wrap:wrap;gap:.5rem;display:flex}.empty-state{text-align:center;color:var(--text-secondary);padding:3rem 1rem}.empty-state h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.25rem}.empty-state p{margin-bottom:1.5rem;line-height:1.6}@media (max-width:768px){.invitation-actions .btn{flex:1}}.group-invitation-display{gap:1rem;display:grid}.group-invitation-display .group-info h4{color:var(--text-primary);margin:0;font-size:1.05rem}.group-invitation-display .invite-section{border:1px solid var(--border-color);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-tertiary)70%,transparent);gap:.6rem;padding:.9rem;display:grid}.group-invitation-display .invite-section h5{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.8rem}.group-invitation-display .link-box,.group-invitation-display .code-box{border:1px solid var(--border-emphasis);background:var(--bg-secondary);border-radius:var(--radius-md);margin:0;padding:.75rem .9rem}.group-invitation-display .link-text{color:var(--text-primary);word-break:break-all;font-size:.92rem;line-height:1.4;display:block}.group-invitation-display .code-text{letter-spacing:.22em}.group-invitation-display .link-actions,.group-invitation-display .code-actions{justify-content:flex-start;margin-top:.1rem}.group-invitation-display .instructions{border-radius:var(--radius-md);border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary)88%,black 12%);padding:.85rem .95rem}.group-invitation-display .instructions h5{color:var(--text-primary);margin:0 0 .5rem;font-size:.9rem}.group-invitation-display .instructions ul{gap:.45rem;margin:0;padding-left:0;list-style:none;display:grid}.group-invitation-display .instructions li{margin:0;padding:0 0 0 1.2rem}.join-container{width:min(860px,100%);margin:2rem auto}.join-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden}.join-header{padding:1.5rem 1.5rem 0}.join-header h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.6rem,2.4vw,2.15rem);line-height:1.15}.join-content{gap:1rem;padding:1rem 1.5rem 1.5rem;display:grid}.join-content .group-preview{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:linear-gradient(120deg,color-mix(in srgb,var(--bg-tertiary)76%,transparent),color-mix(in srgb,var(--bg-secondary)72%,black 28%));padding:1rem 1.1rem}.join-content .group-preview h2{margin:0;font-size:1.35rem}.join-content .invitation-details{gap:1rem;display:grid}.join-content .inviter-info{align-items:center;gap:.9rem;display:flex}.join-content .inviter-details h3{margin:0;font-size:1.1rem}.join-content .inviter-details p{color:var(--text-secondary);margin:.2rem 0 0}.join-content .inviter-details small{color:var(--text-muted)}.join-content .current-members{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-tertiary);padding:.85rem}.join-content .current-members h4{color:var(--text-secondary);margin:0 0 .65rem;font-size:.9rem}.join-content .members-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:.6rem;display:grid}.join-content .member-preview{border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:.35rem;padding:.45rem;display:flex}.join-content .member-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.78rem;overflow:hidden}.join-content .join-actions{margin-top:.2rem}.join-content .auth-required{gap:.75rem;display:grid}.join-content .auth-required p{color:var(--text-secondary);margin:0}.join-content .auth-buttons,.join-content .join-buttons{flex-wrap:wrap;gap:.65rem;display:flex}.join-content .invitation-meta{border-top:1px solid var(--border-color);padding-top:.85rem}.join-content .invitation-meta small{color:var(--text-muted)}@media (max-width:768px){.join-container{margin:1rem auto}.join-header{padding:1.2rem 1rem 0}.join-content{padding:.9rem 1rem 1.2rem}.join-content .auth-buttons .btn,.join-content .join-buttons .btn{flex:100%}}.invite-code-display{text-align:center;margin:1.5rem 0}.code-box{background:var(--bg-tertiary);border:1px solid var(--accent-primary);border-radius:var(--radius-md);text-align:center;margin:.75rem 0;padding:.75rem 1rem}.code-text{color:var(--accent-primary);letter-spacing:.15em;-webkit-user-select:all;user-select:all;cursor:pointer;font-family:SF Mono,Fira Code,monospace;font-size:1.25rem;font-weight:600}.code-actions{margin-top:var(--space-s);justify-content:center;gap:.75rem;display:flex}.instructions h4{color:var(--accent-primary);margin-bottom:.75rem;font-size:1rem;font-weight:600}.instructions li{margin-bottom:.25rem;padding:.35rem 0 .35rem 1.25rem;position:relative}.instructions li:before{content:"✓";color:var(--positive);font-weight:700;position:absolute;left:0}.invitation-code{background:var(--accent-subtle);color:var(--accent-primary);border-radius:var(--radius-sm);letter-spacing:.08em;padding:.2rem .5rem;font-family:SF Mono,Fira Code,monospace;font-size:.9rem;font-weight:600}
.auth-container{justify-content:center;align-items:center;min-height:60vh;padding:1rem;display:flex}.auth-container .card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--space-m);border:1px solid var(--border-color);width:100%;max-width:380px}.auth-title{text-align:center;margin-bottom:var(--space-m);color:var(--text-primary);letter-spacing:-.02em;font-size:1.25rem;font-weight:600}.btn-auth{width:100%;min-height:44px;padding:.625rem 1rem;font-size:.95rem;font-weight:600}.oauth-divider{color:var(--text-muted);margin:var(--space-s)0;align-items:center;gap:.75rem;font-size:.8rem;font-weight:500;display:flex}.oauth-divider:before,.oauth-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.oauth-buttons{flex-direction:column;gap:.5rem;display:flex}.btn-auth.oauth{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-auth.oauth:hover{border-color:var(--border-emphasis)}.btn-auth.oauth.google{color:#1f2937;background:#fff;border-color:#0000001a}.btn-auth.oauth.google:hover{background:#f8fafc}.btn-auth.oauth.github{color:#fff;border-color:var(--border-emphasis);background:#1a1a1a}.btn-auth.oauth.github:hover{background:#222}.auth-footer{text-align:center;padding-top:var(--space-s)}.auth-footer p{color:var(--text-muted);margin:0;font-size:.85rem}.auth-link{color:var(--accent-primary);transition:color var(--duration-fast)ease;font-weight:500;text-decoration:none}.auth-link:hover{color:var(--accent-hover);text-decoration:underline}@media (max-width:768px){.auth-container{padding:.5rem}.auth-container .card{padding:var(--space-s);max-width:100%}.auth-title{font-size:1.15rem}}
.toast-container{z-index:10000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:16px;right:16px}.toast{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);pointer-events:auto;cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;min-width:260px;max-width:360px;padding:.75rem 1rem;display:flex}.toast-content{flex:1;align-items:center;gap:.5rem;display:flex}.toast-icon{flex-shrink:0;font-size:1rem}.toast-message{color:var(--text-primary);font-size:.85rem;font-weight:500;line-height:1.4}.toast-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-xs);transition:color var(--duration-fast)ease;background:0 0;border:none;flex-shrink:0;padding:2px;font-size:1.1rem}.toast-close:hover{color:var(--text-primary)}.toast-success{border-left:3px solid var(--positive)}.toast-error{border-left:3px solid var(--negative)}.toast-info{border-left:3px solid var(--accent-primary)}@media (max-width:768px){.toast-container{top:8px;left:8px;right:8px}.toast{min-width:auto;max-width:none}}
.section-header{margin-bottom:var(--space-s);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.section-header h2{margin:0}.section-header .section-actions{align-items:center;gap:.35rem;display:flex}.section-actions .btn{padding:0 .75rem;font-size:.8rem}.expenses-sheet{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow:hidden}.expenses-header{background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:500;display:grid}.expenses-header,.expense-row,.expenses-summary{grid-template-columns:2fr 3fr 1fr .8fr}.header-cell{border-right:1px solid var(--border-color);align-items:center;padding:.5rem .75rem;display:flex}.header-cell:last-child{border-right:none}.expenses-body{flex-direction:column;display:flex}.expense-row{border-bottom:1px solid var(--border-color);transition:background var(--duration-fast)ease;display:grid}.expense-row:hover{background:var(--bg-tertiary)}.expense-row:last-child{border-bottom:none}.expense-cell{border-right:1px solid var(--border-color);color:var(--text-primary);align-items:center;padding:.5rem .75rem;font-size:.85rem;display:flex}.expense-cell:last-child{border-right:none;gap:.35rem}.expense-cell.description{flex-direction:column;align-items:flex-start;font-weight:500}.expense-cell.amount{flex-direction:column}.expense-cell.amount .expense-amount:not(:first-child){opacity:.6;font-size:.85em}.expense-breakdown{color:var(--text-primary)}.expense-breakdown .amount{color:var(--accent-primary);font-weight:600}.expense-breakdown .share>:not(:first-child){margin-inline-start:.25em}.expense-breakdown.credit .share:not(.my-share) .amount{color:var(--positive)}.expense-breakdown.debt .share.my-share .amount{color:var(--negative)}.expense-cell.category{color:var(--text-secondary);font-size:.7rem;position:relative;overflow:visible}.expense-cell.category :is(iconify-icon,svg){color:var(--text-muted);opacity:.65;flex-shrink:0;font-size:1.05rem}.expense-cell.date{color:var(--text-muted);font-size:.75rem}.expenses-summary{background:var(--bg-tertiary);border-top:1px solid var(--border-emphasis);font-weight:500;display:grid}.summary-cell{border-right:1px solid var(--border-color);color:var(--text-secondary);align-items:center;padding:.5rem .75rem;font-size:.8rem;display:flex}.summary-cell:last-child{border-right:none}.summary-cell.amount{flex-direction:column;font-size:.85rem}.summary-cell.amount strong{color:var(--accent-primary)}.summary-cell.pagination{gap:.375rem;display:flex}.expense-cell.actions{align-items:center;gap:.35rem;display:flex}.btn-edit,.btn-delete{border-radius:var(--radius-xs);cursor:pointer;min-height:auto;transition:all var(--duration-fast)ease;border:none;padding:.2rem .4rem;font-size:.7rem;font-weight:500}.btn-edit{background:var(--accent-primary);color:#191919}.btn-edit:not(:disabled):hover{background:var(--accent-hover)}.btn-delete{background:var(--negative);color:#fff}.btn-delete:not(:disabled):hover{background:#ef4444}.empty-expenses{text-align:center;color:var(--text-muted);padding:3rem 2rem}.empty-icon{margin-bottom:.75rem;font-size:2rem}.empty-expenses p{color:var(--text-primary);margin-bottom:.35rem;font-size:1rem;font-weight:500}.empty-expenses span{color:var(--text-muted);font-size:.85rem}@media (max-width:768px){.expenses-header,.expense-row,.expenses-summary{grid-template-columns:1fr;display:block}.expenses-header{display:none}.expense-row{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary);margin-bottom:.35rem;padding:.5rem}.expense-cell{border:none;justify-content:space-between;padding:.1rem 0;display:flex}.expense-cell.description{flex-flow:wrap;gap:.35rem}.expense-cell:before{content:attr(data-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;width:70px;font-size:.65rem;font-weight:600}.expense-cell.description:before{content:"Item: "}.expense-cell.amount:before{content:"Amount: "}.expense-cell.category:before{content:"Category: "}.expense-cell.date:before{content:"Date: "}.expense-cell.actions{justify-content:flex-end}.expenses-summary{text-align:center;border-radius:var(--radius-md);margin-top:.5rem;padding:.5rem;display:block}.summary-cell{border:none;justify-content:center;padding:.2rem 0}.summary-cell.category,.summary-cell.date,.summary-cell.actions{display:none}}@media (min-width:769px){.expense-cell.actions{flex-direction:column}}
.breakdown-items{flex-direction:column;gap:.5rem;display:flex}.breakdown-item{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.breakdown-item .user-info{align-items:center;gap:.5rem;display:flex}.breakdown-item .user-avatar,.breakdown-item .user-avatar-placeholder{border-radius:50%;width:28px;height:28px}.breakdown-item .user-avatar-placeholder{background:var(--bg-tertiary);color:var(--accent-primary);justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.breakdown-item .username{font-size:.9rem;font-weight:500}.breakdown-item .amount{font-size:.95rem;font-weight:600}.breakdown-item .amount.debt{color:var(--negative)}.breakdown-item .amount.credit{color:var(--positive)}.no-breakdowns{text-align:center;color:var(--text-secondary);padding:1.5rem}.breakdowns-list h3{margin-bottom:.75rem;font-size:1rem}.breakdown-loading{text-align:center;color:var(--text-muted);padding:.5rem;font-style:italic}
.qr-content{align-items:center;gap:var(--space-s);flex-direction:column;display:flex}.payment-summary{text-align:center;width:100%}.payment-summary h3{margin-bottom:.75rem;font-size:1.1rem;font-weight:600}.payment-details{background:var(--accent-subtle);border-radius:var(--radius-md);color:var(--text-primary);border:1px solid #d4a57433;padding:.75rem}.payment-amount{color:var(--accent-primary);margin-bottom:.25rem;font-size:1.75rem;font-weight:600}.payment-description{color:var(--text-secondary);font-size:.9rem}.qr-code-container{border-radius:var(--radius-lg);background:#fff;padding:.75rem}.qr-code-image{width:100%;max-width:220px;max-height:220px;display:block}.bank-details{background:var(--bg-tertiary);border-radius:var(--radius-md);width:100%;padding:var(--space-s);border:1px solid var(--border-color)}.bank-details h4{text-align:center;margin-bottom:.75rem;font-size:.95rem;font-weight:600}.bank-info-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.bank-info-row:last-child{border-bottom:none}.bank-info-row .label{color:var(--text-muted);font-size:.8rem}.bank-info-row .value{color:var(--text-primary);text-align:right;flex:1;margin-left:.75rem;font-size:.85rem;font-weight:500}.qr-instructions{width:100%;padding:var(--space-s);border:1px solid var(--border-color);border-radius:var(--radius-md)}.qr-instructions h4{margin-bottom:.5rem;font-size:.95rem;font-weight:600}.qr-instructions ol{color:var(--text-secondary);padding-left:1.25rem;font-size:.85rem;line-height:1.6}.qr-instructions li{margin-bottom:.25rem}.qr-save-tip{color:var(--text-muted);margin-top:.5rem;font-size:.85rem}.qr-loading,.qr-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.error-icon{margin-bottom:.75rem;font-size:2rem}.qr-error h3{margin-bottom:.5rem;font-size:1.1rem}.qr-error p{color:var(--text-secondary);margin-bottom:1rem;font-size:.9rem}.qr-payment-section{margin-top:var(--space-m);padding:var(--space-s);background:var(--accent-subtle);border-radius:var(--radius-md);text-align:center;border:1px solid #d4a57426}.qr-payment-btn{background:var(--positive);color:#191919;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast)ease;white-space:nowrap;border:none;margin-left:.5rem;padding:.35rem .6rem;font-size:.75rem;font-weight:600}.qr-payment-btn:hover{background:#34d399}.qr-payment-description{color:var(--text-secondary);font-size:.85rem}.qr-member-btn{background:var(--positive);color:#191919;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast)ease;white-space:nowrap;border:none;margin-left:.5rem;padding:.35rem .6rem;font-size:.75rem;font-weight:600}.qr-member-btn:hover{background:#34d399}.two-person-settle-section{margin-top:var(--space-m);justify-content:center;width:100%;display:flex}.settle-actions{flex-direction:column;align-items:center;gap:.5rem;display:flex}.settle-btn-two-person{border-radius:var(--radius-md);text-align:center;min-width:180px;padding:.5rem 1.25rem;font-size:.95rem;font-weight:600}
.profile-image-section{margin-bottom:var(--space-m);flex-direction:column;align-items:center;display:flex}.profile-image-container{justify-content:center;margin-bottom:.75rem;display:flex}.profile-image-clickable{background:var(--bg-tertiary);border:2px solid var(--border-color);width:80px;height:80px;transition:border-color var(--duration-fast)ease;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.profile-image-clickable:hover{border-color:var(--accent-primary)}.profile-image-clickable:hover .profile-image-overlay{opacity:1}.profile-image{object-fit:cover;border-radius:50%;width:100%;height:100%}.profile-image-placeholder{background:var(--bg-tertiary);width:100%;height:100%;color:var(--accent-primary);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;font-weight:600;display:flex}.profile-image-overlay{opacity:0;transition:opacity var(--duration-fast)ease;background:#0009;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.profile-image-overlay span{color:#fff;text-align:center;font-size:.75rem;font-weight:500}
.error-message{background:var(--negative-subtle);color:var(--negative);border-radius:var(--radius-md);border:1px solid #f8717133;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.85rem;font-weight:500}.success-message{background:var(--positive-subtle);color:var(--positive);border-radius:var(--radius-md);border:1px solid #3ecf8e33;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.85rem;font-weight:500}
.password-requirements{background:var(--bg-inset);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-top:.75rem;padding:.75rem}.password-requirements h4{color:var(--text-primary);margin-bottom:.5rem;font-size:.8rem;font-weight:600}.password-requirements ul,.password-requirements .requirement-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.password-requirements li,.password-requirements .requirement-item{align-items:center;gap:.375rem;font-size:.8rem;display:flex}.requirement-icon{border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:.6rem;font-weight:700;display:inline-flex}.requirement-unmet,.requirement-item.unmet{color:var(--negative)!important}.requirement-unmet .requirement-icon,.requirement-item.unmet .requirement-icon{background:var(--negative)!important;color:#fff!important}.requirement-met,.requirement-item.met{color:var(--positive)!important}.requirement-met .requirement-icon,.requirement-item.met .requirement-icon{background:var(--positive)!important;color:#fff!important}
.bank-account-section{margin-top:var(--space-m);padding-top:var(--space-s);border-top:1px solid var(--border-color)}.bank-account-section h4{margin-bottom:.35rem;font-size:1rem;font-weight:600}.bank-account-description{color:var(--text-secondary);margin-bottom:var(--space-s);font-size:.85rem;line-height:1.4}.bank-account-section .form-group select{background:var(--bg-inset);border:1px solid var(--border-emphasis);color:var(--text-primary);border-radius:var(--radius-md);width:100%;padding:.5rem .75rem;font-size:.9rem}.bank-account-section .form-group select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--border-focus);outline:none}.bank-info{color:var(--accent-primary);margin-top:.35rem;font-size:.8rem;font-weight:500;display:block}
.member-avatar-small,.member-avatar-small-placeholder{border-radius:50%;flex-shrink:0;width:28px;height:28px}.member-avatar-small{object-fit:cover}.member-avatar-small-placeholder{background:var(--bg-tertiary);color:var(--accent-primary);justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.custom-split-item{border:1px solid var(--border-color);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.35rem;padding:.5rem;display:flex}.custom-split-item .member-info{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.custom-split-item .custom-share-input{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-inset);color:var(--text-primary);text-align:right;flex-shrink:0;padding:.35rem .5rem;font-size:.85rem;width:100px!important;min-width:100px!important;max-width:100px!important}
.floating-add-btn{bottom:calc(var(--bottomnav-height) + var(--safe-bottom) + 12px);background:var(--accent-primary);color:#191919;cursor:pointer;z-index:999;width:48px;height:48px;transition:background var(--duration-fast)ease;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:fixed;right:16px}.floating-add-btn:hover{background:var(--accent-hover)}@media (min-width:769px){.floating-add-btn{bottom:24px;right:24px}}
.easter-egg{pointer-events:none;z-index:100000;opacity:0;will-change:transform,opacity;filter:drop-shadow(0 10px 22px #00000073);width:100%;max-width:min(16vw,150px);height:auto;transition:opacity .2s;position:fixed}.easter-egg.active{opacity:1}.easter-egg.orange{max-width:min(14vw,132px);animation:easter-pop-orange 2.1s var(--ease-out)forwards;top:auto;bottom:0;left:0}.easter-egg.orange.right{left:auto;right:0}.easter-egg.pink{left:clamp(.5rem,calc(var(--pink-x,.5)*100% - 3.8rem),calc(100% - 7.6rem));max-width:min(13vw,122px);animation:easter-pop-pink 2.1s var(--ease-out)forwards;top:0;right:auto}@keyframes easter-pop-orange{0%{transform:translateX(calc(var(--dir,1)*-110%))scaleX(var(--flip,1))rotate(-6deg);opacity:0}18%{opacity:1}38%{transform:translateX(calc(var(--dir,1)*-28%))scaleX(var(--flip,1))rotate(-2deg);opacity:1}72%{transform:translateX(calc(var(--dir,1)*-28%))scaleX(var(--flip,1))rotate(-2deg);opacity:1}to{transform:translateX(calc(var(--dir,1)*-110%))scaleX(var(--flip,1))rotate(-6deg);opacity:0}}@keyframes easter-pop-pink{0%{transform:translate3d(calc((var(--offset,.5) - .5)*-10px),-110%,0)rotate(8deg);opacity:0}18%{opacity:1}36%{transform:translate3d(calc((var(--offset,.5) - .5)*-10px),0,0)rotate(4deg);opacity:1}72%{transform:translate3d(calc((var(--offset,.5) - .5)*-10px),0,0)rotate(4deg);opacity:1}to{transform:translate3d(calc((var(--offset,.5) - .5)*-10px),-110%,0)rotate(6deg);opacity:0}}@media (max-width:768px){.easter-egg{max-width:min(27vw,130px)}.easter-egg.orange{max-width:min(24vw,112px);bottom:0;left:0}.easter-egg.orange.right{left:auto;right:0}.easter-egg.pink{top:0;left:clamp(.35rem,calc(var(--pink-x,.5)*100% - 2.75rem),calc(100% - 5.5rem));max-width:min(21vw,102px)}}
.telegram-banner{z-index:9999;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);border-left:3px solid #229ed9;width:max-content;max-width:320px;padding:.5rem .6rem;position:fixed;top:1rem;right:1rem;box-shadow:0 4px 16px #00000026}.telegram-banner-content{align-items:center;gap:var(--space-2xs);display:flex}.telegram-banner-icon{color:#229ed9;flex-shrink:0;align-items:center;display:flex}.telegram-banner-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.telegram-banner-title{color:var(--text-primary);white-space:nowrap;font-size:.8rem;font-weight:600}.telegram-banner-desc{color:var(--text-secondary);font-size:.75rem;line-height:1.3}.telegram-banner-actions{align-items:center;gap:var(--space-3xs);flex-shrink:0;display:flex}.telegram-banner-connect{color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast)ease;white-space:nowrap;background:#229ed9;border:none;padding:4px 10px;font-size:.75rem;font-weight:600}.telegram-banner-connect:hover{background:#1e8dc2}.telegram-banner-connect:disabled{opacity:.6;cursor:not-allowed}.telegram-banner-dismiss{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-xs);transition:color var(--duration-fast)ease;background:0 0;border:none;padding:2px 4px;font-size:1.1rem;line-height:1}.telegram-banner-dismiss:hover{color:var(--text-primary)}.telegram-banner-link-hint{color:var(--text-secondary);margin-top:4px;padding-left:26px;font-size:.7rem}@media (max-width:768px){.telegram-banner{width:auto;max-width:none;inset:auto .75rem 5rem}}
.loading{text-align:center;color:var(--text-secondary);padding:2rem;font-size:1rem}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:769px){.sm-only{display:none}}.navbar,.mobile-menu-backdrop{display:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-emphasis);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.btn:focus-visible,.form-input:focus-visible,.form-group input:focus-visible,.form-group textarea:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media print{.sidebar,.bottom-nav,.btn{display:none!important}.container{max-width:none!important;padding:0!important}.card{break-inside:avoid;border:1px solid #ccc!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

