.kk-app{--bg:#fff;--bg2:#f5f3f6;--surface:#fff;--surface2:#f8f6f9;--ink:#2a2530;--ink2:#736b7a;--ink3:#8c8294;--border:#ece7ef;--border2:#dcd5e2;--accent:#f2609a;--accentD:#d8487e;--accentSoft:#ffe4ee;--accentInk:#c53d72;--sky:#3fa7e0;--skyD:#2c8bc4;--skySoft:#deeffb;--gold:#ffc23d;--goldD:#e0a000;--goldSoft:#fff1d2;--goldInk:#8a5a00;--purple:#c98bff;--purpleD:#a65fe6;--purpleSoft:#f1e4ff;--success:#34b27b;--successD:#2a9466;--successSoft:#dcf3e8;--display:"Baloo 2", system-ui, sans-serif;--ui:"Nunito", system-ui, sans-serif;--jp:"Mochiy Pop One", "Noto Sans JP", sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--r:16px;--rlg:22px;--ease:cubic-bezier(.4, 0, .2, 1);background:radial-gradient(60% 40% at 85% -5%, var(--accentSoft) 0%, transparent 60%), radial-gradient(50% 35% at 5% 0%, var(--skySoft) 0%, transparent 55%), var(--bg);min-height:100vh;color:var(--ink);font-family:var(--ui);-webkit-font-smoothing:antialiased;font-size:16px;font-weight:500;line-height:1.6}.kk-app *,.kk-app :before,.kk-app :after{box-sizing:border-box}.kk-app h1,.kk-app h2,.kk-app h3{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:800;line-height:1.06}.kk-jp{font-family:var(--jp);font-weight:400}.kk-app .kk-brand{color:var(--ink);align-items:center;gap:11px;text-decoration:none;display:inline-flex}.kk-app .kk-brand .seal{background:var(--accent);color:#fff;width:38px;height:38px;font-family:var(--jp);box-shadow:0 4px 0 0 var(--accentD);border-radius:12px;place-items:center;font-size:19px;display:grid;transform:rotate(-4deg)}.kk-app .kk-brand .seal span{transform:rotate(4deg)}.kk-app .kk-brand .wordmark{font-family:var(--display);letter-spacing:-.02em;font-size:23px;font-weight:800}.kk-app .kk-brand .wordmark b{color:var(--accentInk)}.kk-app .kk-btn{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--r);cursor:pointer;color:#fff;transition:transform 80ms var(--ease), box-shadow 80ms var(--ease), filter .16s var(--ease);border:0;justify-content:center;align-items:center;gap:9px;padding:13px 22px;font-size:16px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex;position:relative}.kk-app .kk-btn--primary{background:var(--accent);box-shadow:0 5px 0 0 var(--accentD)}.kk-app .kk-btn--primary:hover{filter:brightness(1.03)}.kk-app .kk-btn--primary:active{box-shadow:0 0 0 0 var(--accentD);transform:translateY(5px)}.kk-app .kk-btn--gold{background:var(--gold);color:#5a4500;box-shadow:0 5px 0 0 var(--goldD)}.kk-app .kk-btn--gold:active{box-shadow:0 0 0 0 var(--goldD);transform:translateY(5px)}.kk-app .kk-btn--ghost{background:var(--surface);color:var(--ink2);border:2px solid var(--border2);box-shadow:0 5px 0 0 var(--border)}.kk-app .kk-btn--ghost:hover{color:var(--ink)}.kk-app .kk-btn--ghost:active{box-shadow:0 0 0 0 var(--border);transform:translateY(5px)}.kk-app .kk-btn.block{width:100%}.kk-app .kk-btn.sm{border-radius:12px;padding:9px 15px;font-size:13px}.kk-app .kk-btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.15);transform:none}.kk-app .kk-link{cursor:pointer;font-family:var(--ui);color:var(--accentInk);background:0 0;border:0;padding:0;font-size:15px;font-weight:800;text-decoration:none}.kk-app .kk-link:hover{text-decoration:underline}.kk-app .kk-appbar{z-index:20;-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--border);background:#ffffffd1;position:sticky;top:0}.kk-app .kk-appbar-inner{justify-content:space-between;align-items:center;gap:14px;max-width:880px;height:64px;margin:0 auto;padding:0 22px;display:flex}.kk-app .kk-appbar .who{align-items:center;gap:12px;min-width:0;display:inline-flex}.kk-app .kk-appbar .email{color:var(--ink2);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;font-weight:700;overflow:hidden}.kk-app .kk-container{max-width:880px;margin:0 auto;padding:34px 22px 90px}.kk-app .kk-head{margin-bottom:22px}.kk-app .kk-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accentInk);align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:800;display:inline-flex}.kk-app .kk-eyebrow .blip{background:var(--accent);border-radius:3px;width:9px;height:9px;transform:rotate(8deg)}.kk-app .kk-head h1{font-size:clamp(30px,5vw,42px)}.kk-app .kk-head p{color:var(--ink2);max-width:56ch;margin:8px 0 0}.kk-app .kk-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rlg);box-shadow:0 2px 0 0 var(--border)}.kk-app .kk-banner{border-radius:var(--rlg);border:1px solid var(--border2);align-items:flex-start;gap:14px;margin-bottom:20px;padding:16px 18px;display:flex}.kk-app .kk-banner .ic{flex:none;font-size:22px;line-height:1.2}.kk-app .kk-banner .bd{min-width:0}.kk-app .kk-banner .bt{font-family:var(--display);color:var(--ink);font-size:17px;font-weight:800}.kk-app .kk-banner .bp{color:var(--ink2);margin-top:2px;font-size:14px}.kk-app .kk-banner .ba{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.kk-app .kk-banner--warn{background:var(--goldSoft);border-color:#f0d68a}.kk-app .kk-banner--warn .bt{color:var(--goldInk)}.kk-app .kk-banner--info{background:var(--skySoft);border-color:#bfe0f6}.kk-app .kk-banner--info .bt{color:var(--skyD)}.kk-app .kk-banner.flash{animation:kk-flash 1.1s var(--ease)}@keyframes kk-flash{0%,to{box-shadow:0 0 #e0a00000}25%{box-shadow:0 0 0 5px #e0a00052}}.kk-app .kk-pill{letter-spacing:.02em;background:var(--goldSoft);color:var(--goldInk);border:1px solid #f0d68a;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:800;display:inline-flex}.kk-app .kk-composer{margin-bottom:26px;padding:18px}.kk-app .kk-composer .row{flex-wrap:wrap;gap:10px;display:flex}.kk-app .kk-seg{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:3px;display:inline-flex}.kk-app .kk-seg button{cursor:pointer;font-family:var(--ui);color:var(--ink2);background:0 0;border:0;border-radius:9px;padding:7px 14px;font-size:13px;font-weight:800}.kk-app .kk-seg button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 0 0 var(--border2)}.kk-app .kk-input,.kk-app .kk-textarea{width:100%;font-family:var(--ui);color:var(--ink);background:var(--surface);border:1px solid var(--border2);transition:border-color .14s var(--ease), box-shadow .14s var(--ease);border-radius:12px;outline:none;padding:12px 14px;font-size:15px;font-weight:600}.kk-app .kk-input:focus,.kk-app .kk-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accentSoft)}.kk-app .kk-textarea{resize:vertical;min-height:76px;line-height:1.5}.kk-app .kk-composer .foot{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.kk-app .kk-count{color:var(--ink3);font-size:12px;font-weight:700}.kk-app .kk-list{flex-direction:column;gap:12px;display:flex}.kk-app .kk-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--rlg);box-shadow:0 2px 0 0 var(--border);align-items:flex-start;gap:14px;padding:16px;display:flex}.kk-app .kk-vote{cursor:pointer;background:var(--surface2);border:1px solid var(--border2);width:58px;color:var(--ink2);font-family:var(--display);transition:transform 80ms var(--ease), background .14s var(--ease), color .14s var(--ease), border-color .14s var(--ease);border-radius:14px;flex-direction:column;flex:none;align-items:center;gap:2px;padding:8px 0;display:flex}.kk-app .kk-vote .car{font-size:14px;line-height:1}.kk-app .kk-vote .n{font-size:19px;font-weight:800;line-height:1.1}.kk-app .kk-vote:hover:not(:disabled){color:var(--accentInk);border-color:var(--accent)}.kk-app .kk-vote:active:not(:disabled){transform:translateY(2px)}.kk-app .kk-vote.on{background:var(--accentSoft);border-color:var(--accent);color:var(--accentInk)}.kk-app .kk-vote:disabled{cursor:not-allowed}.kk-app .kk-item .bd{flex:1;min-width:0}.kk-app .kk-item .ttl{font-family:var(--display);color:var(--ink);word-break:break-word;font-size:17px;font-weight:800}.kk-app .kk-item .txt{color:var(--ink2);white-space:pre-wrap;word-break:break-word;margin-top:4px;font-size:14.5px}.kk-app .kk-item .meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.kk-app .kk-chip{letter-spacing:.03em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:11.5px;font-weight:800;display:inline-flex}.kk-app .kk-chip--feature{background:var(--skySoft);color:var(--skyD);border-color:#bfe0f6}.kk-app .kk-chip--bug{background:var(--accentSoft);color:var(--accentInk);border-color:#f6c6d9}.kk-app .kk-chip--open{background:var(--surface2);color:var(--ink3);border-color:var(--border2)}.kk-app .kk-chip--planned{background:var(--purpleSoft);color:var(--purpleD);border-color:#e3cbff}.kk-app .kk-chip--in_progress{background:var(--goldSoft);color:var(--goldInk);border-color:#f0d68a}.kk-app .kk-chip--shipped{background:var(--successSoft);color:var(--successD);border-color:#b8e6cf}.kk-app .kk-chip--declined{background:var(--surface2);color:var(--ink3);border-color:var(--border2)}.kk-app .kk-empty,.kk-app .kk-loading{text-align:center;color:var(--ink2);padding:50px 20px;font-weight:700}.kk-app .kk-empty .big{font-family:var(--jp);color:var(--accent);margin-bottom:10px;font-size:40px;display:block}.kk-app .kk-err{color:var(--accentInk);margin-top:10px;font-size:13.5px;font-weight:700}.kk-app .kk-auth-wrap{place-items:center;min-height:calc(100vh - 64px);padding:40px 22px 80px;display:grid}.kk-app .kk-auth{text-align:center;width:100%;max-width:420px;padding:30px 28px}.kk-app .kk-auth h1{font-size:27px}.kk-app .kk-auth .sub{color:var(--ink2);margin:8px 0 22px;font-size:14.5px}.kk-app .kk-auth form{text-align:left;flex-direction:column;gap:12px;display:flex}.kk-app .kk-auth label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);font-size:12px;font-weight:800}.kk-app .kk-code{font-family:var(--mono);letter-spacing:.4em;text-align:center;padding:14px;font-size:24px;font-weight:700}.kk-app .kk-auth .alt{color:var(--ink2);margin-top:16px;font-size:13px}.kk-app .kk-seal-lg{background:var(--accent);color:#fff;width:54px;height:54px;font-family:var(--jp);box-shadow:0 5px 0 0 var(--accentD);border-radius:16px;place-items:center;margin:0 auto 16px;font-size:26px;display:grid;transform:rotate(-4deg)}.kk-app .kk-seal-lg span{transform:rotate(4deg)}.kk-app .kk-note{color:var(--ink3);margin-top:18px;font-size:12.5px}@media (max-width:560px){.kk-app .kk-item{gap:11px;padding:13px}.kk-app .kk-vote{width:50px}}
