@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Space+Grotesk:wght@400;500;700&display=swap";:root{color:#58463a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#d6a87252,#0000 32%),radial-gradient(circle at 100% 100%,#583c2a29,#0000 36%),linear-gradient(#fff8ed 0%,#f4e0c1 100%);font-family:Space Grotesk,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:inherit;min-width:320px;min-height:100vh;margin:0}body:before{content:"";pointer-events:none;opacity:.4;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:42px 42px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 78%);mask-image:radial-gradient(circle,#000,#0000 78%)}#root{z-index:1;min-height:100vh;position:relative}h1,h2,h3{letter-spacing:-.03em;color:#241812;font-family:Fraunces,Georgia,serif}h1{margin:0 0 14px;font-size:clamp(2.5rem,4vw,4.8rem);line-height:.95}h2,h3,p{margin-top:0}a{color:inherit}code{font-family:Space Grotesk,Consolas,monospace}.study-shell{min-height:100vh;padding:8px 10px 12px}.study-screen{width:100%;min-height:calc(100vh - 20px)}.workspace-layout{grid-template-columns:minmax(220px,1fr) auto minmax(260px,1.1fr);align-items:start;gap:12px;width:100%;min-height:calc(100vh - 20px);display:grid}.board-stage,.panel-card,.feedback-card,.board-empty,.inline-toast{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffbf3db;border:1px solid #5e3e2424;box-shadow:0 16px 36px #47301914}.side-panel{align-self:stretch;min-width:0}.panel-card{border-radius:24px;padding:14px}.side-panel>.panel-card{min-height:100%}.panel-card.nested-panel{box-shadow:none;background:#fff9efe6;border-radius:18px;padding:12px}.panel-stack{flex-direction:column;gap:12px;display:flex}.panel-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.compact-heading{color:#5d4130;letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;font-size:13px;font-weight:700}.board-stage{border-radius:0;align-self:start;width:100%;min-width:0;padding:8px}.board-shell{justify-content:center;align-items:center;display:flex}.problem-pill,.progress-pill,.analysis-pill{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.problem-pill,.progress-pill{color:#5d4130;background:#5e3e2414}.analysis-analyzed{color:#2e6a43;background:#418a5b26}.analysis-pending,.analysis-idle,.analysis-active,.analysis-waiting{color:#6f5440;background:#835f3f1f}.board-status-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.status-line{color:#5e483a;min-width:0;font-size:14px;font-weight:500}.action-grid,.jump-grid,.problem-jump-row,.feedback-meta,.info-strip{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.action-grid>button{flex:120px}.mobile-icon-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.mobile-icon-button svg{flex:none;width:18px;height:18px}.button-label{align-items:center;display:inline-flex}.jump-grid{flex-wrap:nowrap}.problem-jump-input{color:#5d4130;min-width:0;font:inherit;background:#fffaf3eb;border:1px solid #5e3e242e;border-radius:999px;outline:none;flex:auto;padding:10px 14px}.problem-jump-input:focus{border-color:#b87a43cc;box-shadow:0 0 0 3px #b87a4329}.board-empty{aspect-ratio:1;color:#7a6454;text-align:center;border-radius:20px;place-items:center;width:min(100dvh - 24px,100vw - 40px);max-width:100%;padding:20px;display:grid}.feedback-card.slim.side-feedback{border-radius:18px;padding:12px 14px}.feedback-card p{color:#2f241f;margin:0 0 8px}.feedback-meta{color:#6b5648;font-size:13px}.compact{justify-content:flex-start}.details-strip{color:#5d4130;justify-content:flex-start;font-size:13px;font-weight:600}.inline-toast{color:#fff8ef;border-radius:16px;padding:12px 14px}button{color:#fffaf3;font:inherit;cursor:pointer;background:linear-gradient(135deg,#8f5d3f,#b87a43);border:none;border-radius:999px;padding:10px 16px;font-weight:700;transition:transform .12s,box-shadow .12s,opacity .12s;box-shadow:0 12px 24px #8f5d3f38}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}button.secondary{color:#5d4130;box-shadow:none;background:#fffaf3eb;border:1px solid #5e3e242e}button.ghost{padding:8px 12px}.eye-toggle{white-space:nowrap;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:inline-flex}.eye-toggle svg{width:19px;height:19px}.toast-success{background:linear-gradient(135deg,#2e6a43,#4f9a63)}.toast-warning{background:linear-gradient(135deg,#9f4a2f,#c7734a)}.toast-error{background:linear-gradient(135deg,#7b1f2f,#b23d57)}@media (width<=1180px){.workspace-layout{grid-template-columns:minmax(200px,.9fr) auto minmax(220px,1fr)}}@media (width<=980px){.study-shell{padding:4px}.workspace-layout{grid-template-columns:1fr;align-items:start;gap:8px}.left-panel{order:2}.board-stage{order:1}.right-panel{order:3}.panel-card,.board-stage{border-radius:0}}@media (width<=640px){.study-shell{padding:2px}.study-screen,.workspace-layout{min-height:calc(100vh - 4px)}.panel-heading,.board-status-row,.feedback-meta,.info-strip{justify-content:center}.panel-card{padding:10px}.board-stage{padding:4px}.action-grid,.problem-jump-row{align-items:stretch}.action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.action-grid>button{flex:initial}.jump-grid{flex-flow:row;align-items:center}.problem-pill,.progress-pill,.analysis-pill,.problem-jump-input{width:100%}.jump-grid>button{width:auto}.mobile-icon-button{aspect-ratio:1;border-radius:14px;width:100%;min-width:0;min-height:44px;padding:0}.mobile-icon-button .button-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}
