:root{color:#d7daea;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--app-bg:#25293c;--surface:#2f3349fa;--surface-strong:#2f3349;--surface-muted:#282c43;--surface-tint:#383d5a;--border:#d6dbff14;--border-strong:#d6dbff24;--border-hover:#d6dbff38;--shadow-sm:0 1px 2px #0206172e;--shadow-md:0 14px 30px #02061729;--shadow-lg:0 22px 44px #0206172e;--accent:#7367f0;--accent-strong:#8a80ff;--accent-soft:#7367f024;--accent-ink:#f3f2ff;--success:#28c76f;--error:#ff6b7d;--text:#d7daea;--text-soft:#b5bad3;--text-dim:#8b90ad;--control-height:2.4rem;--control-radius:4px;--control-padding-inline:.8rem;--control-font-size:.9rem;background:#25293c;font-family:Avenir Next,Hiragino Sans,Noto Sans JP,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{background:var(--app-bg)}body{min-width:320px;min-height:100vh;color:var(--text);background:var(--app-bg);margin:0;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}#root{z-index:1;min-height:100vh;position:relative}.app-shell{width:min(1360px,100% - 2rem);margin:0 auto;padding:1rem 0 2.2rem}.hero,.panel{border:1px solid var(--border);background:var(--surface-strong);box-shadow:var(--shadow-sm);border-radius:4px}.hero{box-shadow:var(--shadow-md);padding:1.2rem 1.3rem}.hero-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.9rem 1rem;display:flex}.meta-label{border:1px solid var(--border);background:var(--surface-muted);min-height:1.55rem;color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;border-radius:3px;align-items:center;margin:0;padding:0 .55rem;font-size:.68rem;font-weight:700;display:inline-flex}.hero-brand{flex:22rem;margin:0}.app-logo{width:auto;max-width:100%;height:24px;display:block}.language-toggle{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;margin-left:auto;display:inline-flex}.language-toggle .secondary-button{min-width:5.6rem}.hero-actions{gap:.75rem;margin-top:.9rem;display:grid}.project-actions{flex-wrap:wrap;gap:.75rem;display:flex}.project-feedback{color:var(--text-soft);margin:0;font-size:.92rem}.project-feedback.error{color:var(--error)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.workspace-grid{grid-template-columns:minmax(252px,320px) minmax(0,1.45fr) minmax(240px,292px);align-items:start;gap:1rem;margin-top:1rem;display:grid}.generator-panel,.editor-panel,.info-panel{min-height:100%}.panel{min-width:0;padding:1rem}.panel-heading{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.panel-heading h2,.diagram-card-header h3{letter-spacing:-.02em;margin:0;font-size:1.05rem;font-weight:700;line-height:1.3}.panel-heading h2{color:var(--accent-strong)}.diagram-card-header h3{color:var(--text)}.field-grid{gap:.75rem;margin-top:.85rem;display:grid}.field{gap:.42rem;display:grid}.field.small{min-width:170px}.field span{color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:700}.field.active span{color:var(--accent-strong)}.field input,.field select,.manual-grid button,.chord-preview-block{border:1px solid var(--border);background:var(--surface-strong);color:inherit;border-radius:4px}.field input,.field select{width:100%;height:var(--control-height);border-radius:var(--control-radius);background:var(--surface-strong);box-shadow:none;outline:none;padding:.35rem .7rem;font-size:.92rem;line-height:1.2;transition:border-color .16s,box-shadow .16s,background .16s}.field input::placeholder{color:#8b90adeb}.lyrics-line{font-variant-ligatures:none;font-family:JetBrains Mono,SFMono-Regular,Consolas,Menlo,Monaco,BIZ UD Gothic,monospace}.field.active input,.field.active select{background:var(--surface-tint);border-color:#7367f052}.field input:focus,.field select:focus,.project-actions button:focus,.layout-block-toolbar button:focus,.layout-row-add-button:focus,.generator-actions button:focus,.stock-card-actions button:focus,.card-add-button:focus-visible,.accent-button:focus,.secondary-button:focus,.panel-icon-button:focus,.manual-grid button:focus,.layout-chord-block:focus{border-color:#7367f070;outline:none;box-shadow:0 0 0 3px #7367f024}.manual-builder{border:1px solid var(--border);background:var(--surface-muted);border-radius:4px;gap:.85rem;width:100%;min-width:0;height:100%;padding:.9rem;display:grid;container-type:inline-size}.manual-builder-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.manual-builder-header h3{margin:.2rem 0 0;font-size:1rem;font-weight:700;line-height:1.2}.project-actions button,.generator-actions button,.layout-block-toolbar button,.stock-card-actions button,.accent-button,.secondary-button,.panel-icon-button{min-height:var(--control-height);padding:0 var(--control-padding-inline);border:1px solid var(--border-strong);border-radius:var(--control-radius);background:var(--surface-strong);color:var(--text);box-shadow:none;font-size:var(--control-font-size);justify-content:center;align-items:center;font-weight:600;line-height:1.2;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.generator-actions button:first-child,.layout-block-toolbar button:first-child,.stock-card-actions button:first-child,.accent-button{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.project-actions button:hover,.generator-actions button:hover,.layout-block-toolbar button:hover,.stock-card-actions button:hover,.layout-chord-block:hover,.panel-icon-button:hover{border-color:var(--border-hover);background:var(--surface-muted)}.generator-actions button:first-child:hover,.layout-block-toolbar button:first-child:hover,.stock-card-actions button:first-child:hover,.accent-button:hover{border-color:var(--accent-strong);background:var(--accent-strong);color:var(--accent-ink)}.manual-settings{flex-wrap:wrap;gap:.75rem;display:flex}.manual-settings .field{gap:.3rem}.manual-settings .field span{font-size:.7rem}.manual-settings .field.small{flex:132px;min-width:132px}.manual-settings input{height:2.3rem}.manual-grid{--manual-grid-gap:.35rem;--manual-grid-min-unit:36px;--manual-grid-max-unit:56px;--manual-grid-column-count:1;--manual-grid-button-height:clamp(28px, calc(var(--manual-grid-unit) * .68), 38px);--manual-grid-unit:clamp(var(--manual-grid-min-unit), calc(( 100cqw - (var(--manual-grid-gap) * (var(--manual-grid-column-count) - 1)) ) / var(--manual-grid-column-count)), var(--manual-grid-max-unit));gap:var(--manual-grid-gap);min-width:0;max-width:100%;padding-bottom:.2rem;display:grid;overflow-x:auto}.manual-grid-row{gap:var(--manual-grid-gap);justify-self:start;align-items:center;width:max-content;display:grid}.manual-grid-string{width:var(--manual-grid-unit);min-width:var(--manual-grid-unit);height:var(--manual-grid-button-height);min-height:var(--manual-grid-button-height);color:var(--text-soft);font-size:clamp(.76rem, calc(var(--manual-grid-unit) * .28), .95rem);justify-content:center;align-items:center;display:flex}.manual-grid button{width:var(--manual-grid-unit);min-width:var(--manual-grid-unit);height:var(--manual-grid-button-height);min-height:var(--manual-grid-button-height);box-shadow:none;font-size:clamp(.74rem, calc(var(--manual-grid-unit) * .3), 1rem);border-radius:2px;padding:0;font-weight:700;line-height:1;transition:border-color .14s,background .14s,color .14s}.manual-grid button.active{color:#f3f2ff;background:#7367f0d1;border-color:#8a80ffe6;box-shadow:inset 0 0 0 1px #f3f2ff14,0 0 0 1px #7367f038}.generator-actions{gap:.6rem;margin-top:.95rem;display:grid}.generator-actions p,.meta-note{color:var(--text-dim);margin:0;font-size:.87rem}.editor-mode-controls{justify-items:end;gap:.4rem;display:grid}.editor-mode-note{color:var(--text-soft)}.editor-mode-note.editing{color:var(--accent-strong)}.secondary-button[aria-pressed=true]{color:var(--accent-strong);background:#7367f01f;border-color:#7367f052}.editor-content{align-items:stretch;gap:.95rem;margin-top:.95rem;display:grid}.editor-content>*{min-width:0}.diagram-card{border:1px solid var(--border);background:var(--surface-strong);border-radius:4px;gap:.85rem;height:100%;padding:.9rem;display:grid}.diagram-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.diagram-name-field{width:min(100%,300px);margin-top:.7rem}.diagram-name-field+.meta-note{margin-top:.35rem}.diagram-card .chord-diagram{width:min(260px,100%);margin:0 auto}.diagram-preview-frame{width:min(260px,100%);margin:0 auto;position:relative}.diagram-preview-frame .chord-diagram{width:100%}.info-list{border:1px solid var(--border);background:var(--surface-muted);border-radius:4px;gap:0;margin:.95rem 0 0;padding:.25rem .75rem;display:grid}.info-list div{grid-template-columns:6rem minmax(0,1fr);align-items:start;gap:.3rem .8rem;padding:.7rem 0;display:grid}.info-list div+div{border-top:1px solid #d6dbff14}.info-list dt{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;font-size:.69rem;font-weight:700;line-height:1.4}.info-list dd{color:var(--text);text-align:left;overflow-wrap:anywhere;margin:0;font-size:.95rem;line-height:1.4}.layout-panel,.stock-panel{margin-top:1rem}.stock-panel-heading{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:1rem;display:flex}.panel-icon-button{width:var(--control-height);min-width:var(--control-height);padding:0;font-size:1.2rem;line-height:1}.dismissible-card{position:relative;overflow:visible}.card-dismiss-button{z-index:2;width:1.7rem;min-width:1.7rem;min-height:1.7rem;color:var(--text-soft);box-shadow:none;opacity:0;pointer-events:none;background:#101322e6;border:1px solid #d6dbff24;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:1.05rem;line-height:1;transition:border-color .16s,background .16s,color .16s,opacity .16s,transform .16s;display:inline-flex;position:absolute;top:0;right:0;transform:translate(34%,-34%)scale(.92)}.dismissible-card:hover .card-dismiss-button,.dismissible-card:focus-within .card-dismiss-button{opacity:1;pointer-events:auto;transform:translate(34%,-34%)scale(1)}.card-dismiss-button:hover,.card-dismiss-button:focus-visible{color:#fff6fa;background:#b7445de0;border-color:#ff91ab70;outline:none}.dismissible-card:hover .card-dismiss-button:disabled,.dismissible-card:focus-within .card-dismiss-button:disabled{opacity:.42;pointer-events:none}.stock-grid{flex-wrap:wrap;align-items:flex-start;gap:.5rem;margin-top:.85rem;display:flex}.stock-empty-state{justify-items:center;gap:.85rem;margin-top:.85rem;display:grid}.stock-card{z-index:0;flex:none;align-content:start;justify-items:center;gap:.65rem;width:fit-content;max-width:100%;display:grid;position:relative;overflow:visible}.stock-card[data-revealed=true]{z-index:1}.stock-card-add-button{z-index:3;white-space:nowrap;min-width:5.25rem;min-height:1.95rem;padding-inline:1.25rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 14px #02061729}.play-chord-button{z-index:4;width:1.8rem;min-width:1.8rem;height:1.8rem;min-height:1.8rem;color:var(--text-soft);background:#121626eb;border:1px solid #8a80ff5c;border-radius:999px;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex;position:absolute;bottom:-.14rem;right:-.14rem;box-shadow:0 6px 14px #0206172e}.play-chord-button:hover,.play-chord-button:focus-visible{color:#fff;background:#423c72f5;border-color:#8a80ff85;outline:none}.play-chord-button-icon{font-size:.78rem;line-height:1;display:inline-block;transform:translate(.06rem)}.diagram-play-button{bottom:-.3rem;right:-.3rem}.stock-chord-preview{justify-self:center;gap:.16rem;width:156px;max-width:100%;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s}.stock-card-toggle-button{z-index:1;color:inherit;box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0;position:absolute;inset:0}.stock-card-dismiss-button{opacity:1;pointer-events:auto;transform:translate(34%,-34%)scale(1)}.stock-card-play-button{bottom:-.16rem;right:-.16rem}.layout-card-dismiss-button{opacity:1;pointer-events:auto;transform:translate(34%,-34%)scale(1)}.layout-card-play-button{bottom:-.16rem;right:-.16rem}.stock-card[data-revealed=true] .stock-chord-preview,.stock-card-toggle-button:focus-visible~.stock-chord-preview{background:var(--surface-tint);border-color:#8a80ff6b;transform:translateY(-1px);box-shadow:0 3px 8px #02061724,0 8px 16px #02061729}.stock-card-toggle-button:focus-visible{outline:none}.stock-chord-preview .chord-preview-name{margin-bottom:0}.stock-card-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;display:grid}.stock-card-actions button{min-width:0;padding:.58rem .76rem;font-size:.82rem}.stock-add-button{flex:none;align-self:center;width:3.4rem;min-width:3.4rem;height:6.8rem}.stock-add-button-wrapper{flex:none;align-self:center;display:inline-flex;position:relative}.stock-add-button-empty{width:3rem;min-width:0;height:3rem}.stock-empty{color:var(--text-dim);margin:1rem 0 0;font-size:.9rem}.stock-empty-state .stock-empty{text-align:center;margin:0}.layout-block-toolbar button[disabled]{cursor:not-allowed;opacity:.5;transform:none}.field input:disabled,.field select:disabled,.manual-grid button:disabled{cursor:not-allowed;opacity:.56}.generator-actions button[disabled]{cursor:default;opacity:.6;transform:none}.accent-button[disabled],.secondary-button[disabled]{cursor:not-allowed;opacity:.6;transform:none}.project-actions button[disabled]{cursor:wait;opacity:.62}.layout-stage-frame{margin-top:1rem;position:relative;overflow:visible}.layout-stage-wrapper{padding-bottom:.35rem;overflow-x:auto}.layout-stage{--layout-block-width:160px;--layout-row-padding-inline:14px;--layout-stage-padding-inline:14px;padding:.9rem var(--layout-stage-padding-inline) 1rem;border:1px solid var(--border);background:var(--surface-muted);box-shadow:none;border-radius:4px;gap:.85rem;display:grid}.layout-stage[data-exporting-pdf=true]{box-shadow:none;background:#fff;border:0;gap:2px;padding-top:4px;padding-bottom:4px}.layout-stage[data-exporting-pdf=true] .layout-row,.layout-stage[data-exporting-pdf=true] .layout-row.selected{box-shadow:none;background:#fff;border:0;padding-top:2px;padding-bottom:0}.layout-stage[data-exporting-pdf=true] .layout-row-header,.layout-stage[data-exporting-pdf=true] .layout-row-delete-button{display:none}.layout-stage[data-exporting-pdf=true] .layout-chord-block,.layout-stage[data-exporting-pdf=true] .layout-chord-block.selected{box-shadow:none;background:#fff;border:0}.layout-stage[data-exporting-pdf=true] .card-dismiss-button,.layout-stage[data-exporting-pdf=true] .layout-block-hover-hint,.layout-stage[data-exporting-pdf=true] .layout-add-button,.layout-stage[data-exporting-pdf=true] .layout-row-add-button{display:none}.layout-stage[data-exporting-pdf=true] .layout-chord-layer{min-height:110px}.layout-stage[data-exporting-pdf=true] .chord-preview-block{flex-direction:column;align-items:center;gap:0;padding:2px 6px 0;display:flex}.layout-stage[data-exporting-pdf=true] .diagram-string,.layout-stage[data-exporting-pdf=true] .diagram-fret{stroke:#5a5a5a}.layout-stage[data-exporting-pdf=true] .diagram-fret.nut{stroke:#3f3f3f}.layout-row{width:100%;max-width:100%;padding:.9rem var(--layout-row-padding-inline);border:1px solid var(--border);background:var(--surface-strong);box-shadow:none;border-radius:4px;position:relative}.layout-row.selected{background:var(--surface-tint);border-color:#7367f047;box-shadow:inset 0 0 0 1px #7367f01a}.layout-row-header{top:.6rem;right:var(--layout-row-padding-inline);z-index:2;justify-content:flex-end;align-items:center;gap:.75rem;display:flex;position:absolute}.layout-row-header h3{color:var(--text-soft);margin:0;font-size:.98rem;font-weight:700}.layout-row.selected .layout-row-header h3{color:var(--accent-strong)}.layout-row-delete-button{width:1.8rem;height:1.8rem;color:var(--text-soft);box-shadow:none;background:#101322b8;border:1px solid #d6dbff24;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;transition:border-color .16s,background .16s,color .16s,opacity .16s;display:inline-flex}.layout-row-delete-button:hover,.layout-row-delete-button:focus-visible{color:#fff6fa;background:#b7445de0;border-color:#ff91ab70;outline:none}.layout-row-delete-button:disabled{cursor:not-allowed;opacity:.42}.layout-chord-layer{width:100%;min-height:150px;position:relative}.layout-block-toolbar{z-index:3;width:var(--layout-block-width);box-shadow:none;background:#101322eb;border:1px solid #d6dbff24;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem;padding:.42rem;display:grid;position:absolute;transform:translate(-50%,calc(1.1rem - 50%))}.layout-block-toolbar button{min-height:2rem;padding:0 .5rem;font-size:.76rem;line-height:1.1}.layout-block-hover-hint{z-index:2;width:max-content;max-width:none;color:var(--text);pointer-events:none;text-align:center;white-space:nowrap;background:#383d5afa;border:1px solid #8a80ff2e;border-radius:6px;padding:.34rem .52rem;font-size:.76rem;font-weight:600;line-height:1.2;position:absolute;transform:translate(-50%,.45rem);box-shadow:0 6px 14px #02061729}.card-add-button{border:1px dashed var(--border-hover);color:var(--accent-strong);box-shadow:none;background:#7367f014;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:1.9rem;font-weight:500;line-height:1;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.card-add-button:hover,.card-add-button:focus-visible{border-color:var(--accent-strong);color:var(--accent-ink);background:#7367f029;outline:none}.layout-add-button{border:1px dashed var(--border-hover);width:3.4rem;height:6.8rem;color:var(--accent-strong);box-shadow:none;background:#7367f014;border-radius:4px;padding:0;font-size:1.9rem;font-weight:500;line-height:1;transition:border-color .16s,background .16s,color .16s;position:absolute;top:18px}.layout-add-button:hover,.layout-add-button:focus{border-color:var(--accent-strong);color:var(--accent-ink);background:#7367f029;outline:none}.layout-row-add-button{border:1px dashed var(--border-hover);width:100%;min-height:3.2rem;color:var(--accent-strong);box-shadow:none;background:#7367f014;border-radius:4px;padding:0;font-size:1.9rem;font-weight:500;line-height:1;transition:border-color .16s,background .16s,color .16s}.layout-row-add-button:hover,.layout-row-add-button:focus{border-color:var(--accent-strong);color:var(--accent-ink);background:#7367f029;outline:none}.layout-row-add-tooltip,.layout-add-tooltip{z-index:3}.stock-add-tooltip{z-index:3;top:100%;left:50%}.chord-preview-block{text-align:left;gap:.42rem;padding:.42rem .36rem .32rem;transition:border-color .16s,background .16s;display:grid}.layout-chord-block{z-index:0;width:var(--layout-block-width);border:1px solid var(--border);background:var(--surface-strong);border-radius:4px;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s;position:absolute;top:0}.layout-chord-block-button{width:100%;min-height:100%;color:inherit;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0}.layout-chord-block-button.chord-preview-block{gap:.16rem}.layout-chord-block-button:focus-visible{outline:none}.layout-chord-block[data-dragging=true],.layout-chord-block[data-dragging=true] .layout-chord-block-button{cursor:grabbing}.layout-chord-block.selected{z-index:1;background:var(--surface-tint);border-color:#8a80ff6b;transform:translateY(-1px);box-shadow:0 3px 8px #02061724,0 8px 16px #02061729}.chord-preview-name{color:var(--text);letter-spacing:-.02em;margin:0 0 .42rem;font-size:.98rem;font-weight:700;line-height:1.2;display:block}.layout-chord-block .chord-preview-name{margin-bottom:0}.layout-stage[data-exporting-pdf=true] .chord-preview-name{color:#6f61b5;text-align:center;width:100%;margin-bottom:0}.lyrics-line{width:100%;color:var(--text-soft);letter-spacing:0;white-space:pre;margin-top:.14rem;padding:.16rem .45rem 0;font-size:1.02rem;line-height:1.4}.lyrics-line-input{box-sizing:border-box;box-shadow:none;appearance:none;background:0 0;border:0;border-top:1px dashed #8b90ad3d;border-radius:0;outline:none}.lyrics-line-input::placeholder,.lyrics-line-placeholder{color:var(--text-dim)}.lyrics-line-input:focus{border-top-color:#7367f070}.lyrics-line-text{cursor:text;border-top:1px dashed #8b90ad3d;outline:none;display:block}.lyrics-line-text:focus{border-top-color:#7367f070}.layout-row.selected .lyrics-line{color:var(--accent-strong)}.layout-stage[data-exporting-pdf=true] .lyrics-line{caret-color:#0000;color:#56489a;border-top:0;margin-top:0;padding-top:0}.chord-diagram{width:100%;height:auto;display:block}.diagram-title,.diagram-fret-label,.diagram-top-label,.diagram-marker-text{fill:var(--text)}.diagram-title{font-size:11px;font-weight:700}.diagram-fret-label{fill:var(--text-dim);text-anchor:middle;dominant-baseline:middle;font-size:10px}.diagram-top-label{text-anchor:middle;dominant-baseline:middle;font-size:13px;font-weight:700}.layout-stage[data-exporting-pdf=true] .diagram-title,.layout-stage[data-exporting-pdf=true] .diagram-top-label{fill:#56489a}.diagram-string,.diagram-fret{stroke:#d6dbff3d;stroke-width:1.4px}.diagram-fret.nut{stroke:#d6dbff8f;stroke-width:3px}.diagram-marker{fill:var(--accent);stroke:#2f3349fa;stroke-width:1.8px}.diagram-marker-text{fill:#eef3f8;text-anchor:middle;dominant-baseline:middle;font-size:8px;font-weight:700}.chord-diagram.compact .diagram-title{font-size:10px}.chord-diagram.compact .diagram-marker-text{font-size:7px}.modal-overlay{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0c0f1ab8;place-items:center;padding:.75rem;display:grid;position:fixed;inset:0}.chord-modal{border:1px solid var(--border-strong);background:var(--surface-strong);width:min(1400px,100vw - 1.5rem);max-height:calc(100vh - 1.5rem);box-shadow:var(--shadow-lg);border-radius:4px;padding:1rem;overflow:auto}.chord-modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.chord-modal-header h2{color:var(--text);margin:.3rem 0 0;font-size:1.3rem;line-height:1.2}.chord-modal-form,.composer-sections,.composer-editor-layout{gap:1rem;display:grid}.chord-modal-form{margin-top:1rem}.composer-section{border:1px solid var(--border);background:var(--surface-muted);border-radius:4px;min-width:0;padding:1rem}.composer-section .field-grid,.composer-section .editor-content,.composer-section .info-list,.modal-editor-content,.modal-stock-section .stock-empty{margin-top:.95rem}.modal-stock-grid .stock-card-actions{grid-template-columns:1fr}.modal-actions{justify-content:center;gap:.75rem;display:flex}.modal-layout-actions{flex-wrap:wrap;justify-content:center}.modal-submit-button{min-width:min(100%,11rem);padding-inline:1.25rem}@media (width>=980px){.editor-content{grid-template-columns:minmax(252px,320px) minmax(0,1fr)}.manual-builder{justify-self:start;max-width:480px}}@media (width<=979px){.diagram-card{gap:.65rem}.diagram-card-header{gap:.55rem}.diagram-name-field{margin-top:.45rem}.diagram-name-field+.meta-note{margin-top:.18rem}}@media (width>=1180px){.composer-sections{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:stretch}.modal-stock-section{grid-column:1/-1}}@media (width>=1320px){.composer-editor-layout{grid-template-columns:minmax(0,1fr) minmax(208px,236px);align-items:stretch}.composer-info-section .info-list{padding:.2rem .65rem}.composer-info-section .info-list div{grid-template-columns:1fr;gap:.18rem;padding:.62rem 0}.composer-info-section .info-list dt{font-size:.64rem}.composer-info-section .info-list dd{font-size:.9rem}}@media (width>=1181px){.info-panel{position:sticky;top:1rem}}@media (width<=1180px){.workspace-grid{grid-template-columns:1fr}}@media (width<=720px){.modal-overlay{padding:.5rem}.chord-modal{width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);padding:.9rem}.layout-add-button,.stock-add-button{width:3rem;height:5.8rem}.stock-add-button-empty{width:2.8rem;height:2.8rem}.stock-card-add-button{min-width:4.8rem;padding-inline:1rem}.layout-row-add-button{min-height:2.9rem;font-size:1.7rem}.modal-actions{flex-direction:column-reverse}.modal-layout-actions{flex-direction:row}.modal-actions button{width:100%}.modal-layout-actions button{width:auto}}@media (width<=760px){.app-shell{width:min(100% - 1rem,100%);padding:.9rem 0 2.2rem}.hero,.panel,.layout-stage,.layout-row,.diagram-card,.manual-builder{border-radius:4px}.hero{padding:1.05rem 1.05rem 1rem}.app-logo{height:24px}.hero-header{align-items:stretch}.language-toggle{justify-content:flex-end;width:100%}.panel{padding:1rem}.diagram-card-header{grid-template-columns:1fr;display:grid}.manual-builder-header,.manual-settings{display:grid}.info-list div{grid-template-columns:1fr;gap:.2rem}.stock-card-actions{grid-template-columns:1fr;align-items:stretch}.stock-card-actions button{width:100%}.layout-stage{--layout-stage-padding-inline:12px;--layout-row-padding-inline:12px}.layout-chord-layer{min-height:146px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
