.page{max-width:1180px;margin:0 auto;padding:28px 20px 96px}.header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:24px;display:flex}.header__title{letter-spacing:-.015em;font-size:22px;font-weight:600}.header__count{color:var(--text-faint);margin-left:10px;font-size:13px;font-weight:400}.toolbar{gap:8px;display:flex}.btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:6px 12px;font-size:13px;transition:background .12s,border-color .12s}.btn:hover{background:var(--surface-sunken);border-color:var(--text-faint)}.btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent);filter:brightness(1.08)}.btn--danger{color:var(--danger);border-color:var(--border-strong)}.btn--danger:hover{background:var(--warn-soft);border-color:var(--danger)}.btn--ghost{color:var(--text-muted);background:0 0;border-color:#0000;padding:4px 8px}.btn--ghost:hover{background:var(--surface-sunken);border-color:#0000}.btn:disabled{opacity:.5;cursor:not-allowed}.board{gap:var(--gap);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}@media (width<=900px){.board{grid-template-columns:minmax(0,1fr)}}.column{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius);padding:12px;transition:border-color .15s,background .15s}.column__head{justify-content:space-between;align-items:baseline;padding:0 4px 10px;display:flex}.column__title{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:600}.column__count{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:12px}.column__body{border-radius:var(--radius-sm);flex-direction:column;gap:8px;min-height:60px;transition:background .15s,box-shadow .15s;display:flex}.column__body--over{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.column__body--refused{background:var(--warn-soft);box-shadow:inset 0 0 0 2px var(--warn);cursor:not-allowed}.column__empty{color:var(--text-faint);text-align:center;padding:14px 8px;font-size:13px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);align-items:flex-start;gap:8px;padding:9px 10px;display:flex}.card--dragging{opacity:.35}.card--overlay{box-shadow:var(--shadow-lift);border-color:var(--border-strong);cursor:grabbing;width:320px}.card__grip{color:var(--text-faint);cursor:grab;touch-action:none;background:0 0;border:none;border-radius:4px;flex:none;margin-top:1px;padding:2px 3px;line-height:1}.card__grip:hover{background:var(--surface-sunken);color:var(--text-muted)}.card__main{flex:1;min-width:0}.card__titlerow{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.card__title{letter-spacing:-.005em;font-weight:550}.card__author{color:var(--text-muted);font-size:13px}.card__meta{color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:12px;display:flex}.card__age{cursor:help}.card__age--long{color:var(--warn);font-weight:500}.badge{background:var(--surface-sunken);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:1px 6px;font-size:11px;line-height:1.5;display:inline-block}.badge--hold{background:var(--warn-soft);color:var(--warn);border-color:#0000}.badge--origin{background:var(--accent-soft);color:var(--accent);border-color:#0000}.card__actions{flex:none;gap:2px;display:flex}.card__edit{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:10px;padding-top:10px;display:flex}.field{flex-direction:column;gap:3px;display:flex}.field__label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);font-size:11px}.input,.textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);width:100%;padding:6px 8px;font-size:14px}.textarea{resize:vertical;min-height:60px}.checkline{color:var(--text-muted);cursor:pointer;align-items:center;gap:7px;font-size:13px;display:flex}.card__editactions{justify-content:space-between;gap:8px;margin-top:2px;display:flex}.add{flex-direction:column;gap:6px;margin-top:10px;display:flex}.add__row{gap:6px;display:flex}.add__input{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:0 0;flex:1;min-width:0;padding:7px 9px;font-size:14px}.add__input:focus{background:var(--surface);border-style:solid}.add__input::placeholder{color:var(--text-faint)}.finished{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-sunken);margin-top:28px;overflow:hidden}.finished--over{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.finished--refused{border-color:var(--warn);box-shadow:inset 0 0 0 1px var(--warn);background:var(--warn-soft)}.finished--refused .finished__hint{color:var(--warn);font-weight:500}.finished__toggle{text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:12px 14px;display:flex}.finished__toggle:hover{background:var(--bg)}.finished__chevron{color:var(--text-faint);transition:transform .15s}.finished__chevron--open{transform:rotate(90deg)}.finished__label{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:600}.finished__hint{color:var(--text-faint);margin-left:auto;font-size:12px}.finished__body{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;padding:0 12px 12px;display:grid}.toast{z-index:50;border-radius:var(--radius);background:var(--text);max-width:min(520px,100vw - 32px);color:var(--bg);box-shadow:var(--shadow-lift);padding:10px 16px;font-size:14px;animation:.16s toast-in;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.dialog{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:min(620px,100vw - 32px);color:var(--text);margin:auto;padding:0}.dialog::backdrop{background:#0006}.dialog__inner{flex-direction:column;gap:14px;padding:20px;display:flex}.dialog__title{font-size:17px;font-weight:600}.dialog__text{color:var(--text-muted);font-size:14px}.dialog__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.dialog__errors{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:260px;margin:0;padding:10px 12px;font-size:13px;list-style:none;overflow-y:auto}.dialog__errors li+li{margin-top:6px}.dialog__errpath{color:var(--danger);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.radioline{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;align-items:flex-start;gap:9px;padding:10px 12px;display:flex}.radioline--on{border-color:var(--accent);background:var(--accent-soft)}.radioline__body{flex-direction:column;gap:2px;display:flex}.radioline__title{font-size:14px;font-weight:550}.radioline__desc{color:var(--text-muted);font-size:12.5px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg:#fbfaf8;--surface:#fff;--surface-sunken:#f3f1ed;--border:#e4e0d9;--border-strong:#cec8bd;--text:#1c1a17;--text-muted:#6b655c;--text-faint:#948d82;--accent:#3a5a78;--accent-soft:#e8eef4;--warn:#9a6a2f;--warn-soft:#f6eddf;--danger:#9b3b30;--radius:10px;--radius-sm:6px;--shadow-card:0 1px 2px #1c1a170f;--shadow-lift:0 8px 24px #1c1a1724;--gap:16px}@media (prefers-color-scheme:dark){:root{--bg:#171614;--surface:#211f1c;--surface-sunken:#1b1a17;--border:#322f2a;--border-strong:#47433c;--text:#ece8e1;--text-muted:#a8a196;--text-faint:#7d766c;--accent:#8fb4d4;--accent-soft:#24303b;--warn:#d9a860;--warn-soft:#342c1d;--danger:#d98d82;--shadow-card:0 1px 2px #0000004d;--shadow-lift:0 8px 24px #00000073}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
