:root{--ground-a:#f0b9a6;--ground-b:#e9a995;--surface:#f8f2e7;--card:#fffdf7;--card-tint:#f4eddf;--line:#5d402a1a;--line-strong:#5d402a2e;--ink:#211a13;--ink-2:#4c4237;--muted:#776a54;--butter:#f3dea2;--butter-ink:#6a5220;--peri:#bac6f4;--peri-ink:#31417e;--lav:#dcc9f4;--lav-ink:#4e3878;--rose:#f4bdd1;--rose-ink:#7c3253;--sage:#cbe2c0;--sage-ink:#3f5e35;--peach:#f7cdb5;--peach-ink:#7c462c;--good:#2f4e26;--good-bg:#bfd9b0;--warn:#6e3c21;--warn-bg:#f5c093;--bad:#8a2b3e;--bad-bg:#f2b7be;--r-lg:22px;--r-md:14px;--r-sm:10px;--r-full:999px;--shadow:0 1px 2px #4c311d0d, 0 8px 24px -18px #4c311d40;--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font);color:var(--ink);background:linear-gradient(160deg,var(--ground-a),var(--ground-b));-webkit-font-smoothing:antialiased;min-height:100vh;font-size:14px;line-height:1.45}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--peri-ink);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.app{background:var(--surface);border-radius:28px;max-width:1440px;min-height:calc(100vh - 36px);margin:18px auto;padding:0 26px 34px;overflow:clip;box-shadow:0 24px 60px -30px #602d1973}@media (max-width:700px){.app{min-height:100vh;padding:env(safe-area-inset-top) calc(14px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left));border-radius:0;margin:0}}.icon-defs{width:0;height:0;position:absolute;overflow:hidden}.topbar{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:18px 2px 16px;display:flex}.brand{white-space:nowrap;align-items:center;gap:8px;display:flex}.wm-ugc{letter-spacing:-.03em;font-size:26px;font-weight:800;line-height:1}.wm-pill{background:var(--ink);color:#fff7e9;border-radius:var(--r-full);letter-spacing:.01em;padding:5px 11px 6px;font-size:12px;font-weight:700;line-height:1}.nav{scrollbar-width:none;flex:auto;justify-content:safe center;gap:2px;min-width:0;display:flex;overflow-x:auto}@media (max-width:940px){.topbar{flex-wrap:wrap;row-gap:10px}.nav{flex-basis:100%;order:3;justify-content:flex-start}}.nav::-webkit-scrollbar{display:none}.nav a,.nav button{border-radius:var(--r-full);color:var(--ink-2);white-space:nowrap;border:1px solid #0000;padding:9px 16px;font-size:13.5px;font-weight:550;transition:background .15s}.nav a:hover,.nav button:hover{background:#5d402a0f}.nav a.active,.nav button.active{background:var(--card);color:var(--ink);box-shadow:var(--shadow);border:1px solid var(--line);font-weight:650}.top-actions{align-items:center;gap:8px;display:flex}.ic{stroke:currentColor;fill:none;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.chip-ic{background:var(--ink);color:#fff7e9;border-radius:9px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.chip-ic .ic{width:15px;height:15px}.chip-ic.lg{border-radius:12px;width:38px;height:38px}.icon-btn{border-radius:var(--r-full);background:var(--card);border:1px solid var(--line);width:34px;height:34px;color:var(--ink-2);flex:none;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.icon-btn:hover{background:var(--card-tint)}.btn{background:var(--ink);color:#fff7e9;border-radius:var(--r-full);white-space:nowrap;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;transition:opacity .15s;display:inline-flex}.btn:hover{opacity:.85}.btn .ic{width:14px;height:14px}.btn-ghost{background:var(--card);border:1px solid var(--line-strong);color:var(--ink);border-radius:var(--r-full);white-space:nowrap;align-items:center;gap:7px;padding:8px 15px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.btn-ghost:hover{background:var(--card-tint)}.btn-ghost .ic{width:14px;height:14px}.pill{border-radius:var(--r-full);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:5px;padding:3px 10px;font-size:11.5px;font-weight:650;display:inline-flex}.pill .ic{width:11px;height:11px}.p-butter{background:var(--butter);color:var(--butter-ink)}.p-peri{background:var(--peri);color:var(--peri-ink)}.p-lav{background:var(--lav);color:var(--lav-ink)}.p-rose{background:var(--rose);color:var(--rose-ink)}.p-sage{background:var(--sage);color:var(--sage-ink)}.p-peach{background:var(--peach);color:var(--peach-ink)}.p-good{background:var(--good-bg);color:var(--good)}.p-warn{background:var(--warn-bg);color:var(--warn)}.p-bad{background:var(--bad-bg);color:var(--bad)}.p-dark{background:var(--ink);color:#fff7e9}.p-line{border:1px solid var(--line-strong);color:var(--ink-2);background:0 0}.tag{border-radius:var(--r-full);background:var(--card-tint);color:var(--ink-2);border:1px solid var(--line);padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}main{max-width:1200px;margin:0 auto}.screen{animation:.22s screenIn;display:none}.screen.active{display:block}@keyframes screenIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.screen-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;padding:34px 2px 22px;display:flex}.screen-head h1{letter-spacing:-.02em;text-wrap:balance;font-size:23px;font-weight:700}.screen-head .sub{color:var(--muted);margin-top:4px;font-size:13.5px}.row{align-items:center;gap:8px;display:flex}.grid{grid-template-columns:repeat(12,1fr);gap:18px;display:grid}.subnav{background:var(--card-tint);border-radius:var(--r-full);gap:2px;padding:3px;display:inline-flex}.subnav a,.subnav button{border-radius:var(--r-full);color:var(--ink-2);border:1px solid #0000;padding:7px 16px;font-size:12.5px;font-weight:600;transition:background .15s}.subnav a.active,.subnav button.active{background:var(--card);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow)}.subview{display:none}.subview.active{animation:.18s screenIn;display:block}.c-3{grid-column:span 3}.c-4{grid-column:span 4}.c-5{grid-column:span 5}.c-6{grid-column:span 6}.c-7{grid-column:span 7}.c-8{grid-column:span 8}.c-9{grid-column:span 9}.c-12{grid-column:span 12}@media (max-width:1050px){.c-3,.c-4{grid-column:span 6}.c-5,.c-6,.c-7,.c-8,.c-9{grid-column:span 12}}@media (max-width:640px){.c-3,.c-4{grid-column:span 12}}.tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px}.card.flush{padding:0;overflow:hidden}.sec-head{align-items:center;gap:11px;margin-bottom:16px;display:flex}.sec-head h2{letter-spacing:-.01em;margin-right:auto;font-size:14px;font-weight:700}.sec-head .sub{color:var(--muted);font-size:12.5px;font-weight:500}.well{background:var(--card-tint);border-radius:var(--r-md);padding:14px}.stat{border-radius:18px;flex-direction:column;gap:14px;min-height:118px;padding:16px 16px 14px;display:flex}.stat .stat-top{align-items:center;gap:9px;display:flex}.stat .stat-top .lbl{margin-right:auto;font-size:12.5px;font-weight:650}.stat .stat-top .chip-ic{background:#211a13e0}.stat .go{border-radius:var(--r-full);background:#fffdf78c;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.stat .go .ic{width:12px;height:12px}.stat .stat-val{letter-spacing:-.02em;font-size:26px;font-weight:700;line-height:1}.stat .stat-sub{opacity:.9;margin-top:auto;font-size:11.5px;font-weight:550}.t-butter{background:var(--butter);color:var(--butter-ink)}.t-peri{background:var(--peri);color:var(--peri-ink)}.t-lav{background:var(--lav);color:var(--lav-ink)}.t-rose{background:var(--rose);color:var(--rose-ink)}.t-sage{background:var(--sage);color:var(--sage-ink)}.t-peach{background:var(--peach);color:var(--peach-ink)}.avatar{border-radius:var(--r-full);letter-spacing:.02em;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:inline-flex}.avatar.lg{width:56px;height:56px;font-size:18px}.avatar.sm{width:26px;height:26px;font-size:10px}.av-1{background:var(--butter);color:var(--butter-ink)}.av-2{background:var(--peri);color:var(--peri-ink)}.av-3{background:var(--lav);color:var(--lav-ink)}.av-4{background:var(--rose);color:var(--rose-ink)}.av-5{background:var(--sage);color:var(--sage-ink)}.av-6{background:var(--peach);color:var(--peach-ink)}.li{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:11px 2px;display:flex}.li:last-child{border-bottom:none}.li .li-main{flex:1;min-width:0}.li .li-title{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.li .li-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12px;overflow:hidden}.li .li-end{flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.li.link{border-radius:var(--r-sm);cursor:pointer;margin:0 -8px;padding-left:10px;padding-right:10px;transition:background .15s}.li.link:hover{background:var(--card-tint)}.tbl-wrap{overflow-x:auto}.tbl{border-collapse:collapse;width:100%;min-width:640px}.tbl th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:10px 12px;font-size:10.5px;font-weight:700}.tbl td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px;font-size:13px}.tbl tr:last-child td{border-bottom:none}.tbl tbody tr{transition:background .12s}.tbl tbody tr:hover{background:var(--card-tint)}.tbl .r{text-align:right}.num{font-variant-numeric:tabular-nums}.kb-head{align-items:center;gap:8px;margin-bottom:10px;padding:0 2px;display:flex}.kb-head .kb-title{font-size:12.5px;font-weight:700}.kb-head .count{background:var(--card);border:1px solid var(--line);border-radius:var(--r-full);color:var(--ink-2);margin-left:auto;padding:1px 8px;font-size:11px;font-weight:700}.kb-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);margin-bottom:10px;padding:12px;transition:transform .15s,box-shadow .15s}.kb-card:hover{transform:translateY(-1px)}.kb-card:last-child{margin-bottom:0}.kb-card .kb-t{font-size:13px;font-weight:600;line-height:1.35}.kb-card .kb-meta{flex-wrap:wrap;align-items:center;gap:7px;margin-top:9px;display:flex}.empty{border:1.6px dashed var(--line-strong);border-radius:var(--r-md);text-align:center;color:var(--muted);padding:22px;font-size:13px}.divider{background:var(--line);height:1px;margin:14px 0}.kv{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:9px 0;font-size:13px;display:flex}.kv:last-child{border-bottom:none}.kv .k{color:var(--muted);flex:none;width:96px;font-size:12px}.kv .v{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.mut{color:var(--muted)}.up{color:var(--good);font-weight:650}.down{color:var(--bad);font-weight:650}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#5d402a2e;border-radius:99px}::-webkit-scrollbar-track{background:0 0}input,select,textarea{font:inherit;color:var(--ink)}.field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex;position:relative}.field>span{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.field input,.field select,.field textarea{background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-sm);outline:none;width:100%;padding:9px 12px;font-size:13.5px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink-2)}.field textarea{resize:vertical;min-height:64px}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:560px){.field-row{grid-template-columns:1fr}}.check-row{align-items:center;gap:8px;margin-bottom:12px;font-size:13px;display:flex}.form-foot{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.modal{border-radius:var(--r-lg);background:var(--card);color:var(--ink);border:none;width:min(480px,100vw - 32px);max-height:min(85vh,720px);margin:auto;padding:22px;overflow-y:auto;box-shadow:0 24px 70px -20px #4c311d73}.modal::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#3c241459}.modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.modal-head h2{letter-spacing:-.01em;font-size:16px;font-weight:700}.auth-bg{min-height:100vh;padding:calc(20px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));justify-content:center;align-items:center;display:flex}.auth-card{background:var(--surface);border-radius:24px;width:min(400px,100%);padding:34px 30px;box-shadow:0 24px 60px -30px #602d1980}.auth-brand{justify-content:center;align-items:center;gap:8px;margin-bottom:6px;display:flex}.auth-sub{text-align:center;color:var(--muted);margin-bottom:22px;font-size:13px}.auth-note{background:var(--card-tint);border-radius:var(--r-md);margin-bottom:14px;padding:10px 14px;font-size:12.5px}.auth-note.err{background:var(--bad-bg);color:var(--bad)}.auth-switch{text-align:center;color:var(--muted);margin-top:16px;font-size:12.5px}.auth-switch a{color:var(--ink);font-weight:650;text-decoration:underline}.trialbar{background:var(--warn-bg);color:var(--warn);border-radius:var(--r-md);align-items:center;gap:10px;margin-top:18px;padding:10px 16px;font-size:13px;font-weight:600;display:flex}.trialbar a{text-decoration:underline}.inline-form{align-items:center;gap:8px;display:inline-flex}.icon-btn.danger:hover{background:var(--bad-bg);color:var(--bad)}.kb-sub{color:var(--muted);margin-top:6px;font-size:11.5px;line-height:1.4}.micro-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:14px 0 4px;font-size:10.5px;font-weight:700}.acct-row{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 0;display:flex}.acct-row:last-child{border-bottom:none}.acct-row .k{color:var(--muted);flex:none;width:120px;font-size:12px}.field select,select.pill-select{appearance:none;color:var(--ink);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234C4237' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:13px 13px}.field select{padding-right:34px}select.pill-select{background-position:right 9px center;padding-right:28px}select option{color:#211a13;background:#fffdf7}.sel{position:relative}.sel-trigger{text-align:left;width:100%;color:var(--ink);background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:8px;padding:9px 12px;font-size:13.5px;transition:border-color .15s;display:flex}.sel-trigger:hover{border-color:#5d402a4d}.sel-trigger[aria-expanded=true]{border-color:var(--ink-2)}.sel-trigger .val{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sel-trigger .val.placeholder{color:var(--muted)}.sel-trigger .chev{color:var(--ink-2);margin-left:auto;transition:transform .18s;display:inline-flex;transform:rotate(90deg)}.sel-trigger[aria-expanded=true] .chev{transform:rotate(-90deg)}.sel-trigger .chev .ic{width:14px;height:14px}.sel-trigger.pill{border-radius:var(--r-full);gap:6px;width:auto;padding:4px 10px 4px 12px;font-size:12px;font-weight:600}.sel-trigger.pill .val{flex:0 auto}.sel-trigger.pill .chev{margin-left:0}.sel-trigger.pill .chev .ic{width:12px;height:12px}.sel-menu,.cal-pop{-webkit-backdrop-filter:blur(9px)saturate(1.12);backdrop-filter:blur(9px)saturate(1.12);border:1px solid var(--line);border-radius:var(--r-md);background:#fffdf7ed;box-shadow:0 16px 36px -16px #4c311d57,0 2px 6px -3px #4c311d24}.sel-menu{padding:5px;overflow-y:auto}.sel-opt{text-align:left;width:100%;color:var(--ink-2);cursor:pointer;border-radius:8px;align-items:center;gap:9px;padding:8px 10px;font-size:13px;transition:background .12s;display:flex}.sel-opt:hover{color:var(--ink);background:#5d402a12}.sel-opt.sel-on{color:var(--ink);font-weight:650}.sel-opt .check{color:var(--ink);opacity:0;margin-left:auto;display:inline-flex}.sel-opt.sel-on .check{opacity:1}.sel-opt .check .ic{width:14px;height:14px}.date-btn{text-align:left;width:100%;color:var(--ink);background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:9px;padding:9px 12px;font-size:13.5px;transition:border-color .15s;display:flex}.date-btn:hover{border-color:#5d402a4d}.date-btn[aria-expanded=true]{border-color:var(--ink-2)}.date-btn .ic{width:14px;height:14px;color:var(--ink-2)}.date-btn .chev{color:var(--ink-2);margin-left:auto;transition:transform .18s;display:inline-flex;transform:rotate(90deg)}.date-btn[aria-expanded=true] .chev{transform:rotate(-90deg)}.date-btn .placeholder{color:var(--muted)}.cal-pop{padding:14px}.cal-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.cal-head .cal-title{letter-spacing:-.01em;margin:0 auto;font-size:13px;font-weight:700}.cal-nav{width:28px;height:28px;color:var(--ink-2);border:1px solid var(--line);cursor:pointer;background:#ffffff8c;border-radius:9px;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.cal-nav:hover{background:var(--card)}.cal-nav .ic{width:13px;height:13px}.cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.cal-dow{text-align:center;letter-spacing:.06em;color:var(--muted);padding:2px 0 6px;font-size:9.5px;font-weight:800}.cal-day{height:32px;color:var(--ink-2);cursor:pointer;font-variant-numeric:tabular-nums;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;font-size:12.5px;font-weight:600;transition:background .12s;display:flex}.cal-day:hover{color:var(--ink);background:#5d402a14}.cal-day.is-today{border-color:#5d402a4d}.cal-day.is-sel{background:var(--ink);color:#fff7e9;font-weight:700}.cal-day.blank{visibility:hidden;pointer-events:none}.cal-foot{border-top:1px solid var(--line);justify-content:space-between;margin-top:11px;padding-top:11px;display:flex}.cal-foot button{color:var(--ink-2);border-radius:var(--r-full);cursor:pointer;padding:5px 11px;font-size:12px;font-weight:650;transition:background .15s}.cal-foot button:hover{color:var(--ink);background:#5d402a14}.board-tools{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.searchbar{background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-full);flex:240px;align-items:center;gap:9px;max-width:360px;padding:8px 14px;transition:border-color .15s;display:flex}.searchbar:focus-within{border-color:var(--ink-2)}.searchbar .ic{width:14px;height:14px;color:var(--muted)}.searchbar input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:13.5px}.searchbar input::placeholder{color:var(--muted)}.pb{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px;display:grid}@media (max-width:1050px){.pb{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.pb{grid-template-columns:1fr}}.pb-col{background:var(--card-tint);border-radius:var(--r-md);border:1.6px solid #0000;min-height:140px;padding:12px;transition:border-color .15s,background .15s}.pb-col.over{border-color:var(--peri-ink);background:#eee9db}.pb-empty{border:1.6px dashed var(--line-strong);border-radius:var(--r-sm);text-align:center;color:var(--muted);padding:14px 10px;font-size:12px}.pb-card{cursor:grab}.pb-card:active{cursor:grabbing}.pb-card.dragging{opacity:.45;transform:rotate(1.5deg)scale(.99)}.pb-card.paid-pop{animation:.55s cubic-bezier(.3,1.4,.5,1) paidPop}@keyframes paidPop{0%{box-shadow:var(--shadow)}40%{box-shadow:0 0 0 4px var(--good-bg),var(--shadow);transform:scale(1.045)}to{box-shadow:var(--shadow);transform:scale(1)}}.mini-btn{border-radius:var(--r-full);background:var(--card);border:1px solid var(--line-strong);color:var(--ink-2);white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;font-size:11.5px;font-weight:650;transition:background .15s,color .15s;display:inline-flex}.mini-btn:hover{background:var(--card-tint);color:var(--ink)}.mini-btn .ic{width:11px;height:11px}.mini-btn.pay{background:var(--ink);border-color:var(--ink);color:#fff7e9}.mini-btn.pay:hover{opacity:.85;background:var(--ink);color:#fff7e9}.arch{margin-top:16px;padding:0}.arch summary{cursor:pointer;align-items:center;gap:10px;padding:15px 18px;font-size:13px;font-weight:700;list-style:none;display:flex}.arch summary::-webkit-details-marker{display:none}.arch summary .count{background:var(--card-tint);border:1px solid var(--line);border-radius:var(--r-full);color:var(--ink-2);margin-left:auto;padding:1px 8px;font-size:11px;font-weight:700}.arch[open] summary{border-bottom:1px solid var(--line)}.arch .li{padding-left:18px;padding-right:18px}.confetti{z-index:3000;pointer-events:none;position:fixed}.confetti i{border-radius:2px;animation:.95s cubic-bezier(.15,.85,.4,1) forwards cfFly;position:absolute;top:0;left:0}@keyframes cfFly{0%{opacity:1;transform:translate(0)rotate(0)}70%{opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot));opacity:0}}.modal-lg{width:min(560px,100vw - 32px)}.inv-line{align-items:center;gap:12px;padding:4px 0 2px;display:flex}.paid-zone{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.pay-btn{background:var(--good);color:#f2fbe9}.pay-btn:hover{opacity:.88}.inv-paper{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);background:#fffefb;padding:20px 20px 16px;position:relative;overflow:hidden}.inv-paper .ip-head{border-bottom:1.5px solid var(--line-strong);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.inv-paper .ip-biz{letter-spacing:-.01em;font-size:15px;font-weight:800}.inv-paper .ip-title{letter-spacing:.2em;color:var(--muted);flex-direction:column;align-items:flex-end;font-size:12px;font-weight:600;display:flex}.inv-paper .ip-title b{letter-spacing:.02em;color:var(--ink);margin-top:2px;font-size:12.5px}.inv-paper .ip-meta{flex-wrap:wrap;justify-content:space-between;gap:14px;padding:13px 0 4px;display:flex}.inv-paper .ip-client{margin-top:3px;font-size:13.5px;font-weight:700}.inv-paper .ip-sub{color:var(--muted);margin-top:2px;font-size:12px}.inv-paper .ip-dates div{justify-content:flex-end;gap:10px;margin-bottom:3px;font-size:12px;display:flex}.inv-paper .ip-dates span{color:var(--muted)}.inv-paper .ip-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;margin-top:8px;padding:11px 0;font-size:13px;display:flex}.inv-paper .ip-total{color:var(--muted);justify-content:flex-end;align-items:baseline;gap:12px;padding:10px 0 4px;font-size:12.5px;display:flex}.inv-paper .ip-total b{color:var(--ink);letter-spacing:-.01em;font-size:17px}.inv-paper .ip-pay{background:var(--card-tint);border-radius:var(--r-sm);margin-top:10px;padding:10px 13px;font-size:12.5px}.inv-paper .ip-pay .micro-label{margin:0 0 4px}.inv-paper .ip-stamp{background:var(--good-bg);color:var(--good);letter-spacing:.28em;box-shadow:var(--shadow);padding:5px 44px;font-size:12px;font-weight:800;position:absolute;top:34px;right:-34px;transform:rotate(35deg)}.inv-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.inv-actions .pay{border-color:var(--good);color:var(--good)}.inv-actions .pay:hover{background:var(--good-bg)}.status-scrim{z-index:900;pointer-events:none;height:calc(env(safe-area-inset-top,0px) + 10px);-webkit-backdrop-filter:blur(10px)saturate(1.15);backdrop-filter:blur(10px)saturate(1.15);background:linear-gradient(#f8f2e7eb,#f8f2e799 68%,#f8f2e700);position:fixed;top:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 62%,#0000);mask-image:linear-gradient(#000 62%,#0000)}.btn-danger{background:var(--bad);color:#fff3f0}.btn-danger:hover{opacity:.88}.btn-ghost.danger-ghost{border-color:var(--bad-bg);color:var(--bad)}.btn-ghost.danger-ghost:hover{background:var(--bad-bg)}.legal-bg{min-height:100vh;padding:calc(28px + env(safe-area-inset-top)) 18px calc(40px + env(safe-area-inset-bottom));justify-content:center;display:flex}.legal{background:var(--surface);border-radius:24px;width:min(720px,100%);height:fit-content;padding:38px 34px 30px;box-shadow:0 24px 60px -30px #602d1980}.legal .brand{align-items:center;gap:8px;margin-bottom:18px;display:inline-flex}.legal h1{letter-spacing:-.02em;margin-bottom:4px;font-size:24px;font-weight:700}.legal .legal-updated{color:var(--muted);margin-bottom:20px;font-size:12.5px}.legal h2{letter-spacing:-.01em;margin:22px 0 8px;font-size:14.5px;font-weight:700}.legal p{color:var(--ink-2);margin-bottom:10px;font-size:13.5px;line-height:1.65}.legal ul{margin:0 0 10px 18px}.legal li{color:var(--ink-2);margin-bottom:6px;font-size:13.5px;line-height:1.65}.legal a{text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);font-weight:600}.legal .legal-foot{border-top:1px solid var(--line);color:var(--muted);margin-top:28px;padding-top:16px;font-size:12.5px}.legal .legal-foot a{color:var(--ink-2)}.notice-row{align-items:center;gap:14px;padding:16px 18px;display:flex}.sel-search{border:1px solid var(--line);background:#ffffffb8;border-radius:9px;align-items:center;gap:8px;margin:2px 2px 6px;padding:7px 10px;display:flex}.sel-search .ic{width:13px;height:13px;color:var(--muted)}.sel-search input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:13px}.sel-none{text-align:center;color:var(--muted);padding:10px;font-size:12.5px}
