/* Shared rhythm with the Piano Trainer: pill navigation and consistent panels. */
body .randomizer-view[hidden]{display:none!important}
.randomizer-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:0;border:0}
.randomizer-tabs button{border-radius:999px;padding:8px 16px;font-size:.87rem;box-shadow:none;background:var(--surface);color:var(--ink-2)}
.randomizer-tabs button[aria-selected=true]{background:var(--accent-fill);border-color:var(--accent-fill);color:var(--on-accent)}
.randomizer-tabs button:focus-visible,.workflow-actions a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
body .workflow-card{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);padding:20px;margin:0 0 16px;box-shadow:var(--shadow)}
.workflow-card>h2,.workflow-heading h2{font:600 1.2rem var(--font-display);margin:0 0 4px;color:var(--ink)}
.workflow-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}
.workflow-heading>div{min-width:0}
.workflow-number{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:.8rem;font-weight:700}
.workflow-heading p{font-size:.84rem;color:var(--ink-2);margin:0;line-height:1.6}
.workflow-card .quick-setup{margin:0;gap:18px}
.workflow-card .quick-setup>.step{padding:0;border:0;background:none;box-shadow:none}
.workflow-card .quick-setup .sl{font:600 .76rem var(--font-ui);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:9px}
.workflow-card .quick-setup .lvl,.workflow-card .quick-setup .lvbtn{background:var(--surface-2);box-shadow:none}
.workflow-card .quick-setup .active{background:var(--accent-fill)}
.workflow-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.workflow-actions a{font-size:.82rem;color:var(--accent);font-weight:600;text-decoration:none}
.prompt-head .controls{margin:12px 0 20px}.prompt-head .prompt-summary{margin-top:0}
body .workflow-card .card{box-shadow:none;background:var(--surface-2);border-left:1px solid var(--line);padding:14px}
body .workflow-card .card.flagged{background:var(--warn-bg);border-color:var(--warn-line)}
.workflow-card .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.workflow-card .group:last-child{margin-bottom:0}
.workflow-card .session-options{margin:0 0 16px}
.workflow-card .session-options>.step,.workflow-card .options-list>.step{padding:14px;background:var(--surface-2);border:1px solid var(--line);box-shadow:none}
.workflow-card .session-options .sl{margin-bottom:10px}
.workflow-card .timerbar{gap:10px}.workflow-card .saveform{margin:0}
.workflow-card .saveform input{background:var(--surface-2)}
.workflow-card .entry{box-shadow:none;background:var(--surface-2)}
.option-status{color:var(--accent);font-size:.8rem;font-weight:600}
.cp-stats #cp-finished{color:var(--green)}
#prompt-heading,#compose-heading,#review-heading{scroll-margin-top:85px}
@media(max-width:600px){body .workflow-card{padding:15px}.workflow-card .cards{grid-template-columns:1fr}.workflow-card .quick-setup{grid-template-columns:1fr;gap:18px}.randomizer-tabs{gap:6px}.randomizer-tabs button{padding:8px 12px;font-size:.8rem}.workflow-heading{gap:9px}.workflow-card .cyclebar .cygrp{flex-wrap:wrap}.workflow-card .saveform input{min-width:0;width:100%}.workflow-card .pcount{overflow-wrap:anywhere}}
@media print{.randomizer-tabs,.workflow-actions,.session-options,#view-options,#view-log{display:none!important}body #view-compose[hidden]{display:block!important}body .workflow-card{border:0;box-shadow:none;padding:0}.workflow-number{display:none}.workflow-heading p{display:none}.workflow-card .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Assignment controls keep the selected values in one place. */
.assignment-fields{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px}
.assignment-field{min-width:0}.assignment-field>label,.assignment-seed>label{display:block;font-size:.8rem;font-weight:600;margin-bottom:7px;color:var(--ink)}
.assignment-field select,.assignment-field input,.assignment-seed input{width:100%;min-width:0;max-width:100%;font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--line-2);border-radius:6px;padding:10px 12px;box-sizing:border-box}
.assignment-field select{cursor:pointer}.assignment-field select:focus-visible,.assignment-field input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.assignment-card .field-help{color:var(--ink-2);font-size:.8rem;line-height:1.55;margin:8px 0 0}
.assignment-portfolio,.assignment-seed{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.assignment-portfolio[hidden],.assignment-seed[hidden]{display:none!important}
.assignment-seed summary{font-size:.83rem;color:var(--accent);cursor:pointer}.assignment-seed>label{margin-top:12px}
.assignment-seed .seedline{display:flex;flex-wrap:wrap;gap:8px;margin-top:0}.assignment-seed input{flex:1 1 170px;width:auto}
.portfolio-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:18px;margin-top:15px}
.study-number,.portfolio-seed{display:flex;align-items:center;gap:8px}.study-number input{width:72px;text-align:center}.study-number span{font-size:.8rem;white-space:nowrap;color:var(--ink-2)}
.portfolio-seed input{flex:1;min-width:0}.portfolio-seed button{flex:none}.assignment-card .option-status{margin:0}
@media(max-width:700px){.assignment-fields,.portfolio-fields{grid-template-columns:1fr}.assignment-fields{gap:15px}.portfolio-seed{flex-wrap:wrap}.portfolio-seed input{flex-basis:150px}}
@media print{.assignment-card{display:none!important}}
