:root{--grass: #7CB342;--grass-hover: #6FA239;--grass-deep: #58842B;--grass-soft: #EEF6E4;--sky: #42A5F5;--sky-hover: #3594E2;--sky-deep: #2578BE;--sky-soft: #EAF5FE;--sand: #FFCC80;--sand-deep: #D49B45;--sand-soft: #FFF6E6;--brick: #E57373;--brick-deep: #BA5151;--brick-soft: #FDEEEE;--surface: #FAFAFA;--canvas-bg: #F3EFE6;--stone: #9E9E9E;--stone-line: #DDD9CE;--water: #29B6F6;--wood: #8D6E63;--wood-deep: #6B5047;--wood-soft: #EFE9E5;--ink: #2B312C;--ink-muted: #5C635D;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius-base: 24px;--radius-md: 16px;--radius-sm: 12px;--spring: cubic-bezier(.22, 1, .36, 1);--z-base: 0;--z-sticky-nav: 100;--z-overlay: 200;--z-modal: 300;--z-toast: 500}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100dvh;font-family:var(--font-ui);font-size:16px;line-height:1.6;color:var(--ink);background-color:var(--canvas-bg);background-image:radial-gradient(circle at 14% 10%,rgba(124,179,66,.13) 0%,transparent 42%),radial-gradient(circle at 86% 16%,rgba(66,165,245,.12) 0%,transparent 40%),linear-gradient(180deg,#f7f4ec,#efeae0);-webkit-font-smoothing:antialiased;overflow-x:hidden}#root{min-height:100dvh;display:flex;flex-direction:column}button,input,select,textarea{font-family:inherit;color:inherit}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@keyframes qcRiseIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.qc-rise{animation:qcRiseIn .54s ease-out both}.qc-nav{position:sticky;top:0;z-index:var(--z-sticky-nav);background:#fafafaf0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid var(--stone-line)}.qc-nav-inner{max-width:1280px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.qc-brand{display:inline-flex;align-items:center;gap:.65rem;font-weight:700;font-size:1.15rem;letter-spacing:-.02em;text-decoration:none;color:var(--ink)}.qc-brand-cube{width:34px;height:34px;border-radius:11px;background:var(--grass);color:var(--surface);display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--grass-deep);box-shadow:0 3px 0 var(--grass-deep)}.qc-container{width:100%;max-width:1280px;margin:0 auto;padding:1.5rem;flex:1}.qc-split-grid{display:grid;grid-template-columns:1.25fr .95fr;gap:1.5rem;align-items:start}@media(max-width:900px){.qc-split-grid{grid-template-columns:1fr}}.qc-card{background:var(--surface);border-radius:var(--radius-base);border:1.5px solid var(--stone-line);box-shadow:0 4px 0 var(--stone-line),0 8px 20px #2b312c0f;padding:1.5rem}.qc-card-wood{background:var(--surface);border-radius:var(--radius-base);border:2px solid var(--wood);box-shadow:0 5px 0 var(--wood-deep),0 10px 24px #2b312c14;padding:1.5rem}.qc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius-base);padding:.7rem 1.15rem;font-size:.95rem;font-weight:600;line-height:1.2;cursor:pointer;border:1.5px solid var(--stone-line);background:var(--surface);color:var(--ink);transition:transform .18s var(--spring),background-color .18s ease,opacity .18s ease;text-decoration:none;-webkit-user-select:none;user-select:none}.qc-btn:hover:not(:disabled){transform:scale(1.02) translateY(-1px)}.qc-btn:active:not(:disabled){transform:translateY(1px)}.qc-btn:disabled{opacity:.56;cursor:not-allowed}.qc-btn-primary{background:var(--grass);color:var(--surface);border-color:var(--grass-deep);box-shadow:0 3px 0 var(--grass-deep)}.qc-btn-primary:hover:not(:disabled){background:var(--grass-hover)}.qc-btn-sky{background:var(--sky);color:var(--surface);border-color:var(--sky-deep);box-shadow:0 3px 0 var(--sky-deep)}.qc-btn-sky:hover:not(:disabled){background:var(--sky-hover)}.qc-btn-sand{background:var(--sand);color:var(--ink);border-color:var(--sand-deep);box-shadow:0 3px 0 var(--sand-deep)}.qc-btn-danger{background:var(--brick-soft);color:var(--brick-deep);border-color:var(--brick)}.qc-btn-sm{padding:.45rem .85rem;font-size:.85rem;border-radius:var(--radius-md)}.qc-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;border:1.5px solid var(--stone-line);background:var(--surface);color:var(--ink);cursor:pointer;transition:transform .16s ease,background-color .16s ease}.qc-icon-btn:hover:not(:disabled){background:var(--wood-soft);transform:translateY(-1px)}.qc-field{display:flex;flex-direction:column;gap:.35rem}.qc-label{font-size:.875rem;font-weight:600;color:var(--ink);letter-spacing:.01em}.qc-input,.qc-textarea,.qc-select{width:100%;padding:.65rem .9rem;border-radius:var(--radius-md);border:1.5px solid var(--stone-line);background:var(--surface);font-size:.95rem;color:var(--ink);transition:border-color .16s ease}.qc-input:focus,.qc-textarea:focus,.qc-select:focus{outline:2px solid var(--sky);outline-offset:2px;border-color:var(--sky)}.qc-error-text{font-size:.85rem;color:var(--brick-deep);font-weight:500}.qc-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600;border:1px solid var(--stone-line);background:var(--wood-soft);color:var(--ink)}.qc-badge-mc{background:var(--sky-soft);border-color:var(--sky);color:var(--sky-deep)}.qc-badge-fib{background:var(--sand-soft);border-color:var(--sand-deep);color:var(--wood-deep)}.qc-badge-live{background:var(--grass-soft);border-color:var(--grass);color:var(--grass-deep)}.qc-sheet-list{display:flex;flex-direction:column;gap:.55rem;margin-top:1rem}.qc-sheet-head{display:grid;grid-template-columns:42px 1fr 1.15fr 110px 38px;gap:.55rem;padding:0 .4rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted)}.qc-sheet-row{display:grid;grid-template-columns:42px 1fr 1.15fr 110px 38px;gap:.55rem;align-items:center;background:#fbf9f4;border:1.5px solid var(--stone-line);border-radius:var(--radius-md);padding:.45rem}@media(max-width:700px){.qc-sheet-head{display:none}.qc-sheet-row{grid-template-columns:36px 1fr 36px}.qc-sheet-row .qc-sheet-answer-cell,.qc-sheet-row .qc-sheet-type-cell{grid-column:1 / -1}}.qc-lb-viewport{display:flex;flex-direction:column;gap:.45rem;padding:4px}.qc-lb-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.55rem .75rem;border-radius:var(--radius-md);border:1.5px solid var(--stone-line);background-color:var(--surface);background-clip:padding-box;will-change:transform,opacity}.qc-lb-row.qc-lb-compact{grid-template-columns:32px minmax(0,1fr) auto;padding:.36rem .55rem;border-radius:13px;gap:.4rem;font-size:.86rem}.qc-lb-row.qc-lb-top1{background-color:var(--sand-soft);border-color:var(--sand-deep)}.qc-lb-row.qc-lb-climbed{background-color:var(--grass-soft);border-color:var(--grass);background-clip:padding-box}.qc-lb-row.qc-lb-me{background-color:var(--sky-soft);border:2px solid var(--sky-deep);background-clip:padding-box}.qc-lb-rank{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;font-weight:700;font-size:.82rem;background:var(--wood-soft);color:var(--ink)}.qc-lb-top1 .qc-lb-rank{background:var(--sand);color:var(--ink);border:1px solid var(--sand-deep)}.qc-lb-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qc-lb-delta{display:inline-flex;align-items:center;gap:2px;font-size:.75rem;font-weight:700;padding:1px 6px;border-radius:999px}.qc-lb-delta-up{background:var(--grass-soft);color:var(--grass-deep);border:1px solid var(--grass)}.qc-lb-delta-down{background:var(--brick-soft);color:var(--brick-deep);border:1px solid var(--brick)}.qc-totem-shell{min-height:100%;background:var(--canvas-bg);padding:.65rem;display:flex;flex-direction:column;gap:.55rem}.qc-totem-header{display:flex;align-items:center;justify-content:space-between;gap:.4rem;background:var(--surface);border:1.5px solid var(--wood);border-radius:16px;padding:.4rem .6rem;box-shadow:0 3px 0 var(--wood-deep)}.qc-totem-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:var(--wood-soft);padding:3px;border-radius:14px;border:1px solid var(--stone-line)}.qc-totem-mode-btn{border:none;background:transparent;padding:.32rem .35rem;border-radius:10px;font-size:.74rem;font-weight:700;cursor:pointer;color:var(--ink-muted)}.qc-totem-mode-btn.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #2b312c1f}.qc-totem-block{background:var(--surface);border:1.5px solid var(--stone-line);border-radius:18px;padding:.65rem;box-shadow:0 3px 0 var(--stone-line)}.qc-progress-track{width:100%;height:10px;border-radius:999px;background:var(--wood-soft);overflow:hidden;border:1px solid var(--stone-line)}.qc-progress-fill{height:100%;background:var(--grass);border-radius:999px;transform-origin:left center;transition:transform .22s var(--spring)}.qc-student-shell{width:min(100%,540px);margin:0 auto;padding:1.25rem 1rem 2.5rem;display:flex;flex-direction:column;gap:1rem}.qc-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}.qc-choice-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;min-height:98px;border-radius:var(--radius-base);border:2px solid var(--stone-line);background:var(--surface);box-shadow:0 4px 0 var(--stone-line);font-size:1.65rem;font-weight:800;cursor:pointer;transition:transform .18s var(--spring),background-color .18s ease,border-color .18s ease}.qc-choice-btn:hover:not(:disabled){transform:scale(1.02) translateY(-2px)}.qc-choice-btn.selected{background:var(--sky-soft);border-color:var(--sky-deep);box-shadow:0 4px 0 var(--sky-deep);color:var(--sky-deep)}.qc-hope-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;border-radius:var(--radius-base);border:2px solid var(--stone-line);background:var(--surface);cursor:pointer;font-weight:600;transition:transform .18s var(--spring),background-color .18s ease}.qc-hope-btn.active{background:var(--sand-soft);border-color:var(--sand-deep);box-shadow:0 3px 0 var(--sand-deep)}.qc-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:#2b312c6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}.qc-modal{width:min(100%,560px);background:var(--surface);border-radius:var(--radius-base);border:2px solid var(--wood);box-shadow:0 6px 0 var(--wood-deep),0 18px 36px #2b312c2e;padding:1.5rem}
