:root{font:14px/1.65 system-ui,-apple-system,"Malgun Gothic",sans-serif;color:#302540;background:#f8f6fc;--accent:#705094;--muted:#746a80;--border:#e6def0;--surface:#fff;--soft:#f6f0fc}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a{color:var(--accent);text-decoration:none}button{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--accent);padding:9px 13px;border-radius:10px;font-weight:700}button:disabled{opacity:.48;cursor:not-allowed}button:hover:not(:disabled){background:var(--soft)}.primary{color:#fff;background:var(--accent);border-color:var(--accent)}.primary:hover:not(:disabled){background:#5a3d80}.danger{color:#a63c59}.soft{background:#fff}.topbar{display:flex;align-items:center;gap:15px;padding:16px clamp(16px,3vw,42px);border-bottom:1px solid var(--border);background:#fff}.brand{font-size:18px;letter-spacing:.06em;font-weight:900;color:#51376e}.edition{font-size:11px;letter-spacing:.1em;font-weight:800;color:#9585a7}.back-link{margin-left:auto;font-weight:700;font-size:12px}.workspace{max-width:1500px;margin:0 auto;padding:28px clamp(12px,3vw,40px) 80px}.intro{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;align-items:end}.intro h1{font-size:clamp(25px,3vw,35px);letter-spacing:-.045em;margin:6px 0}.intro p{margin:0;color:var(--muted);max-width:720px}.eyebrow{letter-spacing:.12em;font-weight:900;font-size:10px;color:#9576b2}.actions{display:flex;gap:8px;flex-wrap:wrap}.status{border:1px solid var(--border);padding:13px 17px;background:#fff;border-radius:12px;margin:20px 0}.status[data-error="true"]{color:#9d3b54;background:#fff3f5}.status[data-ok="true"]{color:#36634e;background:#f1faf4}.grid-layout{display:grid;grid-template-columns:minmax(220px,270px) minmax(0,1fr);gap:18px;align-items:start}.sidebar,.panel{border:1px solid var(--border);border-radius:17px;background:#fff;box-shadow:0 7px 24px rgba(60,36,90,.035)}.sidebar{padding:17px;position:sticky;top:12px}.sidebar-heading,.panel-heading,.subhead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.sidebar-heading{margin-top:12px}.sidebar-heading:first-child{margin:0}.sidebar-heading h2{margin:0;font-size:14px}.sidebar-heading button{padding:4px 8px;font-size:12px}.section-nav{list-style:none;margin:12px 0 22px;padding:0;display:grid;gap:7px}.section-nav button{display:block;width:100%;text-align:left;border:1px solid var(--border);font-size:13px}.section-nav button[aria-current="true"]{background:#efe7f9;border-color:#bca6d6}.section-nav span{display:block;font-size:11px;color:var(--muted);font-weight:400}.sidebar select{width:100%;margin-top:10px}.sidebar-footer{border-top:1px solid var(--border);padding-top:18px;margin-top:18px}.sidebar-footer p,.hint{font-size:12px;color:var(--muted)}.editor-main{min-width:0;display:grid;gap:18px}.panel{padding:clamp(18px,2vw,26px)}.panel h2{font-size:19px;margin:0 0 14px}.subhead{margin:25px 0 12px;padding-top:15px;border-top:1px solid var(--border)}.subhead h2,.subhead h3{margin:2px 0 0}.subhead h3{font-size:16px}.subhead p{color:var(--muted);font-size:12px;max-width:780px;margin:3px 0}.fields{display:grid;gap:12px;margin:14px 0}.fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}label{display:block;font-size:12px;font-weight:750;color:#6c597e}input,select,textarea{display:block;width:100%;border:1px solid #dcd0e8;border-radius:9px;padding:9px 10px;background:#fff;color:#302540;margin-top:5px;min-width:0}textarea{resize:vertical;min-height:55px}input:focus,select:focus,textarea:focus{outline:2px solid #ccb6e3;outline-offset:1px}.editable-list{display:grid;gap:10px}.item{border:1px solid var(--border);border-radius:12px;background:#fcfafd;padding:13px;min-width:0}.item-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.item-head strong{font-size:12px}.item-head button{font-size:11px;padding:5px 9px}.item .fields{margin:8px 0}.import-line{display:flex;gap:10px;margin-bottom:12px}.import-line select{margin:0;min-width:0}.import-line button{white-space:nowrap}.item-note{font-size:11px;color:var(--muted);margin:7px 0 0}.placeholder{border:1px dashed #d9cbe6;padding:14px;border-radius:10px;color:var(--muted);font-size:12px}.report-ok{color:#286849;font-weight:850}.report-bad{color:#a33e55;font-weight:850}.report-line{padding:10px 12px;border:1px solid var(--border);border-radius:10px;margin:7px 0}.report-list{padding-left:20px;font-size:12px}.report-list li{margin-bottom:5px}.section-stats{display:flex;flex-wrap:wrap;gap:7px}.section-stats span{font-size:11px;background:#f1eafa;color:#684887;border-radius:999px;padding:4px 9px}.mini-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.mini-row label{flex:1;min-width:120px}.empty{color:var(--muted);font-size:12px}.counter{font-weight:900;color:#705094}.fields label{min-width:0}@media(max-width:900px){.grid-layout{grid-template-columns:1fr}.sidebar{position:static}.sidebar .section-nav{display:flex;overflow-x:auto}.section-nav li{min-width:170px}}@media(max-width:560px){.fields.two,.fields.three{grid-template-columns:1fr}.import-line{flex-direction:column}.topbar .edition{display:none}.workspace{padding:17px 10px 70px}.panel{padding:14px}.actions{width:100%}.actions button{flex:1 1 40%}}@media print{.sidebar,.topbar,.actions,.subhead button,.item-head button{display:none!important}.grid-layout{display:block}.editor-main{display:block}.panel{box-shadow:none;break-inside:avoid;margin-bottom:12px}}

/* Precise short-row trace: unworked ends surround the worked span. */
.turn-report{margin:10px 0;border:1px solid #e7dced;border-radius:10px;background:#fbf8fe;padding:10px 12px}
.turn-report>summary{cursor:pointer;font-weight:750;color:#594078}
.turn-steps{margin:12px 0 0;padding-left:22px;display:grid;gap:10px}
.turn-step{background:white;border:1px solid #eee7f5;padding:10px;border-radius:10px;line-height:1.5}
.turn-step-label{font-size:12px;font-weight:700;color:#413253}
.turn-track{display:flex;gap:2px;min-height:13px;margin:9px 0;border-radius:6px;overflow:hidden}
.turn-track .unworked{background:#ede5f1;min-width:1px}
.turn-track .worked{background:#8765b3;min-width:1px}
.turn-step-meta{margin:0;font-size:12px;color:#665a73}
@media print{.turn-report{break-inside:avoid}}

/* Keep the garment workspace in the same quiet visual system as the chart editor. */
@media screen {
  :root { --kf-ui-line:#e5dfe9; --kf-ui-muted:#625b70; --kf-ui-shadow:0 10px 30px rgba(47,40,66,.065); }
  .topbar,.status,.sidebar,.panel,.item { border-color:var(--kf-ui-line); }
  .sidebar,.panel { box-shadow:var(--kf-ui-shadow); }
  .intro p { font-size:15px; line-height:1.75; color:var(--kf-ui-muted); }
  .eyebrow { font-size:11px; }
  .actions button,.back-link,.sidebar-heading button,.section-nav button,.item-head button { font-size:13px; }
  button { min-height:40px; transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease; }
  :is(button,a,input,select,textarea,summary):focus-visible { outline:3px solid #795fb1; outline-offset:3px; }
  label,.section-nav span,.sidebar-footer p,.hint,.subhead p,.item-note,.placeholder,.report-list { font-size:13px; line-height:1.65; }
  .subhead p,.sidebar-footer p,.hint,.item-note { color:var(--kf-ui-muted); }
  .section-nav button { min-height:44px; }
  .status { font-size:14px; }
  .item-head strong,.turn-step-label,.turn-step-meta { font-size:13px; }
}
@media screen and (max-width:560px) {
  .actions button { min-height:44px; padding-inline:8px; word-break:keep-all; }
  .intro p { font-size:14px; }
  .sidebar,.panel { border-radius:16px; }
}
@media screen and (prefers-reduced-motion:reduce) {
  button { transition:none; }
}
