:root{--ink: #182126;--muted: #5f6b73;--line: #d7d2c8;--paper: #f7f1e6;--card: #fffdf8;--sage: #bfd4c2;--sky: #c6dbeb;--peach: #ebc9bd;--butter: #eee0a8;--forest: #0d5d44;--forest-deep: #08392a;--sand: #eadbc6;font-family:Georgia,Times New Roman,serif;color:var(--ink);background:linear-gradient(135deg,#f5eddc,#faf7f0 38%,#e6f0e5)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;color:var(--ink)}.hero{display:grid;grid-template-columns:1.6fr .8fr;gap:1.25rem;padding:1.5rem 1.75rem;background:radial-gradient(circle at top right,rgba(238,224,168,.72),transparent 34%),linear-gradient(145deg,#08392af5,#0d5d44e6);color:#f9f8f2}.hero h1{margin:0;font-size:clamp(2.3rem,6vw,4.8rem);line-height:.95;letter-spacing:-.04em;max-width:8ch}.hero-subtitle{margin:.7rem 0 0;font-size:clamp(1rem,2vw,1.2rem);max-width:48rem}.hero-meta,.micro-note,.body-copy{line-height:1.6;color:#f9f8f2d1}.hero-panel{align-self:end;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:1rem 1.1rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-tags{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.hero-tags span{padding:.45rem .7rem;border-radius:999px;background:#ffffff1a;border:1px solid rgba(255,255,255,.12);font-size:.78rem;letter-spacing:.04em}.hero-list{display:grid;gap:.7rem;margin-top:.6rem}.hero-list p{margin:0;padding-left:.85rem;border-left:2px solid rgba(255,255,255,.22);line-height:1.45;color:#f9f8f2db}.stat-label,.eyebrow{display:block;margin:0;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.tab-strip{position:sticky;top:0;z-index:20;display:flex;gap:.25rem;padding:.5rem 1rem;overflow-x:auto;border-bottom:1px solid rgba(24,33,38,.08);background:#f7f1e6d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.save-bar{display:grid;gap:.45rem;padding:.85rem 1.5rem 0}.save-bar-actions{display:flex;flex-wrap:wrap;gap:.75rem}.save-note,.save-status{margin:0;font-size:.82rem;color:var(--muted)}.save-status{font-weight:600;color:var(--forest-deep)}.file-input-hidden{display:none}.tab{border:0;border-radius:999px;padding:.7rem .9rem;background:transparent;color:var(--muted);font-size:.92rem}.tab.is-active{background:var(--forest);color:#fff}.main-grid{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:1.75rem;padding:1.75rem 1.5rem 2rem}.sidebar,.workspace,.stack-lg,.stack-sm{display:flex;flex-direction:column}.stack-lg{gap:1.75rem}.stack-sm{gap:.75rem}.stack-md{display:flex;flex-direction:column;gap:1rem}.section-card{background:linear-gradient(180deg,#fffdf8f5,#fff9eefa);border:1px solid rgba(24,33,38,.08);border-radius:1.4rem;padding:1.35rem;box-shadow:0 12px 28px #1821260f}.section-card h2{margin:.2rem 0 .9rem;font-size:clamp(1.2rem,2vw,2rem)}.support-panel{position:sticky;top:4.6rem}.support-title{margin:0 0 .6rem;font-size:.85rem;font-weight:700;letter-spacing:.03em;color:var(--forest-deep)}.plain-list{margin:0;padding-left:1.1rem;display:grid;gap:.65rem}.compact-list{gap:.45rem;font-size:.92rem}.tone-chip{display:grid;gap:.35rem;border-left:4px solid var(--forest);padding:.55rem .7rem;background:#bfd4c22e;border-radius:.75rem}.framework-switcher,.stage-strip,.area-nav,.inline-metrics,.action-row,.form-grid,.code-grid{display:flex;flex-wrap:wrap;gap:.75rem}.reflective-studio{display:flex;flex-direction:column;gap:1.35rem}.control-group{display:flex;flex-direction:column;gap:.7rem}.control-label{margin:0;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.framework-switcher{gap:.85rem}.stage-strip{gap:.65rem}.pill-button,.stage-button,.area-button,.code-chip{border:1px solid rgba(24,33,38,.1);background:#fff;color:var(--ink);border-radius:999px;padding:.62rem .85rem}.pill-button.is-active{background:var(--accent);border-color:transparent}.pill-button,.stage-button{min-height:2.7rem}.stage-button.is-active,.code-chip.is-active{background:var(--forest);color:#fff}.area-button{display:grid;gap:.35rem;border-radius:1rem;min-width:220px;text-align:left;transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.area-button small,.code-chip span{display:block;font-size:.76rem;line-height:1.35}.area-button span{font-weight:700;line-height:1.3}.area-button.is-active{background:linear-gradient(135deg,#0d5d44f2,#08392af2);color:#fff}.tab,.pill-button,.stage-button,.area-button{transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.tab:hover,.pill-button:hover,.stage-button:hover,.area-button:hover{transform:translateY(-1px);box-shadow:0 6px 16px #18212614}.tab:hover{background:#0d5d4414}.area-button:hover{border-color:#0d5d442e}.prompt-box,.coverage-banner{border-radius:1rem;padding:.9rem 1rem;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 70%,white),#fff)}.reflective-prompt{padding:1rem 1.1rem}.reflective-prompt p:last-child{margin:.45rem 0 0;line-height:1.55}.coverage-banner{display:flex;align-items:baseline;gap:.75rem;background:linear-gradient(135deg,#bfd4c2e6,#eee0a8e6)}.coverage-banner strong{font-size:2.4rem}.psf-instructions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-bottom:1rem}.instruction-card,.summary-card{display:grid;gap:.35rem;padding:.85rem .95rem;border-radius:1rem;border:1px solid rgba(24,33,38,.08);background:#ffffffb8}.instruction-card span,.summary-empty,.body-copy-dark{color:var(--muted);line-height:1.55}.psf-group{display:flex;flex-direction:column;gap:.7rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1rem}.draft-guidance{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem;margin-top:1rem}.section-scaffold{margin-top:1rem;margin-bottom:1rem}.section-scaffold-card ul{margin-top:.25rem}.cpd-plan-block{display:grid;gap:1rem;margin-bottom:1rem}.section-reference-block{display:grid;gap:.9rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid rgba(24,33,38,.08)}.section-reference-list{margin-top:.15rem}.cpd-table-wrap{overflow-x:auto;border:1px solid rgba(24,33,38,.08);border-radius:1rem;background:#ffffffc7}.cpd-table{width:100%;min-width:760px;border-collapse:collapse}.cpd-table th,.cpd-table td{padding:.75rem .8rem;border:1px solid rgba(24,33,38,.12);text-align:left;vertical-align:top;font-size:.88rem;line-height:1.45}.cpd-table th{background:#bfd4c257;color:var(--forest-deep);font-size:.8rem;letter-spacing:.03em}.cpd-table td{color:var(--muted)}.table-input{width:100%;min-height:5.5rem;border:1px solid rgba(24,33,38,.12);border-radius:.6rem;padding:.55rem .6rem;resize:vertical;background:#ffffffe6;color:var(--ink)}.table-note{margin:.5rem 0 0;font-size:.76rem;line-height:1.45;color:var(--muted)}.app-footer{margin-top:2.5rem;border-top:1px solid rgba(24,33,38,.12);padding:1.4rem 1.5rem 2.2rem;text-align:center;color:var(--muted)}.footer-meta{margin-bottom:.9rem}.footer-version,.footer-institution,.footer-credit,.footer-contact,.footer-unit{margin:0}.footer-version,.footer-institution{font-size:.84rem}.footer-institution{margin-top:.3rem}.footer-license{margin-bottom:.55rem}.footer-license-link{display:inline-flex;align-items:center;gap:.35rem;color:var(--pine);font-size:.78rem;font-weight:600;text-decoration:none}.footer-license-link:hover{text-decoration:underline}.footer-license-icon{width:1rem;height:1rem}.footer-credit,.footer-contact{font-size:.76rem}.footer-contact{margin-top:.2rem}.footer-contact a{color:var(--pine);text-decoration:none}.footer-contact a:hover{text-decoration:underline}.footer-unit{margin-top:.55rem;font-size:.84rem;font-weight:600;color:var(--sky-deep)}.summary-label{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--forest-deep)}.summary-chips{display:flex;flex-wrap:wrap;gap:.5rem}.summary-chip{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .6rem;border-radius:999px;font-size:.8rem;border:1px solid rgba(24,33,38,.1);background:#fff}.summary-chip.is-selected{border-color:#0d5d441a;background:#bfd4c26b;color:var(--forest-deep)}.action-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.final-export-row{margin-top:1rem;margin-bottom:1rem}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;width:fit-content;padding:.35rem .7rem;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.03em}.status-pill.is-positive{background:#bfd4c285;color:var(--forest-deep)}.status-pill.is-balanced{background:#eee0a87a;color:#5a4a08}.status-pill.is-caution{background:#ebc9bd8c;color:#6f2d16}.status-pill.is-neutral{background:#d7d2c88c;color:var(--muted)}.final-draft-stack{display:flex;flex-direction:column;gap:1rem}.evaluation-summary{margin-top:1rem}.evaluation-summary-text{margin:0;white-space:normal;line-height:1.65;color:var(--muted)}.evaluation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.evaluation-card strong{font-size:.92rem}.rubric-band-grid{display:grid;grid-template-columns:1fr;gap:.55rem;margin:.2rem 0 .25rem}.rubric-band-cell{display:grid;gap:.3rem;padding:.7rem .8rem;border:1px solid rgba(24,33,38,.08);border-radius:.9rem;background:#ffffffb8}.rubric-band-cell strong{font-size:.8rem}.rubric-band-cell span{font-size:.8rem;line-height:1.5;color:var(--muted)}.rubric-band-cell.is-selected{border-color:transparent}.rubric-band-cell.is-positive{background:#bfd4c261}.rubric-band-cell.is-balanced{background:#eee0a857}.rubric-band-cell.is-caution{background:#ebc9bd5c}.final-draft-section{display:flex;flex-direction:column;gap:.5rem}.text-input,.text-field{width:100%;border:1px solid rgba(24,33,38,.14);border-radius:1rem;padding:1rem 1.05rem;background:#ffffffe6;color:var(--ink)}.text-input{min-height:120px;resize:vertical;line-height:1.6}.text-input.is-tall{min-height:220px}.studio-notes{min-height:240px}.text-input.is-xl{min-height:300px}.form-grid>*{flex:1 1 220px}.word-count{margin:.5rem 0 0;color:var(--muted);font-size:.84rem}.word-count.is-over{color:#9b2727;font-weight:700}.primary-button,.ghost-button{border-radius:999px;padding:.8rem 1.15rem}.primary-button{border:0;background:var(--forest);color:#fff}.ghost-button{border:1px solid rgba(13,93,68,.3);background:#0d5d440f;color:var(--forest-deep)}.draft-preview,.chat-bubble pre{margin:0;white-space:pre-wrap;word-break:break-word}.draft-preview{min-height:10rem;border-radius:1rem;padding:1rem;background:#0d5d440f}.code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.code-chip{border-radius:1rem;text-align:left}.code-chip:disabled{cursor:default;opacity:1}.chat-shell{display:flex;flex-direction:column;gap:.9rem;max-height:28rem;overflow-y:auto;padding:.25rem 0}.chat-bubble{max-width:80%;padding:.9rem 1rem;border-radius:1.2rem 1.2rem 1.2rem .35rem;background:#bfd4c26b}.chat-bubble.is-user{align-self:flex-end;border-radius:1.2rem 1.2rem .35rem;background:#c6dbeb99}.chat-role{display:block;margin-bottom:.5rem;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}@media(max-width:980px){.hero,.main-grid{grid-template-columns:1fr}.hero h1{max-width:none}.sidebar{order:2}.support-panel{position:static}}@media(max-width:640px){.hero,.main-grid,.tab-strip,.save-bar{padding-left:1rem;padding-right:1rem}.stat-grid{grid-template-columns:1fr}.chat-bubble{max-width:100%}}
