:root{--paper:#f7f4ea;--ink:#16181f;--blue:#1b2fe0;--red:#ff4438;--hi:#ffe14a;--line:#cfd8f3;--mute:#6a6f80;--ok:#17a05d}*{box-sizing:border-box}html,body{margin:0}body{font:16px/1.5 DM Sans,system-ui,sans-serif;color:var(--ink);background:var(--paper);background-image:linear-gradient(var(--line) 1px,transparent 1px);background-size:100% 30px;background-attachment:local;min-height:100vh}body:before{content:"";position:fixed;left:56px;top:0;bottom:0;width:2px;background:var(--red);opacity:.45;pointer-events:none}h1,h2,h3,.marker{font-family:Permanent Marker,cursive;font-weight:400;letter-spacing:.01em}.wrap{max-width:860px;margin:0 auto;padding:0 20px 90px 76px}@media (max-width:640px){body:before{left:14px}.wrap{padding:0 14px 80px 28px}}header.top{display:flex;align-items:center;justify-content:space-between;padding:22px 0}.brand{display:flex;align-items:center;gap:10px;font:26px Permanent Marker;color:var(--blue)}.hero{padding:18px 0 6px}.hero h1{font-size:clamp(34px,6vw,54px);line-height:1.05;margin:0 0 8px}.hl{background:linear-gradient(transparent 55%,var(--hi) 55%);padding:0 4px}.muted{color:var(--mute)}.mono{font-family:ui-monospace,Menlo,monospace;font-size:12.5px}.err{color:var(--red);font-weight:500;margin:6px 0 0}.btn{font:700 15px DM Sans;border:2.5px solid var(--ink);background:#fff;color:var(--ink);padding:9px 16px;border-radius:10px;cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:transform .08s,box-shadow .08s}.btn:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.btn:disabled{opacity:.5;cursor:default}.btn.stamp{background:var(--blue);color:#fff}.btn.good{background:var(--ok);color:#fff}.btn.bad{background:var(--red);color:#fff}.btn.ghost{background:transparent}.btn.sm{padding:5px 11px;font-size:13.5px;box-shadow:2px 2px 0 var(--ink)}.tabs{display:flex;gap:8px;margin:22px 0 18px;flex-wrap:wrap}.tab{font:15px Permanent Marker;border:2.5px solid var(--ink);background:#fff;padding:6px 14px;border-radius:999px;cursor:pointer}.tab.on{background:var(--hi)}.sheet{background:#fff;border:2.5px solid var(--ink);border-radius:14px;padding:20px 22px;box-shadow:5px 5px 0 var(--ink)}.sheet h2{margin:0 0 6px;font-size:26px}label{display:block;font-weight:700;font-size:13px;margin:14px 0 4px}input,textarea,select{width:100%;font:16px DM Sans;padding:10px 12px;border:2.5px solid var(--ink);border-radius:10px;background:var(--paper);color:var(--ink)}input:focus,textarea:focus{outline:3px solid var(--hi)}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width:560px){.row{grid-template-columns:1fr}}.card{background:#fff;border:2.5px solid var(--ink);border-radius:14px;padding:16px 18px;box-shadow:4px 4px 0 var(--ink);margin-bottom:18px;position:relative}.card .text{font:22px/1.25 Permanent Marker;margin:2px 0 8px;word-break:break-word}.card .meta{font-size:13.5px;color:var(--mute)}.card .meta b{color:var(--ink)}.pill{position:absolute;top:-12px;right:14px;font:13px Permanent Marker;padding:3px 12px;border:2.5px solid var(--ink);border-radius:999px;background:var(--hi);transform:rotate(2deg)}.pill.kept{background:var(--ok);color:#fff}.pill.broken{background:var(--red);color:#fff}.pill.lapsed{background:#ddd}.stake{display:inline-block;font:20px Permanent Marker;color:var(--blue)}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}.actions input{width:110px;padding:6px 10px;font-size:14px}.banner{background:var(--hi);border:2.5px solid var(--ink);border-radius:12px;padding:10px 14px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.rec{display:flex;gap:14px;font-size:14px;margin-bottom:14px}.empty{text-align:center;padding:40px 10px;color:var(--mute)}.acct{display:flex;align-items:center;gap:8px;font:700 14px DM Sans;border:2.5px solid var(--ink);background:#fff;border-radius:999px;padding:5px 12px 5px 6px;cursor:pointer}.acct.wrong{background:var(--red);color:#fff}.ava{width:22px;height:22px;border-radius:50%;border:2px solid var(--ink)}.acct-menu{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:2.5px solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--ink);min-width:190px;z-index:20;overflow:hidden}.acct-menu button{display:block;width:100%;text-align:left;font:500 15px DM Sans;padding:10px 14px;border:0;background:none;cursor:pointer}.acct-menu button:hover{background:var(--hi)}.tray{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:50;max-width:min(340px,calc(100vw - 32px))}.tx{display:flex;gap:10px;align-items:flex-start;background:#fff;border:2.5px solid var(--ink);border-radius:12px;padding:10px 12px;box-shadow:3px 3px 0 var(--ink);font-size:14px}.tx .dot{width:10px;height:10px;border-radius:50%;margin-top:6px;background:var(--hi);border:2px solid var(--ink);flex:none}.tx.success .dot{background:var(--ok)}.tx.failed .dot,.tx.rejected .dot{background:var(--red)}.tx .note{display:block;color:var(--mute)}.tx a{color:var(--blue);font-size:13px}.tx .x{margin-left:auto;border:0;background:none;font-size:20px;cursor:pointer;line-height:1}.fade{animation:f .3s ease both}@keyframes f{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
