


:root {
  --md-sys-color-primary: #0b57d0;
  --md-sys-color-on-primary: #ffffff;
  --md-sys-color-primary-container: #d3e3fd;
  --md-sys-color-on-primary-container: #041e49;
  --md-sys-color-secondary: #565e71;
  --md-sys-color-secondary-container: #e1e9f8;
  --md-sys-color-on-secondary-container: #1a2435;
  --md-sys-color-surface: #ffffff;
  --md-sys-color-surface-container-low: #f8fafd;
  --md-sys-color-surface-container: #f0f4f9;
  --md-sys-color-surface-container-high: #e9eef6;
  --md-sys-color-on-surface: #1f1f1f;
  --md-sys-color-on-surface-variant: #444746;
  --md-sys-color-outline: #747775;
  --md-sys-color-outline-variant: #c4c7c5;
  --md-sys-color-error: #b3261e;
  --md-sys-color-error-container: #f9dedc;
  --md-sys-color-on-error-container: #410e0b;
  --md-sys-color-inverse-surface: #303030;
  --md-sys-color-inverse-on-surface: #f2f2f2;
  --md-sys-color-inverse-primary: #a8c7fa;
  --md-sys-shape-corner-small: 8px;
  --md-sys-shape-corner-medium: 12px;
  --md-sys-shape-corner-large: 16px;
  --md-sys-shape-corner-extra-large: 28px;
  --md-sys-shape-corner-full: 999px;
  --md-sys-state-hover-opacity: .08;
  --md-sys-state-pressed-opacity: .12;
  --drawer-width: 256px;
}
* { box-sizing: border-box; }
body { margin:0; background:var(--md-sys-color-surface-container); color:var(--md-sys-color-on-surface); font-family:Roboto,'Noto Sans JP',Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif; font-size:14px; line-height:1.5; }
button,a,input { -webkit-tap-highlight-color:transparent; }
button { position:relative; isolation:isolate; display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; border:0; background:none; color:inherit; font:inherit; font-weight:500; line-height:20px; cursor:pointer; border-radius:var(--md-sys-shape-corner-full); }
button::after { content:''; position:absolute; inset:0; border-radius:inherit; background:currentColor; opacity:0; pointer-events:none; }
button:hover::after { opacity:var(--md-sys-state-hover-opacity); }
button:active::after { opacity:var(--md-sys-state-pressed-opacity); }
button:disabled { opacity:.38; cursor:default; }
button:disabled::after { display:none; }
button:focus-visible,a:focus-visible { outline:3px solid var(--md-sys-color-primary); outline-offset:3px; }
button svg { flex-shrink:0; stroke-width:1.8; }
a { color:inherit; text-decoration:none; }
.shell { min-height:100dvh; }
.sidebar { position:fixed; inset:0 auto 0 0; width:var(--drawer-width); display:flex; flex-direction:column; padding:24px 12px; background:var(--md-sys-color-surface-container); z-index:20; }
.brand { display:flex; gap:12px; align-items:center; padding:0 16px; min-height:56px; font-size:24px; line-height:28px; font-weight:500; letter-spacing:.025em; }
.brand small { display:block; margin-top:4px; font-size:12px; line-height:16px; font-weight:400; letter-spacing:0; color:var(--md-sys-color-on-surface-variant); }
.brand-icon { display:grid; place-items:center; width:40px; height:40px; color:var(--md-sys-color-primary); background:var(--md-sys-color-primary-container); border-radius:var(--md-sys-shape-corner-medium); }
.workspace-label { padding:0 16px; margin:32px 0 12px; font-size:12px; line-height:16px; color:var(--md-sys-color-on-surface-variant); font-weight:500; }
nav { display:flex; flex-direction:column; gap:4px; }
.nav-item { min-height:56px; width:100%; padding:0 16px; justify-content:flex-start; gap:12px; color:var(--md-sys-color-on-surface-variant); text-align:left; }
.nav-item.active { color:var(--md-sys-color-on-primary-container); background:var(--md-sys-color-primary-container); font-weight:600; }
.nav-icon { display:grid; place-items:center; flex-shrink:0; }
.nav-label { font-size:14px; }
.nav-item b { margin-left:auto; font-size:12px; font-weight:500; font-variant-numeric:tabular-nums; }
.sidebar-bottom { margin-top:auto; padding:24px 16px 0; font-size:12px; color:var(--md-sys-color-on-surface-variant); }
.sidebar-bottom small { display:block; margin-top:4px; font-size:11px; }
.connection-dot { display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--md-sys-color-outline); margin-right:8px; vertical-align:middle; flex-shrink:0; }
main { margin-left:var(--drawer-width); padding:0 24px 24px 0; }
header { display:flex; justify-content:space-between; align-items:center; min-height:80px; padding:12px 24px; gap:16px; }
.appbar-title { display:flex; align-items:center; gap:12px; font-size:14px; color:var(--md-sys-color-on-surface-variant); }
.appbar-brand { font-weight:500; }
.appbar-divider { color:var(--md-sys-color-outline); }
.demo-button { min-height:40px; padding:0 16px; color:var(--md-sys-color-primary); border:1px solid var(--md-sys-color-outline); font-size:14px; white-space:nowrap; }
.content { min-height:calc(100dvh - 104px); width:100%; max-width:1240px; margin:0 auto; padding:40px 40px 96px; border-radius:var(--md-sys-shape-corner-extra-large); background:var(--md-sys-color-surface); }
.eyebrow { color:var(--md-sys-color-on-surface-variant); font-size:14px; line-height:20px; margin-bottom:12px; }
.title-line { display:flex; align-items:center; justify-content:space-between; gap:16px; }
h1 { margin:0; font-size:32px; line-height:40px; font-weight:400; letter-spacing:0; }
.count { display:inline-flex; align-items:center; gap:8px; min-height:32px; padding:4px 12px; background:var(--md-sys-color-secondary-container); color:var(--md-sys-color-on-secondary-container); border-radius:var(--md-sys-shape-corner-small); font-size:12px; line-height:16px; white-space:nowrap; }
.count>span { font-size:14px; font-weight:500; }
.intro { margin:12px 0 32px; color:var(--md-sys-color-on-surface-variant); font-size:14px; line-height:20px; }
.section-heading { min-height:40px; padding:0 16px 12px; display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:12px; line-height:16px; font-weight:500; color:var(--md-sys-color-on-surface-variant); border-bottom:1px solid var(--md-sys-color-outline-variant); }
.section-heading>button { color:var(--md-sys-color-primary); font-size:12px; padding:0 12px; }
.task-row,.priority-row { display:flex; align-items:center; gap:24px; min-height:80px; padding:12px 16px; border-bottom:1px solid #e3e6e8; }
.task-row p,.priority-row p { flex:1; min-width:0; margin:0; font-size:15px; line-height:24px; overflow-wrap:anywhere; }
.actions { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.actions button { min-height:40px; padding:0 12px; font-size:13px; line-height:20px; color:var(--md-sys-color-primary); }
.actions .action-apply { color:var(--md-sys-color-on-primary); background:var(--md-sys-color-primary); }
.actions .action-hold { color:var(--md-sys-color-on-secondary-container); background:var(--md-sys-color-secondary-container); }
.actions .action-complete { color:var(--md-sys-color-primary); border:1px solid var(--md-sys-color-outline); }
.actions .action-exclude { color:var(--md-sys-color-on-surface-variant); }
.actions button svg { width:18px; height:18px; }
.add-area { margin-top:24px; }
.add-button { padding:0 20px; color:var(--md-sys-color-primary); border:1px solid var(--md-sys-color-outline); }
.add-area form { display:flex; align-items:center; gap:12px; }
.text-field { flex:1; position:relative; display:block; min-width:0; border:1px solid var(--md-sys-color-outline); border-radius:4px; }
.text-field>span { position:absolute; left:12px; top:-9px; padding:0 4px; font-size:12px; line-height:18px; background:var(--md-sys-color-surface); color:var(--md-sys-color-on-surface-variant); }
.text-field:focus-within { border:2px solid var(--md-sys-color-primary); }
.text-field:focus-within>span { color:var(--md-sys-color-primary); left:11px; top:-10px; }
.text-field input { min-height:54px; width:100%; padding:12px 16px; background:transparent; border:0; outline:none; color:var(--md-sys-color-on-surface); font:inherit; }
.text-field:focus-within input { min-height:52px; padding:11px 15px; }
.solid { min-height:48px; padding:0 24px; color:var(--md-sys-color-on-primary); background:var(--md-sys-color-primary); font-size:14px; }
.text-button { color:var(--md-sys-color-primary); padding:0 16px; }
.empty { text-align:center; padding:64px 24px; color:var(--md-sys-color-on-surface-variant); }
.empty-icon { display:grid; place-items:center; width:64px; height:64px; border-radius:var(--md-sys-shape-corner-large); background:var(--md-sys-color-primary-container); color:var(--md-sys-color-on-primary-container); margin:0 auto 24px; }
.empty h2 { color:var(--md-sys-color-on-surface); font-size:20px; line-height:28px; font-weight:400; margin:0; }
.empty p { font-size:14px; line-height:20px; margin:12px 0 24px; }
.priority-row { min-height:72px; }
.order { color:var(--md-sys-color-on-surface-variant); font-size:14px; font-variant-numeric:tabular-nums; min-width:24px; }
.done-button { flex-shrink:0; width:48px; height:48px; color:var(--md-sys-color-primary); }
.done-button svg { width:24px; height:24px; border:1.5px solid var(--md-sys-color-outline); padding:3px; border-radius:3px; }
.history-row { padding:20px 16px; border-bottom:1px solid #e3e6e8; }
.history-row p { margin:0 0 4px; font-size:14px; line-height:22px; }
.history-row small { color:var(--md-sys-color-on-surface-variant); font-size:12px; line-height:16px; }
footer { display:flex; align-items:center; gap:0; margin-top:40px; color:var(--md-sys-color-on-surface-variant); font-size:11px; line-height:16px; }
footer button { margin-left:auto; width:48px; height:48px; flex-shrink:0; }
footer button svg { width:20px; height:20px; }
.toast { position:fixed; bottom:24px; left:calc(50% + var(--drawer-width)/2); transform:translateX(-50%); z-index:30; display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:56px; padding:4px 8px 4px 16px; width:max-content; max-width:min(600px,calc(100% - var(--drawer-width) - 64px)); color:var(--md-sys-color-inverse-on-surface); background:var(--md-sys-color-inverse-surface); border-radius:4px; box-shadow:0 2px 6px #0003,0 1px 2px #0005; font-size:14px; line-height:20px; }
.toast>span { display:flex; align-items:center; gap:12px; }
.toast>span svg { flex-shrink:0; }
.toast button { padding:0 12px; color:var(--md-sys-color-inverse-primary); white-space:nowrap; }
.error { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:12px 16px; margin-bottom:24px; border-radius:var(--md-sys-shape-corner-medium); background:var(--md-sys-color-error-container); color:var(--md-sys-color-on-error-container); font-size:14px; }
.error button,.error a { padding:8px 12px; text-decoration:underline; }
.demo-banner { padding:12px 16px; margin-bottom:24px; border-radius:var(--md-sys-shape-corner-medium); background:var(--md-sys-color-surface-container); color:var(--md-sys-color-on-surface-variant); font-size:12px; line-height:20px; }
@media (min-width:1600px) { header { max-width:1240px; margin:auto; } .content { padding:48px; } }
@media (max-width:1199px) and (min-width:721px) {
  :root { --drawer-width:104px; }
  .sidebar { padding:24px 4px; align-items:center; }
  .brand { padding:0; justify-content:center; }
  .brand>span:last-child,.workspace-label,.sidebar-bottom { display:none; }
  nav { margin-top:28px; width:100%; gap:12px; }
  .nav-item { flex-direction:column; gap:4px; min-height:72px; padding:4px 0; border-radius:var(--md-sys-shape-corner-large); }
  .nav-item.active { background:none; }
  .nav-icon { width:56px; height:32px; border-radius:var(--md-sys-shape-corner-full); }
  .nav-item.active .nav-icon { background:var(--md-sys-color-primary-container); }
  .nav-label { font-size:11px; line-height:16px; }
  .nav-item b { position:absolute; top:0; right:17px; min-width:16px; height:16px; border-radius:var(--md-sys-shape-corner-full); background:var(--md-sys-color-error); color:white; font-size:10px; line-height:16px; text-align:center; }
  main { padding-right:16px; }
  .content { padding:32px 24px 96px; }
  header { padding:12px 16px; }
  .task-row { flex-wrap:wrap; gap:8px; }
  .task-row p { flex-basis:100%; }
  .actions { margin-left:auto; }
}
@media (max-width:720px) {
  :root { --drawer-width:0px; }
  body { background:var(--md-sys-color-surface); }
  .sidebar { inset:auto 0 0; width:100%; height:calc(80px + env(safe-area-inset-bottom)); padding:0 4px env(safe-area-inset-bottom); background:var(--md-sys-color-surface-container); }
  .brand,.workspace-label,.sidebar-bottom { display:none; }
  nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; height:80px; }
  .nav-item { min-width:0; min-height:80px; padding:12px 0 8px; flex-direction:column; gap:4px; border-radius:16px; text-align:center; }
  .nav-item.active { background:none; }
  .nav-icon { width:64px; height:32px; border-radius:var(--md-sys-shape-corner-full); }
  .nav-item.active .nav-icon { background:var(--md-sys-color-primary-container); }
  .nav-label { font-size:11px; line-height:16px; white-space:nowrap; }
  .nav-item b { position:absolute; top:8px; left:calc(50% + 12px); min-width:16px; height:16px; padding:0 3px; border-radius:var(--md-sys-shape-corner-full); background:var(--md-sys-color-error); color:white; font-size:10px; line-height:16px; text-align:center; }
  main { margin:0; padding:0 0 calc(80px + env(safe-area-inset-bottom)); }
  header { min-height:64px; padding:8px 16px; gap:8px; background:var(--md-sys-color-surface-container-low); }
  .appbar-title { font-size:20px; }
  .appbar-divider,.appbar-section { display:none; }
  .demo-button { font-size:12px; padding:0 12px; min-height:48px; }
  .content { min-height:calc(100dvh - 144px); padding:24px 16px 96px; border-radius:0; }
  .eyebrow { font-size:12px; line-height:16px; }
  h1 { font-size:24px; line-height:32px; }
  .title-line { gap:8px; }
  .count { gap:6px; font-size:11px; padding:4px 8px; }
  .count>span { font-size:12px; }
  .intro { margin:8px 0 24px; font-size:13px; }
  .section-heading { padding:0 0 12px; }
  .task-row { display:block; padding:16px 0 12px; min-height:0; }
  .task-row p { font-size:15px; line-height:24px; margin-bottom:12px; }
  .actions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .actions button { min-height:48px; width:100%; padding:0 6px; font-size:12px; gap:4px; }
  .actions button svg { width:16px; height:16px; }
  .priority-row { gap:12px; padding:8px 0; }
  .priority-row p { font-size:15px; }
  .order { min-width:20px; font-size:12px; }
  .history-row { padding:16px 0; }
  .empty { padding:48px 8px; }
  .add-area form { flex-wrap:wrap; justify-content:flex-end; }
  .text-field { flex-basis:100%; margin:8px 0 0; }
  footer { margin-top:24px; font-size:10px; }
  .toast { left:16px; right:16px; bottom:calc(96px + env(safe-area-inset-bottom)); transform:none; width:auto; max-width:none; gap:12px; font-size:12px; line-height:18px; }
  .toast>span { gap:8px; }
  .demo-banner { font-size:11px; margin-bottom:20px; }
}
@media (prefers-reduced-motion:no-preference) {
  button::after { transition:opacity 120ms linear; }
  .nav-icon { transition:background-color 160ms ease; }
  .toast { animation:snackbar-in 180ms ease-out; }
  @keyframes snackbar-in { from { opacity:0; margin-bottom:-8px; } to { opacity:1; margin-bottom:0; } }
}
.nav-label-short { display:none; }
.actions button { white-space:nowrap; }
@media (max-width:720px) {
  .nav-label { display:none; }
  .nav-label-short { display:block; font-size:11px; line-height:16px; white-space:nowrap; }
}
@media (max-width:350px) {
  .actions { gap:5px; }
  .actions button { padding:0 4px; gap:3px; }
  .actions button svg { width:14px; height:14px; }
}

.content { padding-top:28px; }
.intro { margin-bottom:20px; }
.demo-banner { margin-bottom:16px; padding:8px 12px; }
.task-row,.priority-row { display:flex; flex-wrap:nowrap; min-height:48px; padding:6px 12px; gap:16px; }
.task-row p,.priority-row p { flex:1; flex-basis:auto; font-size:14px; line-height:22px; margin:0; }
.actions { display:flex; flex-shrink:0; gap:4px; margin-left:auto; }
.actions button { width:32px; height:32px; min-height:32px; padding:0; gap:0; flex-shrink:0; }
.actions button svg { width:18px; height:18px; }
.done-button { width:32px; height:32px; min-height:32px; }
.done-button svg { width:22px; height:22px; }
@media (max-width:720px) {
  .content { padding-top:20px; }
  .task-row,.priority-row { min-height:52px; padding:6px 0; gap:8px; }
  .task-row p,.priority-row p { font-size:13px; line-height:20px; }
  .actions { display:flex; gap:2px; margin-left:auto; }
  .actions button { width:32px; height:36px; min-height:36px; padding:0; }
  .actions button svg { width:16px; height:16px; }
  .done-button { width:36px; height:36px; min-height:36px; }
}

.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
main { padding-top:24px; }
.content { min-height:calc(100dvh - 48px); padding-top:24px; }
.actions button,.done-button,.circle-button { width:32px; min-width:32px; max-width:32px; height:32px; min-height:32px; max-height:32px; aspect-ratio:1; border-radius:50%; padding:0; flex-shrink:0; }
.done-button { color:var(--md-sys-color-primary); border:1px solid var(--md-sys-color-outline); }
.done-button svg { width:18px; height:18px; border:0; padding:0; border-radius:0; }
.demo-banner { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:4px 8px 4px 12px; margin-bottom:16px; }
.demo-controls { display:flex; align-items:center; gap:4px; }
.undo-dock { position:fixed; right:32px; bottom:24px; z-index:30; display:flex; flex-direction:column; align-items:center; gap:3px; padding:6px; border-radius:28px; background:var(--md-sys-color-surface-container-low); box-shadow:0 2px 8px #0002; }
.persistent-undo { width:44px; height:44px; min-height:44px; border-radius:50%; padding:0; color:var(--md-sys-color-on-primary-container); background:var(--md-sys-color-primary-container); }
.undo-dock>span { font-size:10px; line-height:14px; color:var(--md-sys-color-on-surface-variant); }
.priority-row { gap:12px; }
.drag-handle { flex-shrink:0; width:28px; height:32px; min-height:32px; padding:0; border-radius:50%; color:var(--md-sys-color-on-surface-variant); touch-action:none; cursor:grab; user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; }
.drag-handle:active { cursor:grabbing; }
.is-dragging { background:var(--md-sys-color-primary-container); border-radius:8px; box-shadow:0 2px 8px #0b57d033; position:relative; z-index:2; }
@media(max-width:720px) {
 main { padding-top:0; }
 .content { min-height:calc(100dvh - 80px); padding-top:16px; padding-bottom:112px; }
 .actions button,.done-button,.circle-button { width:32px; min-width:32px; max-width:32px; height:32px; min-height:32px; max-height:32px; border-radius:50%; }
 .task-row,.priority-row { min-height:48px; }
 .priority-row { gap:8px; }
 .drag-handle { width:24px; height:32px; min-height:32px; }
 .order { min-width:18px; }
 .undo-dock { right:16px; bottom:calc(92px + env(safe-area-inset-bottom)); }
 .demo-banner { font-size:10px; line-height:16px; }
}


.action-apply,.choice-apply { --choice-bg:#d3e3fd; --choice-ink:#0842a0; }
.action-hold,.choice-hold { --choice-bg:#ffefc3; --choice-ink:#754d00; }
.action-complete,.choice-complete,.done-button { --choice-bg:#c4eed0; --choice-ink:#146c2e; }
.action-exclude,.choice-exclude { --choice-bg:#f9dedc; --choice-ink:#a32622; }
.actions button.choice-selected,.done-button.choice-selected { opacity:1; color:var(--choice-ink,#0842a0); background:var(--choice-bg,#d3e3fd); border-color:currentColor; box-shadow:0 0 0 3px var(--choice-bg,#d3e3fd); }
.history-row p { display:flex; align-items:baseline; gap:10px; }
.history-choice { flex-shrink:0; border-radius:6px; padding:2px 8px; font-size:12px; font-weight:600; line-height:20px; color:var(--choice-ink); background:var(--choice-bg); }


.candidate-copy { flex:1; min-width:0; }
.candidate-destination { display:block; margin-bottom:2px; font-size:11px; line-height:15px; color:var(--md-sys-color-on-surface-variant); overflow-wrap:anywhere; }
.task-row .candidate-copy p { margin:0; }
@media(max-width:720px) { .candidate-destination { font-size:10px; line-height:14px; } }

.task-row .candidate-copy p,.priority-row p { overflow-wrap:anywhere; white-space:normal; }


.task-row { align-items:center; gap:24px; padding:22px 16px; min-height:112px; }
.task-row .candidate-copy p { font-size:17px; line-height:1.65; font-weight:500; }
.task-row .candidate-destination { font-size:12px; line-height:1.6; margin-bottom:7px; }
.task-row .actions { gap:10px; }
.task-row .actions button { width:48px; min-width:48px; max-width:48px; height:48px; min-height:48px; max-height:48px; border-radius:50%; }
.task-row .actions button svg { width:22px; height:22px; }
@media(max-width:1000px) {
 .task-row { display:flex; flex-direction:column; align-items:stretch; gap:16px; padding:22px 12px; }
 .task-row .candidate-copy { width:100%; }
 .task-row .actions { align-self:flex-end; margin-left:0; }
}
@media(max-width:720px) {
 .task-row { padding:22px 4px; gap:16px; }
 .task-row .candidate-copy p { font-size:17px; line-height:1.65; }
 .task-row .candidate-destination { font-size:12px; line-height:1.6; margin-bottom:7px; }
 .task-row .actions { gap:16px; }
}



.task-row{flex-direction:column;align-items:stretch;gap:18px;padding:24px 16px}
.candidate-breadcrumb{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 9px;font-size:13px;line-height:1.7;color:#566775}
.candidate-breadcrumb li{display:flex;align-items:baseline;gap:9px;min-width:0;overflow-wrap:anywhere}
.candidate-breadcrumb strong{font-weight:600;color:#3b5264}.candidate-breadcrumb li>span{color:#8b9aa5}
.candidate-note{font-size:14px;line-height:1.8;color:#566473;margin-top:12px;padding:12px 14px;background:#f4f7fa;border-radius:8px}
.note-label{display:block;font-size:11px;font-weight:600;color:#74808b;margin-bottom:3px}.candidate-before{margin-bottom:3px}.candidate-remaining{font-weight:600;margin-top:4px}
.candidate-controls{display:flex;align-items:center;justify-content:flex-end;gap:14px;width:100%}
.candidate-kind{display:inline-flex;align-items:center;flex-shrink:0;padding:4px 8px;border-radius:5px;font-size:11px;font-weight:600;line-height:18px;background:#fff0ce;color:#775000}
.kind-new{background:#dfedff;color:#174b89}.kind-change{background:#ece5fa;color:#654494}.kind-remove{background:#dff1e4;color:#24603a}
.task-row .actions{margin-left:0;align-self:auto;gap:10px}
.candidate-sources{font-size:12px;margin-top:10px;color:#315a7b}.candidate-sources summary{cursor:pointer;min-height:36px;align-content:center}.candidate-sources a{display:flex;align-items:center;gap:5px;min-height:36px;text-decoration:underline}
.history-controls{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.history-undo{min-height:44px;padding:0 16px;border:1px solid #acbac8;color:#365570;gap:8px;border-radius:8px;font-size:13px}.history-undo:disabled{opacity:.45}
.priority-sync-notice{padding:24px 8px;color:#566473;font-size:14px;line-height:1.8}.priority-sync-notice a{display:inline-flex;gap:6px;align-items:center;color:#315a7b;text-decoration:underline}
@media(max-width:720px){.task-row{padding:22px 0}.candidate-controls{gap:8px}.task-row .actions{gap:8px}.candidate-note{padding:11px 12px}.candidate-breadcrumb{font-size:13px}.demo-banner{align-items:flex-start}}
@media(max-width:350px){.candidate-controls{gap:6px}.task-row .actions{gap:6px}.candidate-kind{font-size:10px;padding:3px 5px}}


.candidate-breadcrumb{font-size:17px;line-height:1.65;font-weight:500;color:var(--md-sys-color-on-surface)}
.candidate-breadcrumb strong{font-size:inherit;font-weight:inherit;color:inherit}
.done-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:19px;font-weight:600;line-height:1;letter-spacing:0;font-family:inherit}
.done-button .done-mark{width:20px;height:20px;font-size:17px}
.history-row{display:flex;align-items:center;gap:20px;padding:22px 16px}
.history-copy{flex:1;min-width:0}.history-row .history-task{display:block;margin:0;font-size:17px;line-height:1.65;font-weight:500;overflow-wrap:anywhere}
.history-result{margin:8px 0 6px;display:flex;align-items:center;gap:8px}
.history-copy>small{display:block;line-height:1.6}.choice-neutral{--choice-bg:#edf1f5;--choice-ink:#506475}
.history-undo{display:inline-flex;align-items:center;justify-content:center;width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;max-height:48px;flex-shrink:0;padding:0;border-radius:50%;border:1px solid #acbac8;color:#365570;background:transparent;aspect-ratio:1}
.history-undo.choice-selected{background:#d3e3fd;border-color:#7aa5d8;color:#0842a0;box-shadow:0 0 0 3px #d3e3fd}
@media(max-width:720px){.history-row{padding:20px 0;gap:14px}}

.lab-bar{position:relative;z-index:10;margin-left:256px;padding:10px 24px;background:#fff3cd;font:13px/1.6 Arial,sans-serif}.lab-bar button{font:inherit;text-decoration:underline;margin-left:12px}.lab-login{padding:32px}.lab-login button{display:block;margin:16px;padding:16px;background:#d3e3fd;border-radius:24px}.lab-sync{display:block}@media(max-width:720px){.lab-bar{margin-left:0;padding:8px 16px}}.sidebar .nav-item{display:flex;align-items:center;position:relative;border-radius:28px;font-weight:500;line-height:20px}
.sidebar .nav-item:hover{background:var(--md-sys-color-surface-container-high)}
.sidebar .nav-item.active{background:var(--md-sys-color-primary-container)}
.sidebar .nav-item[aria-disabled=true]{opacity:.5;cursor:default}
.lab-bar{margin-left:var(--drawer-width);padding:16px 24px 12px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;color:var(--md-sys-color-on-surface-variant);min-height:72px}
.lab-status{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}
.lab-tag{padding:3px 9px;border-radius:8px;background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);white-space:nowrap}
.lab-account{display:flex;align-items:center;gap:8px;min-width:0}
.lab-account>span{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lab-account button{min-height:36px;padding:0 12px;font-size:12px;color:var(--md-sys-color-primary)}
.lab-login{max-width:520px;margin:10vh auto;padding:32px;background:#fff;border-radius:28px}
.lab-login h1{font-size:26px}.lab-login button{display:flex;margin-top:16px;padding:12px 24px;background:var(--md-sys-color-primary-container)}
.manage-shell main.board-main{max-width:none;margin:0 24px 24px var(--drawer-width);padding:28px 24px calc(var(--field-nav-height,110px) + 24px);background:var(--md-sys-color-surface);border-radius:28px;min-height:calc(100dvh - 96px)}
.manage-title{font-size:22px;font-weight:400;margin:0 0 24px;color:var(--md-sys-color-on-surface)}
.manage-shell .field{border:1px solid #e3e6e8;border-radius:16px;box-shadow:none;padding:0 12px 12px}
.manage-shell .field-heading{min-height:40px;border-bottom:1px solid #e3e6e8;margin-bottom:8px}
.manage-shell .field-heading h3{font-family:inherit;font-size:13px;font-weight:500;color:var(--md-sys-color-on-surface)}
.manage-shell .handle{min-height:32px;color:var(--md-sys-color-outline)}
.manage-shell .tiptap{font-family:inherit;font-size:14px;color:var(--md-sys-color-on-surface)}
.manage-shell .tiptap p{line-height:1.65!important;min-height:1.65em}
.manage-shell .tiptap a{color:var(--md-sys-color-primary)}
.manage-shell .bottom-dock{left:var(--drawer-width);right:24px;bottom:12px;border:1px solid #e3e6e8;background:var(--md-sys-color-surface-container-low);border-radius:20px;box-shadow:0 2px 8px #1f1f1f08}
.manage-shell .board-footer{margin:0;padding:8px 16px;color:var(--md-sys-color-on-surface-variant)}
.manage-shell .board-footer button{min-height:36px;padding:6px 12px;color:var(--md-sys-color-primary);font-size:12px}
.manage-shell .board-footer .add{background:var(--md-sys-color-primary-container);border:0;color:var(--md-sys-color-on-primary-container);border-radius:28px}
.manage-shell .board-footer .notice{color:var(--md-sys-color-on-surface-variant)}
.manage-shell .editor-tools>button{min-height:40px;height:40px;width:40px}
.manage-shell .field.priority-fixed{top:148px!important;max-height:calc(100dvh - var(--field-nav-height,110px) - 172px)}
@media(min-width:721px) and (max-width:1199px){.sidebar .nav-item{flex-direction:column}.lab-bar{padding-right:16px}.manage-shell main.board-main{margin-right:16px;padding-left:16px;padding-right:16px}.manage-shell .bottom-dock{right:16px}.sidebar .nav-item.active{background:transparent}}
@media(max-width:720px){
 .sidebar{z-index:80;border-top:1px solid #e3e6e8}.sidebar nav{grid-template-columns:repeat(4,minmax(0,1fr))}.sidebar .nav-item{flex-direction:column;justify-content:center;border-radius:16px}.sidebar .nav-item.active{background:none}
 .lab-bar{margin:0;padding:10px 16px;min-height:64px;gap:8px;background:var(--md-sys-color-surface-container-low)}.lab-status{gap:5px;font-size:10px}.lab-account>span{display:none}.lab-account button{white-space:nowrap;font-size:10px;padding:0 8px}.lab-tag{padding:2px 6px}
 .manage-shell main.board-main,.manage-shell main.board-main.read-only{margin:0;padding:20px 12px calc(var(--field-nav-height,130px) + 112px);border-radius:0;min-height:calc(100dvh - 144px)}
 .manage-title{font-size:20px;margin-bottom:20px}.manage-shell .field{padding:0 10px 12px}.manage-shell .tiptap,.manage-shell .read-only .tiptap{font-size:14px}.manage-shell .read-only .tiptap p{line-height:24px!important}
 .manage-shell .bottom-dock{left:0;right:0;bottom:calc(80px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;max-height:30dvh;padding-bottom:0}
 .manage-shell .field-nav{display:flex;flex-direction:row;flex-wrap:wrap;height:auto;gap:4px;margin:0;width:100%;padding:4px 8px 8px}
 .manage-shell .field-nav button{flex:1 1 28%;min-height:32px;font-size:10px;border-radius:12px;background:var(--md-sys-color-secondary-container)}
 .manage-shell .board-footer{padding:4px 8px}.manage-shell .board-footer button{font-size:10px;min-height:30px;padding:4px 8px}.manage-shell .board-footer .notice{font-size:9px}
}
.lab-bar{background:var(--md-sys-color-surface-container)}
.manage-shell .board-footer button{width:auto;height:auto;margin-left:0;white-space:nowrap}
.manage-shell .board-footer .recovery-tools{flex-shrink:0}
.manage-shell .field.priority-fixed{top:var(--pinned-top,162px)!important}
@media(max-width:720px){.lab-bar{background:var(--md-sys-color-surface-container-low)}}

.sidebar .nav-label{display:block}

