:root{--paper:#faf9f1;--desk:#e6e5d8;--ink:#22392e;--received:#26365e;--reward:#dde8bf;--line:#c5d0bc;--muted:#4a5a50;--heading:"Shippori Mincho", serif;--body:"Klee One", serif;--ui:"BIZ UDPGothic", sans-serif;--space:24px}*{box-sizing:border-box}body{background:var(--desk);color:var(--ink);font-family:var(--ui);margin:0;font-size:14px;line-height:1.8}button,input,select{font:inherit;color:inherit}button,a,input,select{touch-action:manipulation}button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:0;min-height:44px;padding:9px 16px}button:hover{background:var(--reward)}button:disabled{opacity:.45;cursor:default}a{color:inherit}input,select{border:0;border-bottom:1px solid var(--ink);background:0 0;border-radius:0;width:100%;min-height:48px;padding:8px 4px}input::placeholder{color:var(--muted);opacity:.85}input[type=checkbox]{width:20px;min-height:20px;accent-color:var(--ink)}:focus-visible{outline:2px solid var(--received);outline-offset:4px}label{font-size:13px;display:block}label input,label select{margin-top:8px}h1,h2,h3{font-family:var(--heading);font-weight:600}h1{letter-spacing:.06em;white-space:pre-line;margin:12px 0 20px;font-size:36px;line-height:1.6}h2{margin:0 0 18px;font-size:23px}h3{font-size:18px}p{margin:8px 0 16px}.intro{font-family:var(--body);white-space:pre-line;font-size:19px;line-height:2}.primary{border-color:var(--ink);background:var(--reward);min-width:140px;font-weight:700}.primary:hover{background:var(--ink);color:var(--paper)}.login{place-items:center;min-height:100dvh;padding:36px 20px;display:grid}.login-paper{background:var(--paper);border-top:3px solid var(--ink);width:100%;max-width:580px;padding:58px 64px 40px;box-shadow:0 8px 36px #22392e0a}.wordmark{font-family:var(--heading);margin:0 0 48px;font-size:25px}.wordmark span{font-family:var(--ui);letter-spacing:.15em;color:var(--muted);font-size:11px;display:block}.login h1{margin-bottom:24px}.login .intro{margin-bottom:40px}.login form{gap:24px;display:grid}.login form button{width:100%}.email-address{overflow-wrap:anywhere}.footnote{color:var(--muted);margin:30px 0 0;font-size:12px}.workspace{grid-template-columns:230px 1fr;max-width:1600px;min-height:100dvh;margin:0 auto;display:grid}.workspace aside{flex-direction:column;height:100dvh;padding:36px 24px;display:flex;position:sticky;top:0}.brand{font-family:var(--heading);font-size:27px;line-height:1.6;text-decoration:none}.brand span{font-family:var(--ui);color:var(--muted);margin-top:5px;font-size:11px;display:block}.workspace nav{gap:12px;margin-top:65px;display:grid}.workspace nav button{text-align:left;border-color:#0000;padding:12px 14px}.workspace nav .selected{background:var(--reward);border-left:3px solid var(--ink)}.identity{gap:16px;margin-top:auto;font-size:12px;display:grid}.identity button{text-align:left;border:0;max-width:110px;padding:0}.sheet{background:var(--paper);min-width:0;min-height:100dvh;padding:48px 64px 80px}.sheet header{border-bottom:1px solid var(--ink);margin-bottom:32px;padding-bottom:30px}.date{color:var(--muted);font-size:12px}.sheet h1{margin-top:12px}.sheet .intro{margin:0}.toolbar{justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px;display:flex}.toolbar label{width:300px;max-width:100%}.member-list{border-top:1px solid var(--line)}.member-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:24px 0;display:flex}.initial{border:1px solid var(--line);width:46px;height:46px;font-family:var(--heading);flex-shrink:0;place-items:center;font-size:22px;display:grid}.member-info{overflow-wrap:anywhere;flex:1;min-width:0}.member-info strong{font-family:var(--heading);font-size:20px;font-weight:600}.member-info p{color:var(--muted);margin:2px 0;font-size:12px}.notice{border-left:3px solid var(--ink);background:var(--reward);padding:12px 18px}.error{color:#823521;white-space:pre-line;border-color:#823521}.columns{grid-template-columns:1fr 1fr;gap:40px;display:grid}.columns>section{min-width:0}.setting-row{border-bottom:1px solid var(--line);padding:16px 0}.setting-row strong{font-size:16px;font-family:var(--heading);margin-bottom:10px;display:block}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.row-actions button{padding:6px 10px;font-size:11px}.add-name{align-items:end;gap:12px;margin-top:30px;display:flex}.add-name label{flex:1;min-width:0}.add-name button{white-space:nowrap}.editor{background:var(--desk);border-top:2px solid var(--ink);margin-bottom:32px;padding:28px}.form-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.editor fieldset{border:0;border-top:1px solid var(--line);margin:24px 0 0;padding:18px 0}.editor legend{padding-right:12px;font-size:13px}.check{align-items:center;gap:12px;min-height:44px;display:flex}.check input{flex-shrink:0;margin:0}.actions{gap:12px;margin-top:24px;display:flex}.rules li{margin-bottom:14px}.rules ul{padding-left:20px}.preview{border-top:1px solid var(--ink);margin-top:40px;padding-top:32px}.preview>label{max-width:400px;margin-bottom:28px}.count{font-family:var(--ui);margin-left:12px;font-size:12px;font-weight:400}.names{padding:0;list-style:none}.names li{border-bottom:1px solid var(--line);padding:12px 0}.rename{flex-wrap:wrap;gap:6px;display:flex}.rename input{max-width:160px}.empty{font-family:var(--body);padding:20px 0;font-size:18px;line-height:2.2}button,input,select{transition:background .15s}@media (width<=1100px){.sheet{padding:40px 32px}.workspace{grid-template-columns:195px 1fr}.columns{gap:28px}}@media (width<=760px){.workspace{display:block}.workspace aside{height:auto;padding:18px 20px;position:static}.brand{font-size:23px}.brand span{margin-left:12px;display:inline}.workspace nav{gap:4px;margin-top:18px;display:flex;overflow:auto}.workspace nav button{white-space:nowrap;padding:10px}.identity{display:block;position:absolute;top:20px;right:20px}.identity>span{display:none}.identity button{font-size:11px}.sheet{min-height:70dvh;padding:28px 20px 56px}.sheet header{margin-bottom:24px;padding-bottom:24px}h1{font-size:29px}.intro{font-size:17px}.columns,.form-grid{grid-template-columns:1fr}.columns{gap:36px}.toolbar{flex-direction:column;align-items:stretch;gap:18px}.toolbar .primary{align-self:start}.member-row{gap:14px}.editor{padding:20px}.login-paper{padding:36px 28px}.wordmark{margin-bottom:36px}.login h1{font-size:32px}.rules li{font-size:13px}.member-info strong{font-size:18px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
