:root{--r-chip: calc(9px * var(--menu-scale));--r-control: 10px;--r-item: 12px;--r-plate: 16px;--tap: 44px;--scale: 1;--plus-size: calc(21px * var(--scale));--menu-scale: calc(1 + (var(--scale) - 1) * .5);--topbar-h: calc(env(safe-area-inset-top) + max(52px, 42px * var(--scale))) ;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}[data-text=xs]{--scale: 1}[data-text=s]{--scale: 1.18}[data-text=m]{--scale: 1.38}[data-text=l]{--scale: 1.6}[data-text=xl]{--scale: 1.85}[data-theme=day]{color-scheme:light;--bg: #d6d6d6;--head: #fbfbfb;--surface: #fbfbfb;--sunken: #ededed;--card: #e7e7e7;--card-struck: #f2f2f2;--line: #cfcfcf;--hover: #e6e6e6;--on: #dedede;--panel: #ffffff;--panel-line: #e6e6e6;--ink: #141414;--muted: #6b6b6b;--faint: #a8a8a8;--accent: #212121;--accent-ink: #fafafa;--shadow: 0 2px 6px rgb(0 0 0 / 6%), 0 16px 40px rgb(0 0 0 / 14%);--plate-shadow: 0 1px 2px rgb(0 0 0 / 4%), 0 8px 24px rgb(0 0 0 / 6%);--row-hover: rgb(0 0 0 / 3%)}[data-theme=night]{color-scheme:dark;--bg: #0d0d0d;--head: #2c2c2c;--surface: #2c2c2c;--sunken: #232323;--card: #1a1a1a;--card-struck: #252525;--line: #333333;--hover: #3a3a3a;--on: #454545;--panel: #303030;--panel-line: #3a3a3a;--ink: #f2f2f2;--muted: #a0a0a0;--faint: #6a6a6a;--accent: #fafafa;--accent-ink: #212121;--shadow: 0 2px 6px rgb(0 0 0 / 45%), 0 16px 48px rgb(0 0 0 / 60%);--plate-shadow: 0 1px 2px rgb(0 0 0 / 35%), 0 10px 28px rgb(0 0 0 / 40%);--row-hover: rgb(255 255 255 / 4%)}*{box-sizing:border-box}*{scrollbar-width:none}*::-webkit-scrollbar{width:0;height:0}html,body{margin:0;height:100%;overflow:hidden;overscroll-behavior:none}body{background:var(--head);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}body.is-dragging{cursor:grabbing;user-select:none;-webkit-user-select:none}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,textarea{caret-color:var(--ink)}input:focus,input:focus-visible,textarea:focus,textarea:focus-visible{outline:none}::selection{background:var(--hover);color:var(--ink)}.app{display:flex;flex-direction:column;height:100dvh;overflow:hidden}.topbar{display:grid;grid-template-columns:1fr minmax(0,auto) 1fr;flex:0 0 auto;align-items:center;gap:8px;height:var(--topbar-h);padding:env(safe-area-inset-top) 8px 0 8px;background:var(--head)}.topbar__side{display:flex;align-items:center;gap:8px;min-width:0}.topbar__side--end{justify-content:flex-end}.topbar__title,.topbar__field{min-width:0;height:calc(36px * var(--scale));font-size:calc(20px * var(--scale));font-weight:700;letter-spacing:-.02em}.topbar__title{max-width:100%;padding:0;border:0;background:none;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text}.topbar__title:hover{opacity:.75}.topbar__field{width:min(56vw,15rem);padding:0 10px;border:1px solid var(--line);border-radius:var(--r-control);background:var(--sunken);text-align:center}.topbar__offline{font-size:12px;color:var(--muted)}.icon-btn{display:grid;place-items:center;min-width:var(--tap);height:var(--tap);border:0;border-radius:var(--r-control);background:transparent;color:var(--muted);font-size:calc(19px * var(--scale));line-height:1;cursor:pointer}.icon-btn:hover{color:var(--ink);background:var(--hover)}.board{display:flex;flex:1;align-items:flex-start;gap:12px;min-height:0;padding:14px 14px calc(env(safe-area-inset-bottom) + 14px);overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;scroll-snap-type:x mandatory;background:var(--bg)}.board:before,.board:after{content:"";flex:0 0 max(0px,calc(50vw - min(42vw,150px) - 26px))}body.is-dragging .board{scroll-snap-type:none}.column{display:flex;flex-direction:column;flex:0 0 auto;width:min(84vw,300px);max-height:100%;border-radius:var(--r-plate);background:var(--surface);box-shadow:var(--plate-shadow);scroll-snap-align:center}@media(min-width:720px){.board{scroll-snap-type:none}.column{width:300px}}.column__head{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 14px}.column__title{margin:0;font-size:calc(15px * var(--scale));font-weight:700;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column__count{flex:1;color:var(--muted);font-size:calc(13px * var(--scale));font-weight:400;font-variant-numeric:tabular-nums}.column__cards{flex:0 1 auto;margin:0;padding:10px 10px 0;list-style:none;overflow-y:auto;overscroll-behavior:contain}.card{display:flex;align-items:stretch;background:transparent;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.card-slot:not(:last-child) .card{border-bottom:1px solid var(--line)}.card--struck .card__text{color:var(--faint);text-decoration:line-through}@media(hover:hover){.card:hover{background:var(--row-hover)}}.card__grip{flex:0 0 auto;display:grid;place-items:center;width:calc(32px * var(--scale));border:0;background:transparent;color:var(--faint);opacity:.45;cursor:grab;touch-action:none}.card__grip:hover{opacity:1;color:var(--muted)}.card__grip .grip-icon{width:calc(20px * var(--scale));height:calc(20px * var(--scale))}.card__text{flex:1;min-width:0;padding:calc(8px * var(--scale)) calc(11px * var(--scale));border:0;background:transparent;text-align:left;font-size:calc(15px * var(--scale));line-height:1.35;overflow-wrap:anywhere;cursor:pointer;touch-action:manipulation}.card__grip+.card__text{padding-left:calc(2px * var(--scale))}.drop{margin:4px 0;border:1px dashed var(--muted);border-radius:var(--r-item);background:var(--hover)}.ghost{position:fixed;top:0;left:0;z-index:200;padding:11px 12px;border:1px solid var(--accent);border-radius:var(--r-item);background:var(--card);color:var(--ink);font-size:calc(15px * var(--scale));line-height:1.35;overflow:hidden;box-shadow:var(--shadow);pointer-events:none;transform-origin:center;rotate:1.5deg}.composer{display:flex;gap:8px;padding:6px 10px 10px}.composer__input{flex:1;min-width:0;height:calc(38px * var(--scale));padding:0 12px;border:0;border-radius:var(--r-control);background:transparent;font-size:calc(15px * var(--scale));text-align:center}.composer__input:focus,.composer__input:not(:placeholder-shown){text-align:left}.composer__input::placeholder{color:var(--muted);font-size:var(--plus-size);font-weight:700}.composer__input--full::placeholder{font-size:calc(14px * var(--scale));font-weight:400}.composer__input:disabled{background:transparent;cursor:default}.add-column{flex:0 0 auto;display:flex;align-items:center;gap:4px;width:min(84vw,300px);min-height:calc(58px * var(--scale));padding:10px;border:0;border-radius:var(--r-plate);background:var(--surface);box-shadow:var(--plate-shadow);cursor:pointer;scroll-snap-align:center}.add-column--open{cursor:default}html.modal-open,html.modal-open body{overflow:hidden;overscroll-behavior:none}.scrim{position:fixed;inset:0;z-index:100;display:flex;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.scrim--menu{padding:0;background:#0003}.scrim--center{align-items:center;justify-content:center;padding:16px;background:#00000073}.panel{background:var(--panel);color:var(--ink);outline:none}.panel--menu{position:absolute;overflow-x:hidden;overflow-y:auto;border:1px solid var(--panel-line);border-radius:var(--r-plate);box-shadow:var(--shadow)}.panel--center{width:min(20rem,100%);border:1px solid var(--panel-line);border-radius:var(--r-plate);box-shadow:var(--shadow)}.menu{padding:calc(7px * var(--menu-scale))}.menu__label{margin:2px 0 0;padding:calc(5px * var(--menu-scale)) calc(13px * var(--menu-scale)) calc(2px * var(--menu-scale));color:var(--muted);font-size:calc(11px * var(--menu-scale));font-weight:600;letter-spacing:.07em;text-transform:uppercase}.menu__item{display:flex;align-items:center;gap:10px;width:100%;min-height:calc(46px * var(--menu-scale));padding:0 calc(13px * var(--menu-scale));border:0;border-radius:var(--r-item);background:none;text-align:left;font-size:calc(17px * var(--menu-scale));letter-spacing:-.01em;cursor:pointer}.menu--form{display:flex;flex-direction:column;gap:4px}.menu__field{width:100%;padding:calc(12px * var(--menu-scale)) calc(13px * var(--menu-scale));border:1px solid var(--line);border-radius:var(--r-item);background:var(--sunken);font-size:calc(17px * var(--menu-scale));line-height:1.35;resize:none}.menu__row{display:flex;align-items:center;gap:2px}.menu__row--split>.menu__item{flex:1 1 0;min-width:0;padding:0 calc(6px * var(--menu-scale));justify-content:center;text-align:center}.menu__row--split>.menu__item .menu__text{flex:0 1 auto}.menu__remove{flex:0 0 auto;width:calc(36px * var(--menu-scale));height:calc(40px * var(--menu-scale));border:0;border-radius:var(--r-control);background:none;color:var(--muted);font-size:calc(14px * var(--menu-scale));line-height:1;cursor:pointer}.menu__remove:hover{background:var(--hover);color:var(--ink)}.menu__remove:disabled{opacity:.35;cursor:default}button.menu__item:hover{background:var(--hover)}.menu__item--on{position:relative;background:var(--on);font-weight:600;padding-left:calc(31px * var(--menu-scale))}.menu__item--on:before{content:"";position:absolute;left:calc(13px * var(--menu-scale));top:50%;translate:0 -50%;width:calc(9px * var(--menu-scale));height:calc(9px * var(--menu-scale));border-radius:calc(2.5px * var(--menu-scale));background:var(--accent)}.menu__item--icon{justify-content:center;color:var(--muted)}.menu__item--icon:hover:not(:disabled){color:var(--ink)}.strike-mark{font-size:calc(17px * var(--menu-scale));font-weight:600;letter-spacing:.08em;text-decoration:line-through;text-decoration-thickness:2px}.grip-icon{width:calc(22px * var(--menu-scale));height:calc(22px * var(--menu-scale))}.menu__item--arrow{justify-content:center;font-size:calc(19px * var(--menu-scale))}.menu__item:disabled{opacity:.35;cursor:default}.menu__item:disabled:hover{background:none}.menu__text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu__mark{color:var(--muted);font-size:calc(15px * var(--menu-scale))}.menu__mark--logo{flex:0 0 auto;width:calc(12px * var(--menu-scale));height:calc(12px * var(--menu-scale));border-radius:calc(3px * var(--menu-scale));background:var(--accent)}.menu__divider{height:1px;margin:6px 4px;background:var(--line)}.menu__chips{display:flex;flex-wrap:nowrap;gap:4px;padding:4px 6px}.menu__chips--titles{flex-wrap:wrap}.menu__status{display:flex;align-items:center;gap:10px;margin:0;padding:calc(9px * var(--menu-scale)) calc(13px * var(--menu-scale));color:var(--muted);font-size:calc(15px * var(--menu-scale))}.menu__status--empty{justify-content:center;color:var(--faint)}.menu__mark--sample{color:var(--muted);text-decoration:line-through}.menu__mark--action{color:var(--ink);font-weight:600;text-decoration:underline}.confirm{padding:18px 18px 14px}.reorder{padding:10px 10px 6px}.reorder__list{margin:0;padding:0;list-style:none;max-height:60vh;overflow-y:auto}.reorder__row{display:flex;align-items:center;margin-bottom:8px;border-radius:var(--r-item);background:var(--card);touch-action:none;user-select:none;-webkit-user-select:none}.reorder__row--on{font-weight:600}.reorder__row--lifted{box-shadow:var(--shadow);rotate:1deg}.reorder__name{flex:1;min-width:0;padding:calc(8px * var(--scale)) calc(11px * var(--scale)) calc(8px * var(--scale)) 0;font-size:calc(15px * var(--scale));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm__question{margin:0 0 16px;font-size:calc(16px * var(--menu-scale));line-height:1.4}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{flex:1 1 0;min-width:0;min-height:calc(36px * var(--menu-scale));padding:0 calc(4px * var(--menu-scale));border:1px solid var(--line);border-radius:var(--r-chip);background:var(--sunken);font-size:calc(15px * var(--menu-scale));text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.menu__chips--titles .chip{flex:0 1 auto;max-width:100%}.chip--on{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}@media(hover:hover){.chip:hover:not(:disabled):not(.chip--on){border-color:var(--muted);background:var(--hover)}}.chip:disabled{opacity:.35;cursor:default}.confirm__actions{display:flex;gap:10px}.btn{flex:1;min-height:calc(var(--tap) * var(--menu-scale));border:1px solid var(--line);border-radius:var(--r-item);background:var(--surface);font-size:calc(16px * var(--menu-scale));font-weight:600;cursor:pointer}.btn--primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.btn:disabled{opacity:.35;cursor:default}.toast{position:fixed;z-index:150;left:50%;bottom:calc(env(safe-area-inset-bottom) + 16px);translate:-50% 0;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 32px);padding:10px 14px;border:1px solid var(--panel-line);border-radius:var(--r-item);background:var(--panel);box-shadow:var(--shadow);font-size:calc(15px * var(--menu-scale))}.toast__action{border:0;background:none;color:var(--ink);font-weight:700;text-decoration:underline;cursor:pointer}@media(prefers-reduced-motion:no-preference){.scrim{animation:fade .15s ease both}.panel--menu{animation:drop .14s ease both}.panel--center{animation:rise .16s ease both}.toast{animation:rise-centered .18s ease both}.icon-btn:active,.menu__item:active:not(:disabled),.menu__remove:active:not(:disabled),.chip:active:not(:disabled),.btn:active:not(:disabled){transform:scale(.97)}}@keyframes rise-centered{0%{translate:-50% 12px;opacity:0}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{transform:translateY(12px);opacity:0}}@keyframes drop{0%{transform:translateY(-8px);opacity:0}}
