*{box-sizing:border-box;margin:0;padding:0}:root{color-scheme:light dark;--bg:#ffffff;--surface:#ffffff;--border:#e3ddd0;--border-strong:#cec6b4;--text:#221f1a;--muted:#6f6a5f;--accent:#1f5741;--green:#1f5741;--green-bg:#eaf0ec;--green-border:#b9cdc2;--red:#dc2626;--red-bg:#fef2f2;--red-border:#fecaca;--blue:#2563eb;--blue-bg:#eff6ff;--blue-border:#bfdbfe;--btn-bg:#221f1a;--btn-fg:#ffffff;--btn-bg-hover:#3a352d;--hover:#ececec;--focus-ring:rgba(34,31,26,0.10);--overlay:rgba(34,31,26,0.45);--shadow-sm:0 1px 2px rgba(60,50,35,0.05),0 1px 3px rgba(60,50,35,0.04);--shadow-md:0 1px 3px rgba(60,50,35,0.06),0 4px 10px rgba(60,50,35,0.07);--shadow-lg:0 2px 6px rgba(60,50,35,0.08),0 10px 24px rgba(60,50,35,0.11);--text-2xs:11px;--text-xs:13px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:22px;--nav-h:64px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px}@media (prefers-color-scheme:dark){:root{--bg:#16140f;--surface:#201d17;--border:#302b23;--border-strong:#4a4338;--text:#f2efe6;--muted:#a49c8c;--accent:#6fae91;--green:#6fae91;--green-bg:rgba(111,174,145,0.14);--green-border:rgba(111,174,145,0.38);--red:#f87171;--red-bg:rgba(248,113,113,0.12);--red-border:rgba(248,113,113,0.35);--blue:#60a5fa;--blue-bg:rgba(96,165,250,0.12);--blue-border:rgba(96,165,250,0.35);--btn-bg:#f2efe6;--btn-fg:#221f1a;--btn-bg-hover:#d5cfc0;--hover:#2b2b2b;--focus-ring:rgba(242,239,230,0.16);--overlay:rgba(0,0,0,0.6);--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow-md:0 4px 12px rgba(0,0,0,0.5);--shadow-lg:0 12px 32px rgba(0,0,0,0.6)}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23a49c8c' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;min-height:100dvh}.container{max-width:1100px;margin:0 auto;padding-top:max(var(--space-6),env(safe-area-inset-top));padding-right:max(var(--space-6),env(safe-area-inset-right));padding-bottom:calc(96px + env(safe-area-inset-bottom));padding-left:max(var(--space-6),env(safe-area-inset-left))}.header{justify-content:space-between;flex-wrap:wrap;margin-bottom:var(--space-3)}.header,.header h1{display:flex;align-items:center;gap:var(--space-2)}.brand-lockup,.brand-mark{display:block;width:auto}.brand-lockup{height:58px}@media (prefers-color-scheme:dark){.brand-lockup,.brand-mark,.gate-brand img,.nav-mark{filter:drop-shadow(0 0 1px rgba(255,255,255,.5)) drop-shadow(0 0 3px rgba(255,255,255,.25))}}.brand-mark{display:none;height:38px}.tagline{font-size:var(--text-sm);font-weight:700;color:var(--text);letter-spacing:.08em;text-transform:uppercase;position:relative;top:2px}.whoami{background:none;border:none;padding:0;font:inherit;font-size:var(--text-sm);color:var(--muted);cursor:pointer;transition:color .15s}.whoami b{color:var(--text);font-weight:600}.whoami-switch{text-decoration:underline;text-underline-offset:3px}.whoami:hover{color:var(--text)}@media (max-width:640px){.header{flex-wrap:nowrap;align-items:center;gap:var(--space-3)}.whoami{margin-left:auto;min-width:0;max-width:48%;padding:var(--space-1) var(--space-3);border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:var(--text-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-lockup,.whoami-prefix,.whoami-switch{display:none}.brand-mark{display:block}}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;gap:var(--space-1);padding-top:var(--space-2);border-bottom:1px solid var(--border);margin-bottom:var(--space-6);background:var(--bg);background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px)}.nav-end{display:flex;align-items:center;gap:var(--space-3);margin-left:auto;padding-left:var(--space-4);align-self:center;animation:nav-end-in .18s ease-out}@keyframes nav-end-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.nav-end{animation:none}}.nav-mark{display:block;width:auto;height:26px}.nav-tab{display:flex;flex-direction:column;gap:2px;min-width:0;padding:var(--space-2) var(--space-3) var(--space-3);border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:10px 10px 0 0;text-decoration:none;transition:background .15s,border-color .15s}.nav-tab:hover{background:var(--hover)}.nav-tab.active{border-bottom-color:var(--accent)}.nav-badge,.nav-icon{display:none}.nav-label{font-size:var(--text-sm);font-weight:700;letter-spacing:-.01em;color:var(--muted);transition:color .15s}.nav-tab.active .nav-label,.nav-tab:hover .nav-label{color:var(--text)}.nav-status{font-size:var(--text-xs);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-status.good{color:var(--green);font-weight:600}.nav-status.bad{color:var(--red);font-weight:600}.nav-status.maybe{color:var(--blue);font-weight:600}@media (max-width:640px){.nav{position:fixed;inset:auto 0 0 0;z-index:50;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0;margin:0;padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));background:var(--surface);background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-top:1px solid var(--border);border-bottom:none;box-shadow:none}.nav-end{display:none}.nav-tab{align-items:center;gap:var(--space-1);min-height:48px;padding:var(--space-1) var(--space-1);border-bottom:none;margin-bottom:0;border-radius:12px;color:var(--muted);transition:color .15s}.nav-tab:hover{background:none}.nav-tab:active{background:var(--hover)}.nav-tab.active{color:var(--accent)}.nav-icon{position:relative;width:24px;height:24px}.nav-icon,.nav-icon svg{display:block}.nav-label{font-size:var(--text-2xs);font-weight:600;color:inherit}.nav-tab.active .nav-label{font-weight:700}.nav-status{display:none}.nav-badge{display:block;position:absolute;top:-7px;left:15px;padding:1px 6px;border-radius:999px;font-size:var(--text-2xs);font-weight:700;line-height:1.3;letter-spacing:-.01em;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text);background:var(--hover);box-shadow:0 0 0 2px var(--surface)}.nav-badge.good{color:var(--green);background:var(--green-bg)}.nav-badge.bad{color:var(--red);background:var(--red-bg)}.nav-badge.maybe{color:var(--blue);background:var(--blue-bg)}}.page-title{font-size:var(--text-xl);font-weight:700;letter-spacing:-.03em;margin-bottom:var(--space-5)}.page-narrow,.pot-page{max-width:680px}.pot-side>section:first-child>.section-heading{margin-top:0}.pot-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.pot-head-note{font-weight:400;letter-spacing:0;text-transform:none;text-align:right}.panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm);padding:var(--space-4) var(--space-4);margin-bottom:var(--space-5)}.section-heading{font-size:var(--text-2xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:var(--space-6) 0 var(--space-2)}.page-narrow>.section-heading:first-child{margin-top:0}.panel-note{color:var(--muted);font-size:var(--text-xs);line-height:1.55;margin-bottom:var(--space-4)}.panel-empty{color:var(--muted);font-size:var(--text-sm);padding:var(--space-2) 0 var(--space-1)}.gate{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-6)}.gate-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-md);padding:var(--space-8) var(--space-7);width:min(420px,100%);text-align:center}.gate-brand{margin-bottom:var(--space-4)}.gate-brand img{display:block;width:min(300px,100%);height:auto;margin:0 auto}.gate-card p{color:var(--muted);font-size:var(--text-base);line-height:1.5;margin-bottom:var(--space-6)}.gate-card form{display:flex;flex-direction:column;gap:var(--space-2)}@media (min-width:480px){.gate-card form{flex-direction:row}}input[type=text]{background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;color:var(--text);font-size:var(--text-base);padding:var(--space-3) var(--space-3);width:100%;outline:none;transition:border-color .15s,box-shadow .15s}input[type=text]::placeholder{color:var(--muted)}input[type=text]:focus{border-color:var(--text);box-shadow:0 0 0 3px var(--focus-ring)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=text]:focus-visible,select:focus-visible{outline:none}input[type=text]:disabled{opacity:.6}select{background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2371717a' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center;border:1px solid var(--border-strong);border-radius:10px;color:var(--text);font-size:var(--text-base);padding:var(--space-3) var(--space-7) var(--space-3) var(--space-3);width:100%;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .15s,box-shadow .15s}select:invalid{color:var(--muted)}select:focus{border-color:var(--text);box-shadow:0 0 0 3px var(--focus-ring)}.btn{background:var(--btn-bg);border:none;border-radius:10px;color:var(--btn-fg);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:var(--space-3) var(--space-5);white-space:nowrap;transition:background .15s}.btn:hover{background:var(--btn-bg-hover)}.btn:disabled{opacity:.4;cursor:default}.board-hero .page-title{margin-bottom:var(--space-2)}.add-section{position:relative;margin-bottom:var(--space-8);max-width:520px}.add-section label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text);margin-bottom:var(--space-2)}.add-section input[type=text]{padding:var(--space-4) var(--space-4)}.suggestions{position:absolute;top:100%;left:0;right:0;z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);margin-top:var(--space-1);max-height:320px;overflow-y:auto;list-style:none;padding:var(--space-1)}.suggestions li button{background:none;border:none;border-radius:8px;color:var(--text);cursor:pointer;display:block;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);text-align:left;width:100%;transition:background .1s}.suggestions li button:hover{background:var(--hover)}.status-msg{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--muted)}.status-msg.error{color:var(--red)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.img-wrap{position:relative;padding:var(--space-4) var(--space-4) 0}.card img{width:100%;height:auto;display:block;border-radius:4.75%/3.4%}.foil-badge{top:18px;right:18px;z-index:2;padding:3px var(--space-2);border-radius:999px;font-size:var(--text-2xs);font-weight:700;letter-spacing:.02em;color:#fff;background:linear-gradient(120deg,#f472b6,#a78bfa,#38bdf8,#4ade80);background-size:300% 300%;box-shadow:0 2px 8px rgba(0,0,0,.18)}.foil-badge,.foil-sheen{position:absolute;animation:foilshift 6s ease-in-out infinite}.foil-sheen{inset:10px 10px 0;border-radius:4.75%/3.4%;pointer-events:none;mix-blend-mode:overlay;background:linear-gradient(115deg,rgba(255,0,128,.35),rgba(0,200,255,.35),rgba(180,255,0,.35),rgba(255,0,200,.35));background-size:250% 250%}@keyframes foilshift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@media (hover:hover){.img-wrap:hover .foil-sheen:not(.sweep){animation:none;background-position:var(--foil-x,50%) var(--foil-y,50%);transition:background-position .15s ease-out}}.foil-sheen.sweep{animation:foilsweep .8s ease-in-out;filter:saturate(1.6) brightness(1.15)}@keyframes foilsweep{0%{background-position:0 50%}to{background-position:100% 50%}}.filters{flex-wrap:wrap;align-items:center;margin-bottom:var(--space-4)}.filters,.status-chips{display:flex;gap:var(--space-2)}.filter-chip{background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;color:var(--muted);cursor:pointer;font-size:var(--text-xs);font-weight:500;padding:var(--space-2) var(--space-3);transition:border-color .15s,color .15s,background .15s}.filter-chip:hover{border-color:var(--text);color:var(--text)}.filter-chip.active{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}.filter-chip .count{margin-left:var(--space-1);opacity:.55;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.person-select{display:inline-block;width:auto;max-width:100%;font-size:var(--text-xs);padding:var(--space-2) var(--space-7) var(--space-2) var(--space-3);border-radius:999px;background-position:right 12px center;color:var(--muted)}.person-select.active{background-color:var(--btn-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23ffffff' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");border-color:var(--btn-bg);color:var(--btn-fg)}@media (prefers-color-scheme:dark){.person-select.active{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2318181b' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}}.view-cycle{display:none;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;color:var(--muted);cursor:pointer;padding:0;transition:border-color .15s,color .15s,background .15s}.view-cycle:hover{border-color:var(--text);color:var(--text)}input.search-input{flex:1 1 150px;min-width:130px;width:auto;font-size:var(--text-xs);padding:var(--space-2) var(--space-3);border-radius:999px}.search-toggle{display:none;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;color:var(--muted);cursor:pointer;padding:0;transition:border-color .15s,color .15s,background .15s}.search-toggle:hover{border-color:var(--text);color:var(--text)}.search-toggle.active{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}@media (max-width:640px){.status-chips{order:1;flex-basis:100%}.status-chips .filter-chip{flex:1 0 auto;white-space:nowrap;text-align:center}.person-select{order:2;flex:1 1;min-width:0}.search-toggle{order:3;display:flex}.view-cycle{order:4;display:flex}input.search-input{order:5;flex-basis:100%;display:none}input.search-input.open{display:block}.grid.cols-2{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.grid.cols-1 .card-name{font-size:var(--text-lg)}.grid.cols-1 .offers,.grid.cols-1 .price,.grid.cols-1 .seeker{font-size:var(--text-base)}.grid.cols-1 .btn-edit,.grid.cols-1 .btn-fulfill,.grid.cols-1 .btn-offer,.grid.cols-1 .btn-remove{font-size:var(--text-base);padding:var(--space-3) var(--space-3)}.grid.cols-2 .card-body{padding:var(--space-2);gap:var(--space-1)}.grid.cols-2 .card-name{flex-wrap:wrap}.grid.cols-2 .card-name,.grid.cols-2 .offers,.grid.cols-2 .price,.grid.cols-2 .seeker{font-size:var(--text-xs)}.grid.cols-2 .owner-row{flex-direction:column;gap:var(--space-1)}.grid.cols-2 .btn-edit,.grid.cols-2 .btn-fulfill,.grid.cols-2 .btn-offer,.grid.cols-2 .btn-remove{font-size:var(--text-xs);padding:var(--space-2)}}.card-body{padding:var(--space-4);display:flex;flex-direction:column;flex:1 1}.card-name{font-weight:600;font-size:var(--text-base);letter-spacing:-.01em;display:block}.price{display:block;margin-top:2px;font-size:var(--text-xs);font-weight:400;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.price,.seeker{color:var(--muted)}.seeker{margin-top:var(--space-3);font-size:var(--text-sm)}.seeker b{color:var(--text);font-weight:600}.offers{margin-top:2px;font-size:var(--text-sm);color:var(--green);font-weight:500}.card-actions{margin-top:auto;padding-top:var(--space-4);flex-direction:column}.card-actions,.owner-row{display:flex;gap:var(--space-2)}.owner-row>button{flex:1 1}.btn-edit{background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;color:var(--text);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:var(--space-2) var(--space-3);transition:border-color .15s}.btn-edit:hover{border-color:var(--text)}.btn-offer{background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;color:var(--text);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:var(--space-2) var(--space-3);width:100%;transition:border-color .15s,background .15s,color .15s}.btn-offer:hover{border-color:var(--text)}.btn-offer.active{background:var(--green-bg);border-color:var(--green-border);color:var(--green)}.btn-remove{background:none;border:1px solid transparent;border-radius:10px;color:var(--muted);cursor:pointer;font-size:var(--text-sm);font-weight:500;padding:var(--space-2) var(--space-3);width:100%;transition:color .15s,border-color .15s,background .15s}.btn-remove.confirm,.btn-remove:hover{color:var(--red);border-color:var(--red-border);background:var(--red-bg)}.btn-fulfill,.btn-remove.confirm{font-weight:600}.btn-fulfill{background:var(--blue-bg);border:1px solid var(--blue-border);border-radius:10px;color:var(--blue);cursor:pointer;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);width:100%;transition:border-color .15s}.btn-fulfill:hover{border-color:var(--blue)}.fulfill-picker{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--muted)}.fulfill-picker button{background:var(--surface);border:1px solid var(--blue-border);border-radius:999px;color:var(--blue);cursor:pointer;font-size:var(--text-xs);font-weight:500;padding:var(--space-1) var(--space-3);transition:background .15s}.fulfill-picker button:hover{background:var(--blue-bg)}.acquire-row .picker-cancel,.fulfill-picker .picker-cancel{border-color:var(--border-strong);color:var(--muted)}.acquire-row .picker-cancel:hover,.fulfill-picker .picker-cancel:hover{background:var(--hover)}.acquire-fallback{flex-direction:column;width:100%}.acquire-fallback,.acquire-row{display:flex;gap:var(--space-1)}.acquire-row{align-items:center}.acquire-row .btn-fulfill{width:auto;flex:none}.acquire-field{display:flex;align-items:center;gap:var(--space-2);flex:1 1;min-width:0;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;padding:0 var(--space-3);transition:border-color .15s,box-shadow .15s}.acquire-field:focus-within{border-color:var(--text);box-shadow:0 0 0 3px var(--focus-ring)}.acquire-currency{font-size:var(--text-sm);color:var(--muted);flex:none}.acquire-field input[type=text]{background:none;border:none;border-radius:0;padding:var(--space-2) 0;min-width:0;font-weight:600}.acquire-field input[type=text]:focus{box-shadow:none}.acquire-note{color:var(--muted);font-size:var(--text-xs)}.acquire-note.error{color:var(--red)}.card.done{opacity:.65}.card.done img{filter:grayscale(.7)}.card.done .offers{color:var(--muted)}.done-badge{position:absolute;top:18px;left:18px;z-index:2;padding:3px var(--space-2);border-radius:999px;font-size:var(--text-2xs);font-weight:700;letter-spacing:.02em;color:#fff;background:rgba(24,24,27,.75);box-shadow:0 2px 8px rgba(0,0,0,.18)}.empty{color:var(--muted);text-align:center;padding:80px 0;font-size:var(--text-base)}.modal-overlay{position:fixed;inset:0;z-index:100;background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.modal{background:var(--surface);border-radius:20px;box-shadow:var(--shadow-lg);width:min(640px,100%);max-height:86vh;display:flex;flex-direction:column;overflow:hidden}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border)}.modal-title{font-size:var(--text-lg);font-weight:700;letter-spacing:-.01em}.modal-sub{font-size:var(--text-xs);color:var(--muted);margin-top:2px}.icon-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:var(--text-base);line-height:1;padding:var(--space-1);border-radius:8px;transition:color .15s,background .15s}.icon-btn:hover{color:var(--text);background:var(--hover)}.icon-btn.confirm{color:var(--red);background:var(--red-bg);border:1px solid var(--red-border);font-size:var(--text-xs);font-weight:600;padding:var(--space-1) var(--space-2);white-space:nowrap}.modal-body{padding:var(--space-5) var(--space-6);overflow-y:auto}.modal-body .empty{padding:var(--space-7) 0}.print-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.print{background:none;border:2px solid transparent;border-radius:12px;cursor:pointer;padding:var(--space-1);overflow:hidden;transition:border-color .15s,transform .15s}.print:hover{transform:translateY(-2px)}.print img{width:100%;display:block;border-radius:4.75%/3.4%}.print.selected{border-color:var(--accent)}.print span{display:block;font-size:var(--text-2xs);color:var(--muted);padding:var(--space-1) 3px 2px;text-align:center;line-height:1.3}.print-price{display:block;color:var(--text);font-weight:600;margin-top:1px}.modal-amount{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border)}.modal-amount-basis{font-size:var(--text-xs);color:var(--muted)}.modal-amount-basis.fail{color:var(--red)}.modal-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-6) calc(var(--space-4) + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.modal-actions{display:flex;gap:var(--space-2)}.btn-ghost{background:none;border:1px solid var(--border-strong);border-radius:10px;color:var(--text);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:var(--space-3) var(--space-4);transition:border-color .15s}.btn-ghost:hover{border-color:var(--text)}.foil-toggle{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.foil-toggle input{position:absolute;opacity:0;width:0;height:0}.foil-swatch{width:34px;height:20px;border-radius:999px;background:var(--border-strong);position:relative;transition:background .2s}.foil-swatch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform .2s}.foil-toggle input:checked+.foil-swatch{background:linear-gradient(120deg,#f472b6,#a78bfa,#38bdf8,#4ade80)}.foil-toggle input:checked+.foil-swatch:after{transform:translateX(14px)}@media (max-width:480px){.modal-foot{flex-direction:column;align-items:stretch}.modal-actions{justify-content:flex-end}}@media (max-width:600px){.modal-overlay{padding:0}.modal{width:100%;height:100dvh;max-height:none;border-radius:0}.modal-head{padding-top:calc(var(--space-5) + env(safe-area-inset-top))}}.night-verdict.on{background:var(--blue-bg);border-color:var(--blue-border)}.night-verdict-date{font-size:var(--text-lg);font-weight:700;letter-spacing:-.02em}.night-verdict-count{font-size:var(--text-xs);color:var(--muted);margin-top:2px}.night-verdict.on .night-verdict-count{color:var(--blue);font-weight:600}.night-verdict.called{background:var(--green-bg);border-color:var(--green)}.night-verdict.called .night-verdict-count{color:var(--green);font-weight:600}.night-call{margin-top:var(--space-3)}.night-who{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.night-chip{font-size:var(--text-xs);font-weight:600;padding:3px var(--space-2);border-radius:999px;background:var(--surface);border:1px solid var(--border);white-space:nowrap}.night-chip.self{border-color:var(--border-strong);background:var(--hover)}.month-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin:var(--space-5) 0 var(--space-2)}.month-label{font-weight:700;font-size:var(--text-base)}.calendar{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:var(--space-1);gap:var(--space-1);margin-inline:calc(var(--space-4) * -1)}@media (min-width:641px){.calendar{margin-inline:0}}.cal-weekday{background:none;border:none;padding:var(--space-1) 0 var(--space-1);font:inherit;font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;border-radius:6px}.cal-weekday:hover:not(:disabled){color:var(--text);background:var(--hover)}.cal-weekday:disabled{opacity:.4;cursor:default}.cal-blank,.cal-cell{aspect-ratio:1}.cal-cell{position:relative;min-width:0}@media (pointer:coarse){.cal-cell{min-height:44px}}.cal-day{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:9px;font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--text);cursor:pointer;transition:border-color .12s,background .12s}.cal-day:before{content:"";position:absolute;inset:auto 0 0 0;height:var(--fill,0);background:currentColor;opacity:.18;transition:height .15s}.cal-day:hover:not(:disabled){border-color:var(--border-strong)}.cal-day.today{box-shadow:inset 0 0 0 1px var(--border-strong)}.cal-day.mine{background:var(--hover);border-color:var(--border-strong)}.cal-day.mine:after{content:"";position:absolute;bottom:3px;left:3px;width:5px;height:5px;border-radius:50%;background:currentColor}.cal-day.quorum{background:var(--blue-bg);border-color:var(--blue-border);color:var(--blue)}.cal-day.crowned{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue-border)}.cal-day.called{background:var(--green-bg);border-color:var(--green);color:var(--green);box-shadow:0 0 0 2px var(--green-border)}.cal-day.played{background:var(--accent);border-color:var(--accent);color:var(--btn-fg)}.cal-day.played:before{display:none}.cal-day.past{opacity:.35;cursor:default}.cal-day.played.past{opacity:1}.cal-call{position:absolute;right:2px;bottom:2px;width:19px;height:19px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface);color:var(--muted);font:inherit;font-size:var(--text-2xs);line-height:1;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.cal-call:hover{border-color:var(--green);color:var(--green)}.cal-call.on{background:var(--green);border-color:var(--green);color:var(--btn-fg)}.cal-cell.played .cal-call.on{background:var(--surface);border-color:var(--surface);color:var(--accent)}.cal-num{position:relative;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-cell.callable .cal-num{transform:translate(-5px,-5px)}.cal-count{position:absolute;top:2px;right:4px;font-size:var(--text-2xs);font-weight:700;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-day.mine .cal-count{color:var(--text)}.cal-day.quorum .cal-count{color:var(--blue)}.cal-day.called .cal-count{color:var(--green)}.cal-day.played .cal-count{color:var(--btn-fg);opacity:.75}.cal-legend{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-3);margin-top:var(--space-3);font-size:var(--text-xs);color:var(--muted)}.cal-legend-item{display:flex;align-items:center;gap:var(--space-1)}.cal-swatch{width:10px;height:10px;border-radius:3px;border:1px solid var(--border)}.cal-swatch.mine{background:var(--text);border-color:var(--text);border-radius:50%;width:6px;height:6px}.cal-swatch.quorum{background:var(--blue-bg);border-color:var(--blue-border)}.cal-swatch.called{background:var(--green-bg);border-color:var(--green)}.cal-swatch.played{background:var(--accent);border-color:var(--accent)}.pot-standings{--pot-name:104px;--pot-amount:84px;display:flex;flex-direction:column;padding-bottom:var(--space-3)}.pot-you-label{font-size:var(--text-2xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}.pot-you-figure{font-size:var(--text-xl);font-weight:700;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pot-you-figure.up{color:var(--green)}.pot-you-figure.down{color:var(--red)}.pot-you-figure.flat{color:var(--muted)}.pot-toggle{justify-content:space-between;gap:var(--space-3);width:100%;min-height:44px;margin-top:var(--space-3);padding:var(--space-2) 0;border:none;border-top:1px solid var(--border);background:none;color:var(--muted);font-size:var(--text-2xs);font-weight:700;line-height:1;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}.pot-toggle,.pot-toggle-end{display:flex;align-items:center}.pot-toggle-end{gap:var(--space-2)}.pot-toggle-hint{font-weight:400;letter-spacing:0;text-transform:none;white-space:nowrap}.pot-toggle:hover{color:var(--text)}.pot-toggle[aria-expanded=false]{position:relative;min-height:0;padding:var(--space-3) 0 0}.pot-toggle[aria-expanded=false]:after{content:"";position:absolute;inset:-12px -4px -12px -4px}.pot-chevron{display:block;transition:transform .2s ease}.pot-toggle[aria-expanded=true] .pot-chevron{transform:rotate(180deg)}.pot-rows-clip{display:grid;grid-template-rows:0fr;transition:grid-template-rows .24s ease}.pot-rows-clip.open{grid-template-rows:1fr}.pot-rows{display:flex;flex-direction:column;min-height:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.pot-rows-clip{transition:none}}.pot-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0}.pot-row-name{flex:0 0 var(--pot-name);font-size:var(--text-xs);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pot-row.self .pot-row-name{font-weight:700}.pot-row-amount{flex:0 0 var(--pot-amount);text-align:right;font-size:var(--text-xs);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.pot-row.up .pot-row-amount{color:var(--green)}.pot-row.down .pot-row-amount{color:var(--red)}.pot-track{position:relative;flex:1 1;min-width:0;height:12px}.pot-zero{position:absolute;left:50%;top:-11px;bottom:-11px;width:1px;background:var(--border)}.pot-bar{position:absolute;top:0;height:12px;border-radius:2px}.pot-row.up .pot-bar{background:var(--green)}.pot-row.down .pot-bar{background:var(--red)}.pot-even{color:var(--muted);font-size:var(--text-sm)}.credit-form,.credit-row{display:flex;flex-direction:column;gap:var(--space-3)}.credit-row{--control-h:40px;align-items:stretch;font-size:var(--text-sm)}.credit-row .card-search-inline input[type=text],.credit-row .credit-amount,.credit-row .credit-note-inline,.credit-row select,.direction-toggle{height:var(--control-h)}.credit-row select{width:100%;font-size:var(--text-sm);padding:var(--space-2) var(--space-7) var(--space-2) var(--space-3);background-position:right 12px center}.credit-row .card-search-inline{flex:none;width:100%}.credit-row .credit-note-inline{width:100%;min-width:0;font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.direction-toggle{display:flex;border:1px solid var(--border-strong);border-radius:9px;overflow:hidden}.direction-toggle button{flex:1 1;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;background:var(--surface);border:none;border-left:1px solid var(--border-strong);color:var(--muted);cursor:pointer;font-size:var(--text-xs);font-weight:600;line-height:1.2;padding:0 var(--space-4);transition:color .15s,background .15s;white-space:nowrap}.direction-toggle button:first-child{border-left:none}.direction-toggle button.active{background:var(--btn-bg);color:var(--btn-fg)}.credit-amount{display:flex;align-items:center;gap:var(--space-1);width:100%;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;padding:0 var(--space-3);transition:border-color .15s,box-shadow .15s}.credit-amount:focus-within{border-color:var(--text);box-shadow:0 0 0 3px var(--focus-ring)}.credit-amount-cur{flex:none;font-size:var(--text-xs);color:var(--muted)}.credit-amount input[type=text]{width:100%;min-width:0;height:100%;background:none;border:none;border-radius:0;padding:0;font-size:var(--text-sm);font-weight:600}.credit-amount input[type=text]:focus{box-shadow:none}.card-search-inline{position:relative;width:100%}.card-search-inline input[type=text]{width:100%;font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.card-search-inline .suggestions{width:max-content;min-width:100%;max-width:280px}@media (max-width:640px){.credit-row{flex-direction:column;align-items:stretch}.direction-toggle{align-self:stretch}.direction-toggle button{flex:1 1}.credit-amount,.credit-row .card-search-inline,.credit-row .credit-note-inline,.credit-row select{width:100%;flex:none}.card-search-inline input[type=text],.credit-row select,.direction-toggle button{padding:var(--space-3) var(--space-4);font-size:var(--text-base);line-height:1.2}.credit-row select{padding-right:var(--space-7)}}.credit-submit{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.credit-form .status-msg{margin-top:0}.pot-history .entries{margin-left:calc(-1 * max(var(--space-6), env(safe-area-inset-left)));margin-right:calc(-1 * max(var(--space-6), env(safe-area-inset-right)));padding:0;border-width:1px 0 0;border-radius:0;box-shadow:none}.entries .entry,.entries .entry-date{padding-left:max(var(--space-6),env(safe-area-inset-left));padding-right:max(var(--space-6),env(safe-area-inset-right))}.entry{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(78px,max-content);grid-template-areas:"thumb main   amount" "thumb meta   amount";grid-column-gap:var(--space-3);column-gap:var(--space-3);grid-row-gap:var(--space-1);row-gap:var(--space-1);align-items:start;padding-top:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.entry-thumb{grid-area:thumb}.entry-main{grid-area:main}.entry-meta{grid-area:meta}.entry-amount{grid-area:amount;justify-self:end;align-self:center}.entry-date-cell{display:none;grid-area:date;color:var(--muted);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.entry .btn-remove{display:none;grid-area:act;justify-self:end;width:auto;min-width:92px}.entry-date{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) 0 var(--space-1);font-size:var(--text-2xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.entry-date:after{content:"";flex:1 1;height:1px;background:var(--border)}.entry-day.first .entry-date{padding-top:var(--space-3)}.entry-head{display:none;font-size:var(--text-2xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.entry-head-value{text-align:right}.entry-thumb{width:56px;height:78px;flex:none;align-self:center;border-radius:4px;overflow:hidden}.entry-slot{display:flex;width:100%;height:100%;align-items:center;justify-content:center;border:1px dashed var(--border-strong);border-radius:4px;color:var(--muted)}.entry-thumb img{display:block;width:100%;height:100%;object-fit:cover}.entry-main{min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.entry-title{font-size:var(--text-base);font-weight:600;line-height:1.3}.entry-parties{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);line-height:1.35}.entry-arrow{color:var(--muted)}.entry-note{line-height:1.4}.entry-meta,.entry-note{color:var(--muted);font-size:var(--text-xs)}.entry-amount{font-size:var(--text-base);font-weight:700;letter-spacing:-.01em;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.entry-amount.down{color:var(--red)}.entry-amount.up{color:var(--green)}.entry-amount.flat{color:var(--muted);font-weight:600}.entry-amount.has-note{-webkit-text-decoration:underline dotted var(--border);text-decoration:underline dotted var(--border);text-underline-offset:3px;cursor:help}.entry-day>.entry-swipe:last-child .entry{border-bottom:none}.entry-day:last-child>.entry-swipe:last-child .entry{padding-bottom:0}.entry-swipe{position:relative;overflow:hidden;touch-action:pan-y}.entry-swipe .entry{position:relative;background:var(--surface);transition:transform .24s cubic-bezier(.2,.8,.2,1)}.entry-swipe.open .entry{transform:translateX(calc(var(--plate) * -1))}@keyframes entry-hint-peek{0%{transform:translateX(0);animation-timing-function:cubic-bezier(.05,.7,.1,1)}26%{transform:translateX(-64px);animation-timing-function:cubic-bezier(.3,0,0,1)}40%{transform:translateX(-56px);animation-timing-function:linear}54%{transform:translateX(-56px);animation-timing-function:cubic-bezier(.3,0,0,1)}to{transform:translateX(0)}}.entry-swipe.hint .entry{animation:entry-hint-peek .82s .25s}@media (prefers-reduced-motion:reduce){.entry-swipe.hint .entry{animation:none}}.entry-plate{position:absolute;top:0;right:0;bottom:0;width:var(--plate);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0 var(--space-2);border:none;font-size:var(--text-xs);font-weight:600;text-align:center;line-height:1.3}.entry-plate.remove{background:var(--red);color:var(--btn-fg);cursor:pointer}.entry-plate.locked{background:var(--hover);color:var(--muted)}.pot-toast{position:fixed;z-index:60;left:max(var(--space-4),env(safe-area-inset-left));right:max(var(--space-4),env(safe-area-inset-right));bottom:calc(96px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:12px;background:var(--btn-bg);color:var(--btn-fg);font-size:var(--text-xs);box-shadow:var(--shadow-lg)}.pot-toast svg{flex:none;opacity:.7}@media (min-width:900px){.pot-page{max-width:none}.pot-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-column-gap:var(--space-7);column-gap:var(--space-7);align-items:start}.pot-history{grid-column:1;grid-row:1}.pot-side{grid-column:2;grid-row:1;position:-webkit-sticky;position:sticky;top:calc(var(--nav-h) + var(--space-4))}.pot-history>.section-heading:first-child{margin-top:0}.pot-history .entries{margin-left:0;margin-right:0;padding:0;border-width:1px;border-radius:14px;box-shadow:var(--shadow-sm);overflow:hidden}.entries .entry,.entry-head{padding-left:var(--space-4);padding-right:var(--space-4)}.entry,.entry-head{grid-template-columns:44px minmax(0,1fr) 88px 60px 96px 96px;column-gap:var(--space-3)}.entry{grid-template-areas:"thumb main meta date amount act";align-items:center}.entry-head{display:grid;align-items:center;padding-top:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.entry-date-cell{display:block}.entry-date{display:none}.entry-day>.entry-swipe:last-child .entry{border-bottom:1px solid var(--border)}.entry-day:last-child>.entry-swipe:last-child .entry{border-bottom:none}.entry-thumb{width:44px;height:62px;align-self:start}.entry-meta-prefix{display:none}.entry-day:last-child>.entry-swipe:last-child .entry{padding-bottom:var(--space-3)}.entry .btn-remove{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.entry-swipe.hint .entry{animation:none}.pot-toast{left:auto;right:var(--space-6);bottom:var(--space-6);width:max-content;max-width:360px}.entry-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pot-toggle{display:none}.pot-rows-clip{display:block;padding-top:var(--space-3);border-top:1px solid var(--border);margin-top:var(--space-3)}.pot-rows{overflow:visible}}@media (pointer:coarse){.person-select,.sort-select{font-size:var(--text-base);padding-top:var(--space-2);padding-bottom:var(--space-2)}.credit-row{--control-h:44px}.card-search-inline input[type=text],.credit-amount input[type=text],.credit-row .credit-note-inline,.credit-row select,input.search-input{font-size:var(--text-base)}.icon-btn{min-width:44px;min-height:44px;padding:var(--space-2)}.icon-btn.confirm{padding:var(--space-2) var(--space-3)}.acquire-row button,.filter-chip,.fulfill-picker button{padding:var(--space-2) var(--space-3);min-height:36px}.filter-chip{display:inline-flex;align-items:center}.whoami{padding:var(--space-2) var(--space-3)}.cal-weekday{min-height:40px;padding:var(--space-2) 0}.cal-call{width:28px;height:28px;font-size:var(--text-sm)}.cal-call:after{content:"";position:absolute;inset:-8px -2px -2px -8px}.foil-toggle{min-height:44px}}