:root,[data-theme=light],[data-theme=dark]{--panel:var(--surface);--text:var(--ink);--muted:var(--ink-muted);--yellow:var(--accent);--green:var(--success);--blue:var(--info);--orange:var(--warning)}body{font-family:var(--font-sans);background:radial-gradient(ellipse at 95% 0,var(--accent-soft),transparent 45%),var(--bg)}h1,h2{font-family:var(--font-display);text-wrap:balance}h1{font-weight:600;font-size:36px}button,input,select,textarea{min-height:44px}input,select,textarea{border-color:var(--control-border)}button{border-radius:var(--radius-md)}button:focus-visible,a:focus-visible{outline:2px solid var(--focus)}button:hover{transform:none}.card{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.topbar{background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(18px)}.stat strong{font-family:var(--font-mono);font-size:32px}.stat{border-top:2px solid var(--line)}.stat:first-child{border-top-color:var(--info)}.stat:nth-child(2){border-top-color:var(--lilac)}.stat:nth-child(3){border-top-color:var(--success)}.pill{border-radius:var(--radius-full);padding:5px 9px}.brand{padding:0 8px;gap:12px}.official-logo{width:108px;height:76px;object-fit:contain;filter:invert(1) grayscale(1)}[data-theme=light] .official-logo{filter:none}.brand small{font-size:10px;letter-spacing:2px;border-left:1px solid var(--line);padding-left:10px}.navlabel{margin-top:20px}.phase-summary{display:flex;align-items:center;gap:18px;margin:0 0 24px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.phase-summary strong{font:24px var(--font-mono)}.phase-summary p{margin:0}.phase-summary .muted{font-size:12px}.board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;overflow:visible;min-height:400px}.column{min-width:0;background:color-mix(in srgb,var(--raised) 35%,var(--bg));border-radius:var(--radius-lg);padding:10px;border-top:3px solid var(--lane-color)}.colhead{padding:8px 2px 10px;align-items:start}.colhead strong{font-size:14px}.lane-description{color:var(--muted);font-size:10px;line-height:1.5;min-height:34px;margin:0 2px 14px}.candidate{position:relative;border-radius:12px;padding:14px;box-shadow:0 5px 12px #0002;cursor:grab;min-height:210px}.candidate h3{font-size:15px;line-height:1.35}.candidate .avatar{width:30px;height:30px;font-size:10px}.candidate footer{margin-top:14px;border-top:1px solid var(--line);padding-top:12px;gap:6px}.candidate .stage-chip{display:inline-flex;align-items:center;gap:5px;color:var(--lane-color);font-size:10px;margin-bottom:5px;font-weight:600}.candidate .stage-track{display:flex;gap:4px;margin:14px 0 10px}.stage-track i{height:3px;background:var(--line);border-radius:3px;flex:1}.stage-track i.done{background:var(--lane-color)}.card-next{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted)}.card-arrow{font-size:16px;color:var(--ink)}.candidate:hover .card-arrow{color:var(--accent-ink)}.candidate.dragging{opacity:.45;transform:scale(.98)}.column.drop-target{outline:2px dashed var(--accent-ink);outline-offset:3px;background:var(--accent-soft)}.board-help{font-size:11px;color:var(--muted);display:flex;gap:8px;align-items:center;margin:12px 0}.segmented{display:inline-flex;border:1px solid var(--line);padding:4px;border-radius:12px;background:var(--surface);gap:4px}.segmented button{border:0;background:transparent;font-size:12px;min-height:36px}.segmented .selected{background:var(--raised);box-shadow:0 2px 5px #0002;color:var(--ink)}.toolbar{justify-content:space-between}.filter-tools{display:flex;gap:8px}.filter-tools input{min-width:140px}.phase-index{font:11px var(--font-mono);color:var(--muted)}dialog{border-radius:var(--radius-xl);padding:28px;box-shadow:var(--shadow-float)}dialog .modalhead{border-bottom:1px solid var(--line);padding-bottom:18px}dialog .modalhead h2{font-size:23px;margin:8px 0 0}dialog[data-sheet=true]{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(740px,100%);border-radius:24px 0 0 24px;padding:0;overflow:auto}.sheet-head{padding:24px 28px 0;position:sticky;top:0;background:var(--surface);z-index:2}.sheet-head .modalhead{margin:0}.sheet-sub{display:flex;align-items:center;gap:10px;padding:15px 0;color:var(--muted);font-size:12px}.sheet-tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid var(--line)}.sheet-tabs button{border:0;border-radius:0;background:transparent;font-size:12px;color:var(--muted);white-space:nowrap}.sheet-tabs button[aria-selected=true]{box-shadow:inset 0 -2px var(--accent-ink);color:var(--ink)}.sheet-body{padding:24px 28px}.next-step{background:var(--raised);border:1px solid var(--line);border-left:3px solid var(--accent-ink);padding:20px;border-radius:14px;margin-bottom:24px}.next-step h3{font-size:20px;margin:7px 0 8px}.next-step p{font-size:13px;color:var(--muted)}.sheet-footer{position:sticky;bottom:0;background:var(--surface);border-top:1px solid var(--line);padding:16px 28px;display:flex;justify-content:space-between;gap:12px;z-index:2}.journey{display:grid;gap:0;margin-top:16px}.journey-step{display:flex;gap:14px;padding:0 0 20px;position:relative}.journey-step:not(:last-child):before{content:'';position:absolute;top:28px;bottom:0;left:13px;width:1px;background:var(--line)}.journey-number{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;flex-shrink:0;font:11px var(--font-mono)}.journey-step.done .journey-number{color:var(--success);background:var(--success-soft)}.journey-step.current .journey-number{color:var(--accent-ink);border-color:var(--accent-ink)}.journey-step strong{font-size:13px}.journey-step small{display:block;color:var(--muted);margin-top:4px}.check{padding:14px;border:1px solid var(--line);border-radius:10px;margin-top:10px;align-items:start;font-size:13px}.check input{min-height:20px;width:20px;height:20px;accent-color:var(--success);margin:0}.check:has(input:checked){background:var(--success-soft);border-color:var(--success)}.field-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-list dt{font-size:11px;color:var(--muted);margin-bottom:6px}.field-list dd{margin:0;font-size:14px;overflow-wrap:anywhere}.chart-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.chart-card{padding:24px}.chart-card h2{margin-bottom:6px}.chart-caption{font-size:12px;color:var(--muted);margin-bottom:24px}.chart-row{display:grid;grid-template-columns:115px 1fr 60px;gap:12px;align-items:center;font-size:12px;margin:18px 0;min-height:28px}.chart-track{height:18px;border-radius:5px;background:var(--raised);overflow:hidden}.chart-fill{height:100%;background:var(--info);border-radius:5px;transform-origin:left}.chart-row:nth-child(even) .chart-fill{background:var(--lilac)}.chart-row output{text-align:right;font-family:var(--font-mono);font-size:11px}.chart-row:focus-visible{outline:2px solid var(--focus);outline-offset:6px}.chart-note{border-top:1px solid var(--line);padding-top:14px;font-size:11px;color:var(--muted);margin-top:24px}.donut-wrap{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:20px;margin-top:24px}.donut{width:150px;height:150px;border-radius:50%;position:relative;display:grid;place-items:center;background:var(--donut)}.donut:before{content:'';position:absolute;inset:19px;background:var(--surface);border-radius:50%}.donut-center{z-index:1;text-align:center}.donut-center strong{display:block;font:30px var(--font-mono)}.donut-center span{font-size:10px;color:var(--muted)}.legend-row{display:flex;align-items:center;gap:8px;font-size:12px;padding:8px 0}.legend-row i{height:8px;width:8px;border-radius:50%;flex-shrink:0}.legend-row strong{margin-left:auto;font-family:var(--font-mono)}.vertical-chart{height:200px;display:flex;align-items:stretch;gap:20px;padding-top:10px}.vertical-item{flex:1;display:flex;align-items:center;flex-direction:column;justify-content:flex-end;gap:10px;min-width:0}.vertical-bar{width:min(52px,100%);background:var(--lilac);border-radius:8px 8px 0 0;transform-origin:bottom}.vertical-item span{text-align:center;font-size:11px;min-height:32px}.vertical-item strong{font:13px var(--font-mono)}.review-totals{display:flex;gap:8px;margin-top:24px}.review-totals div{flex:1;background:var(--raised);border-radius:12px;padding:14px}.review-totals strong{display:block;font:24px var(--font-mono);margin-bottom:6px}.review-totals span{font-size:11px;color:var(--muted)}#toast{background:var(--raised);color:var(--ink);border:1px solid var(--control-border);box-shadow:var(--shadow-float);z-index:100}.sheet-notice{font-size:11px;color:var(--muted);margin-top:20px}@media(prefers-reduced-motion:no-preference){.candidate:hover{box-shadow:var(--shadow-float)}.candidate:active{transform:scale(.98)}.card-arrow{transition:transform var(--dur-base) var(--ease-expo)}.candidate:hover .card-arrow{transform:translateX(4px)}dialog[open]{animation:ll-enter var(--dur-medium) var(--ease-expo)}.chart-fill{animation:ll-grow-x var(--dur-reward) var(--ease-out) both}.chart-row:hover .chart-fill{filter:brightness(1.15)}.check{transition:background var(--dur-fast),border-color var(--dur-fast)}}@media(max-width:1100px){.board{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid{grid-template-columns:1fr}.column{min-height:220px}.donut-wrap{grid-template-columns:150px 1fr}}@media(max-width:700px){h1{font-size:28px}.official-logo{width:74px;height:54px}.brand{align-items:center}.sheet-head,.sheet-body{padding:18px}.sheet-footer{padding:14px 18px}.toolbar,.filter-tools{width:100%;flex-wrap:wrap}.filter-tools input{max-width:none;flex:1}.board{gap:8px}.column{padding:8px}.candidate{padding:10px}.candidate h3{font-size:13px}.candidate footer{flex-wrap:wrap}.candidate .pill{font-size:9px}.phase-summary{padding:14px;gap:12px}.phase-summary .row{gap:5px}.field-list{grid-template-columns:1fr}.chart-row{grid-template-columns:95px 1fr 55px}.chart-card{padding:18px}.sheet-footer button{font-size:12px}.segmented{max-width:100%;overflow:auto}}@media(max-width:420px){.board{grid-template-columns:1fr}.donut-wrap{grid-template-columns:1fr;justify-items:center}.donut-wrap>div:last-child{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ll-spot:hover{transform:none!important}}
.dialog-feedback{font-size:13px;line-height:1.5;padding:12px 14px;background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning);border-radius:10px;margin-top:16px;flex-basis:100%}.modalhead:has(.dialog-feedback){flex-wrap:wrap}.modal-context{font-size:14px;padding:14px;background:var(--raised);border-radius:10px;margin:0 0 20px}.sheet-body>.formgrid{margin-top:10px!important}.sheet-body .card{box-shadow:none}dialog .actions{border-top:1px solid var(--line);padding-top:20px}.sheet-body .actions{border:0}.vertical-item:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.vertical-item:hover .vertical-bar{background:var(--info)}
dialog[data-sheet=true][open]{display:flex;flex-direction:column;overflow:hidden}.sheet-head{position:relative;flex-shrink:0}.sheet-body{overflow-y:auto;min-height:0;flex:1}.sheet-footer{position:relative;flex-shrink:0}.sheet-body .next-step{scroll-margin-top:20px}
.tutorial-steps{padding-left:24px;display:grid;gap:16px;color:var(--muted);font-size:14px;line-height:1.65;margin:20px 0 24px}.tutorial-steps li::marker{color:var(--accent-ink);font-family:var(--font-mono)}
.mobile-dock{display:none}.mobile-menu{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-menu button{text-align:left;min-height:52px}button,input,select,textarea{touch-action:manipulation}@media(max-width:700px){body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.sidebar nav{display:none}.sidebar{padding:8px 14px}.sidebar .brand{justify-content:space-between}.sidebar .brand small{margin-right:6px}.topbar .tools{width:100%;justify-content:space-between}.topbar select{flex:1;max-width:190px}.mobile-dock{position:fixed;bottom:0;left:0;right:0;z-index:25;display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:var(--shadow-float);gap:4px}.mobile-dock button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;min-height:52px;border:0;background:transparent;padding:6px;color:var(--muted)}.mobile-dock button span{font-size:20px}.mobile-dock button[aria-current=page]{background:var(--raised);color:var(--accent-ink)}input,select,textarea{font-size:16px}dialog:not([data-sheet=true]){width:calc(100% - 16px);max-width:none;padding:20px;max-height:calc(100dvh - 24px)}.heading{flex-wrap:wrap;gap:12px}.heading>.primary{width:100%}.card>.row.between{align-items:flex-start}.card .row button{min-height:44px}.tutorial-steps{line-height:1.75;font-size:14px}.sheet-tabs button{padding:12px 10px}.formgrid{gap:14px}.mobile-menu{grid-template-columns:1fr 1fr}.mobile-menu button{font-size:13px}}
