@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Space+Grotesk:wght@400;500;700&display=swap";:root{color-scheme:light;--bg: #f2efe5;--bg-accent: #efe1c7;--card: rgba(255, 252, 246, .86);--card-border: rgba(80, 51, 15, .12);--ink: #1d1408;--muted: #715c45;--shadow: 0 28px 64px rgba(37, 22, 5, .12);--accent: #c15f3c;--accent-strong: #8c3412;--success: #1f6a47;--warning: #a56d09;--danger: #8c2d23}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Space Grotesk,sans-serif;color:var(--ink);background:radial-gradient(circle at top left,rgba(255,255,255,.7),transparent 26%),radial-gradient(circle at right 20%,rgba(193,95,60,.18),transparent 18%),linear-gradient(180deg,var(--bg-accent),var(--bg))}button,input{font:inherit}.page-shell{max-width:1280px;margin:0 auto;padding:24px}.page-shell.review-shell{max-width:none;padding:0}.page-shell.setup-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.hero-panel,.panel-card{background:var(--card);border:1px solid var(--card-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-panel{border-radius:28px;padding:18px 22px;display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap}.eyebrow,.block-label,.stat-card span,.status-badge{font-family:IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase}.eyebrow,.hero-copy,.block-label,.stat-card span{color:var(--muted)}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.4rem,2.2vw,2rem);line-height:1.02}.hero-copy{max-width:44ch;margin-top:6px;line-height:1.35;font-size:.98rem}.hero-copy-wrap{display:grid;gap:4px}.summary-strip{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(120px,1fr));min-width:min(100%,560px)}.layout-grid{display:grid;gap:20px;margin-top:20px}.connect-layout{grid-template-columns:minmax(0,560px);justify-content:center}.setup-shell-main{width:min(100%,680px)}.settings-panel,.review-panel{min-width:0}.settings-panel{display:grid;gap:20px}.panel-card{border-radius:24px;padding:22px}.panel-heading,.review-header,.answer-header,.action-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-heading h2,.review-header h2{font-size:1.15rem}.review-panel-full{min-height:100dvh}label{display:grid;gap:8px;font-size:.95rem;color:var(--muted);margin-top:14px}.field-label{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.field-help{display:inline-flex;position:relative}.field-help summary{list-style:none;cursor:pointer;border-radius:999px;padding:4px 10px;background:#1d140814;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em}.field-help summary::-webkit-details-marker{display:none}.field-help[open] summary{background:#c15f3c29;color:var(--accent-strong)}.field-help span{position:absolute;top:calc(100% + 8px);left:0;z-index:2;width:min(280px,calc(100vw - 72px));border-radius:16px;padding:12px 14px;background:#fffcf6fa;border:1px solid var(--card-border);box-shadow:0 18px 36px #25160524;color:var(--ink);line-height:1.45}input{width:100%;border-radius:14px;border:1px solid rgba(67,46,16,.18);background:#ffffffb8;color:var(--ink);padding:12px 14px}input:focus{outline:2px solid rgba(193,95,60,.35);border-color:#c15f3c99}.field-row{display:grid;grid-template-columns:1fr;gap:14px}.checkbox-row{display:flex;align-items:center;gap:10px}.checkbox-row input{width:auto}.button,.deck-pill,.grade-button{border:0;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.button:hover,.deck-pill:hover,.grade-button:hover{transform:translateY(-1px)}.button:disabled,.grade-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.button{border-radius:999px;padding:10px 16px;font-weight:600}.button.primary{background:var(--accent);color:#fff9f3}.button.secondary{background:#1d140814;color:var(--ink)}.button.ghost{background:transparent;border:1px solid rgba(29,20,8,.12);color:var(--ink)}.button.ghost.danger{color:var(--danger)}.deck-list{display:grid;gap:10px}.deck-pill{display:flex;justify-content:space-between;align-items:center;border-radius:16px;padding:14px 16px;background:#ffffffb8;color:var(--ink)}.deck-pill.active{background:linear-gradient(135deg,#c15f3cf2,#8c3412f2);color:#fff8ee}.deck-pill.compact{padding:9px 12px;border-radius:999px;gap:8px;font-size:.82rem;white-space:nowrap}.deck-totals{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.stat-card{border-radius:16px;background:#ffffffa3;padding:12px 14px;display:grid;gap:4px}.stat-card strong{font-size:1rem}.review-card{min-height:70vh;display:flex;flex-direction:column}.review-card-full{position:relative;min-height:100dvh;max-height:100dvh;border-radius:0;border-left:0;border-right:0;padding:12px 14px}.review-header{position:relative;min-height:28px}.review-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-right:40px;min-width:0}.review-scroll-area{flex:1;min-height:0;overflow-y:auto;touch-action:pan-y}.review-footer{display:grid;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(29,20,8,.08)}.undo-toast{margin-top:12px;border-radius:16px;padding:10px 12px;background:#1d140814;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px}.undo-toast span{min-width:0;font-size:.88rem}.undo-button{flex-shrink:0;padding:8px 12px}.review-setup-screen{min-height:100%}.setup-card{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffffb8;padding:14px;max-width:680px;margin:0 auto}.setup-intro{display:grid;gap:10px;margin-bottom:18px}.setup-copy{max-width:48ch;color:var(--muted);line-height:1.45}.support-card{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(29,20,8,.08);color:var(--muted)}.support-link{display:inline-flex;align-items:center;gap:8px;width:fit-content;text-decoration:none;color:var(--accent-strong)}.finished-support-link{justify-self:center;margin-top:6px}.support-link svg{width:16px;height:16px;color:#ff813f}.status-cluster{display:flex;gap:8px;flex-wrap:wrap}.status-badge{border-radius:999px;padding:6px 10px;background:#1d140814;color:var(--ink);font-size:.7rem;white-space:nowrap}.status-badge.muted{color:var(--muted)}.prompt-block,.answer-block,.context-block{border-radius:24px;background:#ffffffb8;padding:20px;margin-top:18px}.context-block{padding:12px 14px;margin-top:12px}.context-stack{display:grid;gap:6px}.context-line{padding-left:10px;border-left:2px solid rgba(29,20,8,.14);color:var(--muted);font-size:.92rem;line-height:1.3}.block-text,.context-line,.answer-tree-line,.answer-tree,.answer-placeholder{margin-top:12px;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.answer-tree{padding-left:20px}.answer-tree ul{margin-top:10px;padding-left:18px}.answer-tree-line{margin-top:8px}.answer-placeholder{color:var(--muted)}.inline-chip,.inline-ref,.cloze{display:inline-block;border-radius:10px;padding:.08em .36em;margin:0 .08em}.inline-chip{background:#c15f3c24}.inline-ref{background:#1d140814;font-family:IBM Plex Mono,monospace;font-size:.88em}.inline-link{color:var(--accent-strong);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.14em}.inline-link:hover{color:var(--accent)}.inline-code{font-family:IBM Plex Mono,monospace;font-size:.92em;padding:.08em .28em;border-radius:8px;background:#1d140814}.cloze{background:#1d14081f;color:transparent}.cloze.cloze-visible{background:#c15f3c29;color:inherit}.action-row{flex-wrap:wrap}.compact-actions .button{min-height:36px;padding:8px 12px;font-size:.84rem}.icon-action-button{padding:0}.icon-action-button svg{width:16px;height:16px}.grade-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.grade-grid.single{grid-template-columns:1fr}.grade-button{border-radius:14px;padding:10px 8px;display:grid;gap:2px;text-align:center;color:#fffdf8;min-height:50px}.grade-button strong{font-size:.72rem;font-weight:500;opacity:.92}.grade-forgot{background:linear-gradient(135deg,#8c2d23,#b34839)}.grade-hard{background:linear-gradient(135deg,#8b5d09,#c78a19)}.grade-good{background:linear-gradient(135deg,#285c8c,#2d84ba)}.grade-perfect{background:linear-gradient(135deg,#1f6a47,#2b9b68)}.banner{margin-top:16px;border-radius:16px;padding:14px 16px}.banner.error{background:#8c2d231f;color:var(--danger)}.banner.warning{background:#a56d091f;color:var(--warning)}.empty-state{min-height:46vh;display:grid;place-content:center;gap:12px;text-align:center;color:var(--muted)}.review-loading-state{min-height:32vh}.icon-button{position:absolute;top:0;right:0;width:32px;height:32px;border:0;border-radius:999px;background:#1d140814;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease}.icon-button:hover{background:#1d14081f;color:var(--ink)}.icon-button.active{background:#c15f3c24;color:var(--accent-strong)}.icon-button svg{width:16px;height:16px}@media(min-width:1024px){.layout-grid{grid-template-columns:360px minmax(0,1fr)}.field-row{grid-template-columns:1fr 1fr}}@media(max-width:900px){.summary-strip{grid-template-columns:repeat(2,minmax(120px,1fr));min-width:100%}}@media(max-width:720px){body{overflow-x:hidden}.page-shell{padding:8px}.page-shell.review-shell{padding:0}.page-shell.setup-shell{padding:10px;place-items:start}.hero-panel,.panel-card{border-radius:18px}.hero-panel{padding:12px;align-items:start;gap:12px}.layout-grid{gap:10px;margin-top:10px}.review-panel{order:-1}.settings-panel{gap:14px}.panel-card{padding:14px}.panel-heading,.review-header,.answer-header{align-items:start;flex-direction:column}.panel-heading .button,.answer-header .button{width:100%;justify-content:center}.review-header{gap:0;padding-bottom:8px;border-bottom:1px solid rgba(29,20,8,.08)}.status-badge{padding:5px 9px;font-size:.68rem}.review-meta-row{width:100%;gap:5px;padding-right:34px}.deck-pill{align-items:start;flex-direction:column;gap:6px}.deck-pill.compact{flex-direction:row;align-items:center;padding:6px 9px;font-size:.72rem}.deck-totals{grid-template-columns:1fr;gap:10px}.field-row{gap:10px}.field-help span{width:min(280px,calc(100vw - 56px))}.checkbox-row{margin-top:0}.prompt-block,.answer-block,.context-block{padding:14px;margin-top:12px;border-radius:18px}.context-block{padding:10px 12px}.block-text,.answer-tree,.answer-placeholder{font-size:.98rem;line-height:1.45}.context-line{font-size:.84rem;line-height:1.25}.action-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.action-row.reveal-actions{grid-template-columns:repeat(5,minmax(0,1fr))}.action-row.compact-four-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.action-row .button{width:100%;min-height:38px;padding:8px 10px;font-size:.9rem}.grade-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.grade-button{min-height:44px;padding:8px 4px;border-radius:12px;font-size:.74rem}.grade-button strong{display:block;font-size:.56rem;line-height:1.1}.banner{padding:10px 12px;margin-top:12px}.empty-state{min-height:24vh;padding-block:18px}.hero-copy{display:none}.summary-strip{gap:8px}.stat-card{padding:10px 12px}.stat-card strong{font-size:.95rem}.review-card{min-height:calc(100dvh - 132px);max-height:calc(100dvh - 132px);overflow:hidden}.review-card-full{min-height:100dvh;max-height:100dvh;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.review-scroll-area{overflow-y:auto;padding-bottom:8px}.review-footer{position:sticky;bottom:0;gap:8px;margin-top:10px;padding-top:12px;padding-bottom:calc(6px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#fffcf600,#fffcf6f0 18%,#fffcf6fa);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.undo-toast{margin-top:10px;padding:9px 10px;border-radius:14px;font-size:.8rem}.undo-toast span{font-size:.8rem}.undo-button{min-height:34px;padding:7px 12px;font-size:.8rem}.setup-card{padding:12px}.setup-intro{gap:8px;margin-bottom:14px}.setup-copy{font-size:.94rem}.support-card{gap:8px;margin-top:14px;padding-top:14px}.icon-button{top:0;right:0;width:28px;height:28px}.icon-button svg{width:14px;height:14px}}
