.ko-design h1,.ko-design h2{font-family:var(--fi-font-serif);text-wrap:balance;font-weight:400}.ko-design h1{font-size:var(--fi-text-4xl);margin:0 0 var(--fi-space-5);letter-spacing:-.035em;line-height:1.06}.ko-design h2{font-size:var(--fi-text-2xl);margin:0 0 var(--fi-space-4);line-height:1.18}.ko-design p{max-width:65ch}.ko-design a{text-underline-offset:.22em}.ko-design :is(button,input,textarea,select,summary,a):focus-visible{outline:2px solid var(--fi-focus);outline-offset:4px}.ko-start-head{gap:var(--fi-space-8);padding-block:var(--fi-space-8);grid-template-columns:1.25fr 1fr;align-items:center;display:grid}.ko-start-intro{font-family:var(--fi-font-serif);font-size:var(--fi-text-lg);color:var(--fi-text-soft);margin:0}.ko-family-line{font-size:var(--fi-text-sm);color:var(--fi-text-muted);margin:var(--fi-space-5) 0 0}.ko-question-list{display:grid}.ko-question-list a{gap:var(--fi-space-2);border-top:1px solid var(--fi-line);padding:var(--fi-space-4) 0;color:var(--fi-text);font-family:var(--fi-font-serif);font-size:var(--fi-text-lg);grid-template-columns:1fr auto;line-height:1.3;text-decoration:none;display:grid}.ko-question-list a:last-child{border-bottom:1px solid var(--fi-line)}.ko-question-list a:hover>span:first-child{text-decoration:underline}.ko-question-list small{font-family:var(--fi-font-sans);font-size:var(--fi-text-xs);color:var(--fi-text-muted);grid-column:1/-1}.ko-start-feature{background:var(--fi-bg-sunk);border-block:1px solid var(--fi-line);grid-template-columns:1.4fr 1fr;padding-inline:0;display:grid}.ko-feature-drawing{padding:var(--fi-space-6);color:var(--fi-accent);flex-direction:column;justify-content:center;text-decoration:none;display:flex}.ko-feature-drawing .ko-place-drawing{border:1px solid var(--fi-line)}.ko-feature-copy{padding:var(--fi-space-7) var(--fi-space-6);align-self:center}.ko-feature-copy p{color:var(--fi-text-soft)}.ko-design-button{justify-content:center;align-items:center;gap:var(--fi-space-4);padding:var(--fi-space-3) var(--fi-space-5);border:1px solid var(--fi-accent-strong);border-radius:var(--fi-radius-sm);background:var(--fi-accent-strong);color:var(--fi-on-accent);font:600 var(--fi-text-sm)/1.4 var(--fi-font-sans);cursor:pointer;min-height:44px;text-decoration:none;display:inline-flex}.ko-design-button:hover{background:var(--fi-accent);border-color:var(--fi-accent);color:var(--fi-on-accent)}.ko-design-button:disabled{opacity:.6;cursor:default}.ko-design .ko-fine{font-size:var(--fi-text-sm);color:var(--fi-text-muted);line-height:1.5}.ko-score-preview{gap:var(--fi-space-2);margin:var(--fi-space-4) var(--fi-space-6) 0;text-align:center;font:var(--fi-text-xs) var(--fi-font-mono);color:var(--fi-text-muted);grid-template-columns:repeat(8,1fr);display:grid}.ko-score-preview i{background:var(--fi-line);height:9px}.ko-score-preview i.is-on{background:var(--fi-accent)}.ko-start-directions{gap:var(--fi-space-7);padding-block:var(--fi-space-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ko-start-directions article{border-top:1px solid var(--fi-line);padding-top:var(--fi-space-5)}.ko-start-directions h2{font-size:var(--fi-text-xl)}.ko-start-directions p{color:var(--fi-text-soft);font-size:var(--fi-text-sm)}.ko-start-directions a{font-size:var(--fi-text-sm)}.ko-start-close{padding-bottom:var(--fi-space-8)}.ko-start-close h2{font-size:var(--fi-text-xl)}.ko-start-close p{color:var(--fi-text-soft)}.ko-start-close>a{font-size:var(--fi-text-sm)}.ko-workshop-head{padding-block:var(--fi-space-6)}.ko-workshop-title{justify-content:space-between;gap:var(--fi-space-5);align-items:end;display:flex}.ko-workshop-title h1{font-size:var(--fi-text-3xl);margin-bottom:var(--fi-space-3)}.ko-workshop-title p{color:var(--fi-text-soft);font-family:var(--fi-font-serif);font-size:var(--fi-text-lg);margin:0}.ko-workshop-jump{font-size:var(--fi-text-sm);padding-block:var(--fi-space-3);flex-shrink:0}.ko-workshop-grid{gap:var(--fi-space-7);padding-block:var(--fi-space-5) var(--fi-space-7);grid-template-columns:1.1fr 1fr;display:grid}.ko-workshop-grid>*,.ko-notes-section>*{min-width:0}.ko-design .ko-panel-heading{font-size:var(--fi-text-xl);padding-top:var(--fi-space-4);border-top:1px solid var(--fi-line)}.ko-live-place{background:var(--fi-bg-sunk);margin:0}.ko-place-drawing{width:100%;height:auto;display:block}.ko-land{fill:var(--fi-bg-sunk)}.ko-contours{stroke:var(--fi-accent);opacity:.22;stroke-width:1.5px}.ko-water{fill:color-mix(in srgb, var(--fi-accent-2) 26%, var(--fi-bg))}.ko-water-line{fill:none;stroke:var(--fi-accent-2);opacity:.6;stroke-width:1.5px}.ko-wood{fill:var(--fi-accent-wash)}.ko-bridge{stroke:var(--fi-text-soft);stroke-width:4px;fill:none}.ko-path{fill:none;stroke:var(--fi-text-muted);stroke-width:2px;stroke-dasharray:5 5}.ko-house{fill:var(--fi-surface);stroke:var(--fi-text-soft);stroke-width:1.8px}.ko-tree{fill:var(--fi-accent-wash);stroke:var(--fi-accent-strong);stroke-width:1.7px}.ko-gathering{fill:none;stroke:var(--fi-accent-strong);stroke-width:2px}.ko-place-drawing [data-terrain]{display:none}.ko-place-drawing[data-setting=river] [data-terrain=river],.ko-place-drawing[data-setting=coast] [data-terrain=coast],.ko-place-drawing[data-setting=woodland] [data-terrain=woodland]{display:block}.ko-live-place figcaption{gap:var(--fi-space-1);padding:0 var(--fi-space-5) var(--fi-space-5);flex-direction:column;display:flex}.ko-live-place strong{font-family:var(--fi-font-serif);font-size:var(--fi-text-xl);overflow-wrap:anywhere;font-weight:400}.ko-live-place figcaption>span{font-size:var(--fi-text-sm);color:var(--fi-text-soft)}.ko-place-fields{gap:var(--fi-space-4);margin-top:var(--fi-space-5);grid-template-columns:1.2fr 1fr;display:grid}.ko-design label{font-size:var(--fi-text-sm);color:var(--fi-text-soft);display:block}.ko-design :is(input:not([type=range]),select,textarea){box-sizing:border-box;background:var(--fi-surface);width:100%;color:var(--fi-text);border:1px solid var(--fi-text-muted);border-radius:var(--fi-radius-sm);font:inherit;padding:var(--fi-space-3);margin-top:var(--fi-space-2);display:block}.ko-design textarea{resize:vertical;min-height:5rem}.ko-design ::placeholder{color:var(--fi-text-muted);opacity:1}.ko-rhythm-panel>p{font-size:var(--fi-text-sm);color:var(--fi-text-soft)}.ko-sequencer{margin-block:var(--fi-space-5)}.ko-beat-count,.ko-beat-row{margin-top:var(--fi-space-2);grid-template-columns:5rem repeat(8,minmax(0,1fr));align-items:center;gap:5px;display:grid}.ko-beat-count{font:var(--fi-text-xs) var(--fi-font-mono);text-align:center;color:var(--fi-text-muted)}.ko-track-name{font-size:var(--fi-text-xs);color:var(--fi-text-soft)}.ko-beat{aspect-ratio:1;background:var(--fi-surface);width:100%;min-height:30px;color:var(--fi-text-muted);border:1px solid var(--fi-text-muted);cursor:pointer;font:var(--fi-text-base) var(--fi-font-sans);border-radius:3px;padding:0}.ko-beat[aria-pressed=true]{background:var(--fi-accent-strong);border-color:var(--fi-accent-strong);color:var(--fi-on-accent)}.ko-beat.is-current{outline:2px solid var(--fi-focus);outline-offset:2px}.ko-player{gap:var(--fi-space-5);grid-template-columns:auto 1fr;align-items:center;display:grid}.ko-player label{font-size:var(--fi-text-xs)}.ko-player output{font-family:var(--fi-font-mono);color:var(--fi-text)}.ko-player input{width:100%;accent-color:var(--fi-accent);margin-top:var(--fi-space-2);display:block}.ko-workshop-help{border-top:1px solid var(--fi-line);margin-top:var(--fi-space-4);font-size:var(--fi-text-sm)}.ko-workshop-help summary{padding-block:var(--fi-space-3);cursor:pointer}.ko-workshop-help>div{color:var(--fi-text-soft);padding:0 var(--fi-space-4);border-left:2px solid var(--fi-line)}.ko-related{font-size:var(--fi-text-sm);margin-top:var(--fi-space-5);display:inline-block}.ko-notes-section{gap:var(--fi-space-8);border-top:1px solid var(--fi-line);padding-block:var(--fi-space-7);scroll-margin-top:var(--fi-space-5);grid-template-columns:.8fr 1.2fr;display:grid}.ko-notes-section>div>p{color:var(--fi-text-soft)}.ko-note-fields>label+label{margin-top:var(--fi-space-5)}.ko-keep-actions{gap:var(--fi-space-4);margin-top:var(--fi-space-5);flex-wrap:wrap;align-items:center;display:flex}.ko-keep-actions>p{min-width:15ch;font-size:var(--fi-text-xs);color:var(--fi-text-muted);flex:1;margin:0}.ko-clear-draft{margin-top:var(--fi-space-5);font-size:var(--fi-text-xs);color:var(--fi-text-muted)}.ko-clear-draft summary{cursor:pointer;padding-block:var(--fi-space-2)}.ko-work-files{border-top:1px solid var(--fi-line);margin-top:var(--fi-space-7);padding-top:var(--fi-space-5)}.ko-work-files h3,.ko-work-files h4{font-family:var(--fi-font-serif);font-weight:400;font-size:var(--fi-text-xl);margin:0 0 var(--fi-space-3)}.ko-file-actions{gap:var(--fi-space-3);flex-wrap:wrap;align-items:center;display:flex}.ko-file-secondary{border:1px solid var(--fi-text-muted);border-radius:var(--fi-radius-sm);background:var(--fi-surface);min-height:44px;color:var(--fi-text);padding:var(--fi-space-3) var(--fi-space-4);font:inherit;font-size:var(--fi-text-sm);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.ko-file-secondary:hover{background:var(--fi-bg-sunk)}.ko-file-secondary:disabled{opacity:.6;cursor:default}.ko-file-open{border-top:1px solid var(--fi-line);margin-top:var(--fi-space-5);padding-top:var(--fi-space-4)}.ko-design .ko-work-files [hidden],.ko-work-files [data-file-status]:empty{display:none}.ko-file-preview{border-left:3px solid var(--fi-accent);padding:var(--fi-space-4);background:var(--fi-bg-sunk);margin-top:var(--fi-space-4)}.ko-file-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:20rem;font:var(--fi-text-sm)/1.6 var(--fi-font-sans);color:var(--fi-text-soft);border-block:1px solid var(--fi-line);padding-block:var(--fi-space-4);overflow:auto}.ko-file-preview :is(h4,pre):focus-visible{outline:2px solid var(--fi-focus);outline-offset:4px}.ko-file-name{overflow-wrap:anywhere;font-size:var(--fi-text-sm)}.ko-workshop-next{padding-block:var(--fi-space-5) var(--fi-space-7)}.ko-workshop-next h2{font-size:var(--fi-text-xl)}.ko-workshop-next p{font-size:var(--fi-text-sm)}.ko-no-script{color:var(--fi-text-soft);padding-block:var(--fi-space-4)}@media (width<=850px){.ko-start-head{gap:var(--fi-space-6);grid-template-columns:1fr}.ko-question-list{max-width:42rem}.ko-start-feature{grid-template-columns:1fr 1fr}.ko-workshop-grid{grid-template-columns:1fr}.ko-rhythm-panel{width:100%;max-width:42rem}.ko-notes-section{gap:var(--fi-space-6);grid-template-columns:1fr}}@media (width<=580px){.ko-start-head{padding-block:var(--fi-space-7)}.ko-start-feature,.ko-start-directions{grid-template-columns:1fr}.ko-feature-drawing{padding:var(--fi-space-4)}.ko-feature-copy{padding:var(--fi-space-5)}.ko-start-directions{gap:var(--fi-space-5);padding-block:var(--fi-space-7)}.ko-workshop-title{display:block}.ko-workshop-jump{margin-top:var(--fi-space-2);display:inline-block}.ko-place-fields{grid-template-columns:1fr}.ko-beat-count,.ko-beat-row{grid-template-columns:3.5rem repeat(8,minmax(0,1fr));gap:4px}.ko-beat{min-height:28px}.ko-score-preview{margin-inline:var(--fi-space-2)}}@media (width<=380px){.ko-beat-count,.ko-beat-row{grid-template-columns:repeat(8,minmax(0,1fr))}.ko-beat-count>span:first-child{display:none}.ko-track-name{grid-column:1/-1}}
