:root{--paper:#f7f0ee;--card:#fffdfb;--ink:#3a2328;--ink-soft:#6e555a;--wine:#6b2234;--wine-dark:#4e1826;--gold:#b8935a;--gold-line:#d9c3a0;--line:#e6d6d4;--track:#eadcd9;--pending:#7a5a22;--serif:"Bodoni Moda", Georgia, serif;--sans:"Figtree", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--paper) url(/img/paper.jpg) repeat;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;background-size:300px;font-size:15px}button,input,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--wine);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.shell{flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex}.page{flex-direction:column;flex:1;gap:18px;padding:30px 20px 110px;display:flex;position:relative}.h1{font-family:var(--serif);margin:0;font-size:42px;font-weight:400;line-height:1}.h2{font-family:var(--serif);margin:0;font-size:24px;font-weight:400}.muted{color:var(--ink-soft)}.small{font-size:13px}.card-paper{background:var(--card) url(/img/paper.jpg) repeat;box-shadow:0 1px 0 var(--line), 0 18px 30px -20px #4a182473;background-size:240px;border-radius:4px}.card-inner{border:1px solid var(--gold-line);border-radius:2px;margin:8px}.btn{background:var(--wine);height:48px;color:var(--card);border:0;border-radius:24px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:600;display:inline-flex}.btn:hover{background:var(--wine-dark)}.btn:disabled{opacity:.6;cursor:default}.btn-ghost{color:var(--wine);border:1px solid var(--wine);background:0 0}.btn-ghost:hover{background:#6b22340f}.icon-btn{width:44px;height:44px;color:var(--ink);background:0 0;border:0;border-radius:22px;justify-content:center;align-items:center;display:inline-flex}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-soft);font-size:13px}.input{border:1px solid var(--line);background:var(--card);border-radius:8px;outline:none;height:48px;padding:0 14px}.input:focus{border-color:var(--wine)}.row-link{border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:0 0;border-top:0;border-left:0;border-right:0;grid-template-columns:1fr auto;row-gap:8px;width:100%;padding:12px 0;text-decoration:none;display:grid}.row-link:last-child{border-bottom:0}.bar{background:var(--track);grid-column:1/-1;height:3px;display:block}.bar>span{background:var(--wine);height:3px;display:block}.nav{z-index:10;background:var(--card);border-top:1px solid var(--line);padding:4px 6px calc(10px + env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0}.nav-inner{max-width:480px;margin:0 auto;display:flex}.nav button{color:var(--ink-soft);background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:3px;min-height:52px;padding:8px 0;font-size:11px;font-weight:500;display:flex}.nav button[aria-current=page]{color:var(--wine);font-weight:600}.sync{z-index:20;background:var(--card);border-radius:14px;padding:6px 12px;font-size:12px;position:fixed;top:10px;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #3a23281f}.sheet-backdrop{z-index:30;background:#3a232859;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--card);width:100%;max-width:480px;padding:22px 20px calc(22px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;flex-direction:column;gap:14px;display:flex}.chip{background:0 0;border:1px solid #d9c3c2;border-radius:20px;height:40px;padding:0 14px;font-size:13px;font-weight:500}.chip[aria-selected=true]{background:var(--ink);color:var(--card);border-color:var(--ink)}.check{text-align:left;background:0 0;border:0;border-bottom:1px solid #f0e5e3;align-items:center;gap:12px;width:100%;min-height:46px;padding:6px 0;display:flex}.box{border:1.5px solid #a8898e;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.check[aria-pressed=true] .box{background:var(--wine);border-color:var(--wine);color:var(--card)}.check[aria-pressed=true] .t{color:var(--ink-soft);text-decoration:line-through;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold)}.locked{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 22px;display:flex}img[aria-hidden=true]{pointer-events:none;-webkit-user-select:none;user-select:none}
