:root{--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 2px 8px rgba(0,0,0,.08);--shadow-md: 0 8px 24px rgba(0,0,0,.12);--transition-fast: .15s ease;--transition-base: .2s ease;color:#17211c;background:#eef2ed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:1280px;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{min-height:100vh;padding:24px;background:radial-gradient(circle at 20% 0%,rgba(216,87,42,.18),transparent 32%),linear-gradient(135deg,#eef2ed,#d0dcee 42%,#f2e7d0)}.room-stage{position:relative;min-height:calc(100vh - 48px);overflow:hidden;border:1px solid rgba(23,33,28,.15);border-radius:8px;background:radial-gradient(circle at 78% 18%,rgba(217,189,123,.24),transparent 28%),radial-gradient(circle at 12% 82%,rgba(216,87,42,.18),transparent 30%),linear-gradient(120deg,#132038,#1c3248 48%,#16202e);background-size:cover;background-position:center;color:#f0f4ff;box-shadow:0 20px 60px #14191547}.room-stage.pulse-success{animation:successPulse .52s ease}.room-stage.pulse-fail .puzzle-panel{animation:lockShake .36s ease}.ambient-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(217,189,123,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(217,189,123,.06) 1px,transparent 1px),repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 12px),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px,48px 48px,auto,12px 12px,12px 12px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 78%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 78%)}.room-stage:after{position:absolute;right:32px;bottom:20px;color:#f7f1e514;content:"20 80 152K 142K 55K 46K";font-size:clamp(2rem,9vw,8rem);font-weight:900;letter-spacing:0;pointer-events:none}.topbar{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:28px 32px 0}.eyebrow{margin:0 0 8px;color:#5b9bd5;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2{margin:0;letter-spacing:0}h1{font-size:clamp(1.55rem,3vw,2.6rem)}h2{font-size:clamp(1.35rem,2.2vw,2rem)}.timer,.audio-toggle,.door-status,.primary-button,.ghost-button,.result-title,.hint-stack div{display:inline-flex;align-items:center;gap:8px}.timer{padding:10px 14px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#00000040;font-weight:800}.audio-toggle{width:42px;height:42px;justify-content:center;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#00000040;color:#f0f4ff}.promise-row{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.promise-row span{padding:8px 12px;border:1px solid rgba(217,189,123,.38);border-radius:999px;background:#08100d47;color:#f7e5b2;font-size:.9rem;font-weight:800}.intro{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:42px;align-items:center;min-height:calc(100vh - 152px);padding:40px 8vw 72px}.intro-copy{max-width:760px}.intro-copy h2{max-width:720px;font-size:clamp(2.2rem,6vw,5.2rem);line-height:1.03}.intro-copy p:not(.eyebrow){max-width:650px;color:#d0d8e8;font-size:1.08rem;line-height:1.8}.intro-hook{color:#5b9bd5!important;font-weight:800;font-size:1.05rem!important;margin-top:8px;animation:pulseText 2s ease-in-out infinite}.intro-board{display:grid;gap:16px}.data-strip{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:end;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#08100d5c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.data-strip span,.data-strip small{color:#e9d9ab;font-weight:800}.data-strip strong{color:#fff9ef;font-size:2.3rem;line-height:1}.data-strip small{grid-column:1 / -1;color:#b8c8e0;font-size:.86rem}.glass-chart{min-height:180px;padding:24px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#f8f1e11f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.glass-chart strong{display:block;margin-top:18px;font-size:4rem;line-height:1}.glass-chart span{color:#ebd49b;font-weight:800}.glass-chart small{display:block;margin-top:4px;color:#b8c8e0;font-size:.82rem;font-weight:600;opacity:.7}.glass-chart.output{background:#d8572a2e}.game-layout{position:relative;z-index:1;display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px;padding:28px 32px 32px}.scene-panel,.puzzle-panel{border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-md);background:#f7f1e5f0;color:#17211c;box-shadow:var(--shadow-md)}.scene-panel{padding:22px;align-self:start}.scene-panel>p{color:#384e60;line-height:1.7}.scene-panel .level-map{display:block;overflow-x:visible;padding-bottom:0}.scene-panel .level-map button{flex-shrink:0;min-width:64px}.scene-story{font-style:italic;border-left:3px solid #5b9bd5;padding-left:12px;margin:14px 0}.door-status{justify-content:space-between;width:100%}.door-status span{display:block;color:#526878;font-size:.86rem}.door-status strong{font-size:1.5rem}.progress-track{height:8px;margin:16px 0 20px;overflow:hidden;border-radius:999px;background:#c8d4e0}.progress-track div{height:100%;background:linear-gradient(90deg,#3b82c4,#5b9bd5);transition:width .24s ease}.signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.metric-tile{display:grid;grid-template-columns:auto 1fr;gap:6px 8px;align-items:center;padding:12px;border:1px solid #d7d1c2;border-radius:8px;background:#f4f8ff}.metric-tile span{color:#556680;font-size:.8rem;font-weight:800}.metric-tile strong{grid-column:1 / -1;font-size:1.5rem;line-height:1}.metric-tile.good strong,.metric-tile.good svg{color:#2780a0}.metric-tile.warn strong,.metric-tile.warn svg{color:#e07b4c}.rank-panel{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;margin-bottom:18px;padding:12px;border:1px solid #c4d0e0;border-radius:8px;background:linear-gradient(135deg,#fff7df,#f8fbff)}.rank-panel svg{color:#3b82c4}.rank-panel span{color:#556680;font-size:.82rem;font-weight:800}.rank-panel strong{grid-column:1 / -1;color:#20332b;font-size:1.05rem}.level-map{display:grid;gap:8px}.level-map button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid #d7d1c2;border-radius:8px;background:#f4f8ff;color:#1c2e48;text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease}.level-map button.active{border-color:#3b82c4;background:#fff1df;transform:translate(3px)}.level-map>button>span:not(.map-text){display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;border-radius:999px;background:#1a3044;color:#fff8ea;font-size:.78rem;font-weight:800}.map-text{display:grid;gap:2px;min-width:0}.map-text strong,.map-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-text strong{color:#1c2e48}.map-text small{color:#556680;font-size:.76rem}.learning-log{margin-top:20px;padding-top:18px;border-top:1px solid #d7d1c2}.learning-log strong{display:block;margin-bottom:10px;font-size:.92rem}.log-empty{color:#6b7d99;font-size:.86rem;line-height:1.6;font-style:italic}.log-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.log-item{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;background:#f9f6ee;border-radius:8px;border:1px solid #d8e0ec;animation:slideIn .3s ease both;font-size:.88rem;line-height:1.55}.log-num{display:grid;place-items:center;width:22px;height:22px;flex-shrink:0;border-radius:999px;background:#3b82c4;color:#fff;font-size:.72rem;font-weight:900}.puzzle-panel{min-width:0;padding:24px}.mission-strip{display:grid;grid-template-columns:minmax(0,1fr) 120px 100px;gap:10px;margin-bottom:18px}.mission-strip div{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;min-height:58px;padding:10px 12px;border:1px solid #c4d0e0;border-radius:8px;background:#f4f8ff}.mission-strip svg{color:#3b82c4}.mission-strip span{color:#556680;font-size:.78rem;font-weight:800}.mission-strip strong{grid-column:1 / -1;overflow:hidden;color:#20332b;text-overflow:ellipsis;white-space:nowrap}.attempt-counter small,.streak-counter small{grid-column:1 / -1;color:#3b82c4;font-size:.72rem;font-weight:700;animation:slideIn .18s ease}.attempt-quip{color:#e07b4c!important}.streak-quip{color:#3b82c4!important}.level-heading{display:flex;justify-content:space-between;gap:16px}.story-copy{max-width:850px;color:#3e5260;line-height:1.65}.primary-button,.ghost-button{min-height:42px;justify-content:center;padding:0 16px;border-radius:8px;font-weight:800}.primary-button{border:1px solid #e07b4c;background:#3b82c4;color:#fff9ef}.ghost-button{border:1px solid #cfc7b8;background:#f4f8ff;color:#20332b}.hint-button{background:#fff7df}.hint-stack{display:grid;gap:8px;margin:18px 0}.hint-stack div{align-items:flex-start;padding:10px 12px;border-left:4px solid #5b9bd5;border-radius:6px;background:#fff7df;color:#3a4860;animation:slideIn .18s ease}.puzzle-stack{display:grid;gap:12px}.mini-brief{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px dashed #5b9bd5;border-radius:8px;background:#f2f7ff;color:#3c4860}.mini-brief strong{padding:4px 8px;border-radius:999px;background:#243b33;color:#fff8ea;font-size:.78rem}.mini-brief span{line-height:1.45}.table-wrap{overflow-x:auto;border:1px solid #d8d2c4;border-radius:8px}.table-responsive{width:100%;overflow-x:auto;border-radius:var(--radius-sm)}.table-responsive table{min-width:0}table{width:100%;border-collapse:collapse;background:#f8fbff}th,td{padding:12px;border-bottom:1px solid #d4dde8;text-align:left;white-space:nowrap}th{background:#edf0e8;color:#435148;font-size:.86rem}.selected-row{background:#fff1df;box-shadow:inset 4px 0 #3b82c4}.icon-toggle{display:grid;width:28px;height:28px;place-items:center;border:1px solid #a0b8d0;border-radius:6px;background:#f4f8ff}.selected-row .icon-toggle{border-color:#3b82c4;background:#3b82c4;color:#f4f8ff}.profit-king{color:#2780a0;font-weight:900;position:relative}.profit-king:after{content:"👑";margin-left:4px;font-size:.8rem}.profit-bad{color:#e07b4c;font-weight:800}.trap-cell{text-decoration:line-through;text-decoration-color:#3b82c4;text-decoration-thickness:2px;opacity:.7}.hint-row{animation:hintGlow 2s ease-in-out infinite}.task-list{display:grid;gap:10px}.task-item{display:grid;grid-template-columns:minmax(220px,1fr) minmax(360px,520px);gap:14px;align-items:center;padding:12px;border:1px solid #dcd6ca;border-radius:8px;background:#f8fbff;transition:border-color .2s ease,background .2s ease}.task-item.bucket-critical{border-left:4px solid #3b82c4;background:#f0f6ff}.task-item.bucket-delete{border-left:4px solid #b0b0b0;background:#fafaf8;opacity:.85}.task-item.bucket-normal{border-left:4px solid #5b9bd5}.task-label-area{display:flex;align-items:center;gap:8px}.bucket-tag{font-size:.9rem;animation:popIn .2s ease}.segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.segmented button{min-height:36px;padding:0 8px;border:1px solid #c0cce0;border-radius:6px;background:#edf0f8;color:#2c4058;font-size:.9rem;font-weight:750}.segmented button.active{border-color:#3b82c4;background:#3b82c4;color:#f4f8ff;box-shadow:0 8px 18px #d8572a2e}.resource-panel{display:grid;gap:14px}.budget-meter{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff}.budget-meter strong{color:#e07b4c;font-size:1.3rem}.budget-meter.ok strong{color:#2780a0}.budget-meter.warn strong{color:#e07b4c}.allocation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.allocation-summary span{min-height:38px;padding:10px 12px;border:1px solid #c4d0e0;border-radius:8px;background:#edf0f8;color:#46534b;font-size:.9rem;font-weight:800}.alloc-tag.good{border-color:#7ab8c8;background:#e8f2fa;color:#2780a0}.alloc-tag.warn{border-color:#5b9bd5;background:#fffdf0;color:#5b7090}.alloc-tag.bad{border-color:#dfb19f;background:#fff5f0;color:#e07b4c}.slider-row{display:grid;grid-template-columns:minmax(190px,1fr) minmax(180px,2fr) 76px;gap:12px;align-items:center;padding:12px;border:1px solid #dcd6ca;border-radius:8px;background:#f8fbff}.slider-row.priority-high{border-left:5px solid #2780a0}.slider-row.priority-medium{border-left:5px solid #5b9bd5}.slider-row.priority-low{border-left:5px solid #e07b4c}.slider-row input[type=range]{accent-color:#3b82c4}.slider-label{font-weight:700;color:#1c2e48}.slider-row input[type=number]{width:76px;min-height:36px;padding:0 8px;border:1px solid #cfc7b8;border-radius:6px;background:#f4f8ff}.principle-panel{display:grid;gap:12px}.principle-panel p{margin:0;color:#3c5062;font-weight:800}.principle-template{padding:10px 14px;background:#f2f7ff;border-left:4px solid #5b9bd5;border-radius:6px;font-size:.95rem;line-height:1.6}.principle-meter{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.principle-meter span{padding:4px 10px;border:1px solid #c4d0e0;border-radius:999px;background:#edf0f8;color:#6b7d99;font-size:.78rem;font-weight:700;transition:all .2s ease}.principle-meter span.met{border-color:#7ab8c8;background:#e8f2fa;color:#2780a0}textarea{width:100%;min-height:150px;resize:vertical;padding:14px;border:1px solid #cfc7b8;border-radius:8px;background:#f8fbff;color:#17211c;line-height:1.6}.result-box{position:relative;overflow:hidden;margin-top:18px;padding:14px;border-radius:8px;line-height:1.6}.result-box.passed{border:1px solid #7ab8c8;background:linear-gradient(135deg,#e8f2fa,#eef6fc,#e0eef8);animation:resultPop .24s ease}.result-box.failed{border:1px solid #dfb19f;background:linear-gradient(135deg,#fff5f0,#eef4ff,#ffebe4);animation:resultPop .24s ease}.spark-burst{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 28%,rgba(39,114,79,.2) 0 4px,transparent 5px),radial-gradient(circle at 88% 18%,rgba(216,87,42,.2) 0 4px,transparent 5px),radial-gradient(circle at 72% 78%,rgba(217,189,123,.24) 0 5px,transparent 6px),radial-gradient(circle at 45% 55%,rgba(255,215,0,.18) 0 3px,transparent 4px),radial-gradient(circle at 15% 75%,rgba(39,114,79,.15) 0 3px,transparent 4px);animation:burstFade .9s ease forwards}.confetti-container{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}.confetti-piece{position:absolute;top:-6px;width:6px;height:6px;border-radius:2px;opacity:0;animation:confettiFall linear forwards}.shake-dot{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 20%,rgba(185,68,33,.12) 0 2px,transparent 3px),radial-gradient(circle at 80% 60%,rgba(185,68,33,.1) 0 2px,transparent 3px);animation:dotShake .4s ease}.result-title{justify-content:space-between;gap:12px;position:relative;z-index:2}.result-title strong{flex:1}.result-score{padding:2px 10px;border-radius:999px;font-size:.85rem;font-weight:900}.result-box.passed .result-score{background:#d4edda;color:#1a6080}.result-box.failed .result-score{background:#ffe0d4;color:#e07b4c}.result-message{position:relative;z-index:2;margin:4px 0 0!important;font-weight:700}.result-diagnosis-pass,.result-diagnosis-fail{position:relative;z-index:2;margin:8px 0 0!important;color:#46534b;line-height:1.65}.result-diagnosis-fail{color:#4a5060!important}.reward-line{position:relative;z-index:2;font-weight:800;color:#2780a0!important;animation:rewardShine 2s ease-in-out infinite}.action-row{position:static;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0;background:transparent;border-top:none;-webkit-backdrop-filter:none;backdrop-filter:none;margin-top:20px}.action-row>div{display:flex;gap:8px;align-items:center}.user-strip{display:flex;align-items:center;gap:10px}.streak-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:#d8572a26;color:#f77a4a;font-size:.78rem;font-weight:800}.lv-badge{padding:4px 10px;border-radius:999px;background:#d9bd7b26;color:#ebd49b;font-size:.78rem;font-weight:800}.case-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.case-card{padding:14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;transition:all .3s ease}.case-card.case-hidden{opacity:.5;filter:grayscale(.8);border-style:dashed}.case-card.case-hidden-reveal{border-color:#e07b4c;background:#eef4ff;animation:popIn .3s ease}.case-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.case-badge{font-size:.72rem;font-weight:800;padding:2px 8px;border-radius:999px}.badge-success{background:#d4edda;color:#2780a0}.badge-hidden{background:#ffe0d4;color:#e07b4c}.case-traits{display:flex;flex-wrap:wrap;gap:4px}.trait-tag{padding:2px 8px;border-radius:999px;background:#e8edf6;color:#667;font-size:.72rem;font-weight:600}.case-truth{margin:6px 0 0;color:#e07b4c;font-size:.78rem;font-style:italic}.insight-buttons{display:grid;gap:8px;margin-top:8px}.insight-prompt{font-weight:800;color:#1c2e48;margin:0}.insight-btn{display:flex;align-items:center;gap:8px;padding:12px;border:2px solid #c4d0e0;border-radius:8px;background:#f8fbff;font-size:.88rem;font-weight:600;cursor:pointer;text-align:left;transition:all .15s ease}.insight-btn:hover{border-color:#5b9bd5}.insight-btn.active{border-color:#3b82c4;background:#f0f6ff}.dual-table-wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dual-table{border:1px solid #7ab8c8;border-radius:8px;overflow:hidden}.dual-table h4,.failed-table h4{padding:8px 12px;margin:0;font-size:.9rem}.dual-table h4{background:#e8f2fa}.failed-table h4{background:#eef4ff}.failed-table{border:1px solid #dfb19f;border-radius:8px;overflow:hidden}.growth-high{color:#2780a0;font-weight:900}.growth-low{color:#e07b4c;font-weight:900}.dual-select{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}.dual-select label{display:block;margin-bottom:6px;font-weight:700;color:#1c2e48;font-size:.85rem}.key-fact-banner{display:flex;align-items:center;gap:8px;padding:12px;background:#f2f7ff;border:1px solid #5b9bd5;border-radius:8px;font-weight:700;color:#4a6080}.hypothesis-grid{display:grid;gap:10px}.hypothesis-card{padding:14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .18s ease;position:relative}.hypothesis-card:hover{border-color:#5b9bd5}.hypothesis-card.selected{border-color:#5b8ec8;background:#f2f5ff;box-shadow:0 4px 16px #d4588a26}.hypo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.simplicity-badge{font-size:.72rem;color:#5b8ec8;font-weight:800}.hypo-factors{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.factor-chip{padding:2px 8px;border-radius:999px;background:#e8edf6;color:#667;font-size:.72rem;font-weight:600}.elim-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid #ddd;border-radius:999px;background:#fafaf8;color:#889;font-size:.72rem;cursor:pointer;transition:all .15s ease}.elim-btn:hover{border-color:#e07b4c;color:#e07b4c}.shredder-zone{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#eef2f8;border:1px dashed #ccc;border-radius:8px;color:#889;font-size:.82rem;animation:popIn .2s ease}.dim-selector{margin-bottom:10px}.dim-selector p{margin:0 0 6px;font-weight:700;color:#1c2e48}.simplified-rank{margin-top:8px}.rank-title{font-weight:700;margin:0 0 8px}.project-rank{display:grid;gap:8px}.rank-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff;transition:all .15s ease}.rank-item.top-pick{border-color:#5b8ec8;background:#f2f5ff}.rank-pos{font-weight:900;color:#5b8ec8;font-size:1.1rem;width:24px}.rank-metrics{display:flex;gap:12px;font-size:.78rem;color:#667;margin-left:auto}.rank-star{color:#5b8ec8;flex-shrink:0}.compound-demo-box{padding:16px;border:1px solid rgba(91,155,213,.2);border-radius:10px;background:#5b9bd50a;display:flex;flex-direction:column;gap:12px}.cd-formula{display:flex;flex-direction:column;gap:4px}.cd-formula code{font-size:.78rem;color:#b8c8e0;font-family:Courier New,monospace;word-break:break-all}.cd-formula strong{color:#f0f4ff}.cd-slider-row{display:flex;align-items:center;gap:10px}.cd-slider-row>span:first-child{font-size:.78rem;color:#6b7d99;flex-shrink:0}.cd-slider{flex:1;height:6px;-webkit-appearance:none;appearance:none;background:#5b9bd526;border-radius:999px;outline:none}.cd-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#5b9bd5;cursor:pointer;box-shadow:0 0 8px #5b9bd566}.cd-year-val{font-size:.82rem;color:#5b9bd5;font-weight:800;flex-shrink:0}.cd-bars{display:flex;flex-direction:column;gap:6px}.cd-bar-wrap{display:flex;align-items:center;gap:10px;font-size:.72rem;color:#6b7d99}.cd-bar-label{width:32px;text-align:right;flex-shrink:0}.cd-bar{height:22px;border-radius:4px;min-width:50px;display:flex;align-items:center;padding:0 8px;transition:width .3s ease}.cd-bar span{font-size:.72rem;font-weight:800;white-space:nowrap}.cd-bar.simple{background:#5b9bd533;color:#6b7d99}.cd-bar.compound{background:linear-gradient(90deg,#4a8fcf,#5b9bd5);color:#fff}.cd-row{display:flex;gap:16px;flex-wrap:wrap;font-size:.9rem}.cd-row-diff{padding-top:8px;border-top:1px solid rgba(91,155,213,.12)}.cd-highlight{color:#5b9bd5;font-weight:900}.cd-msg{color:#6b7d99;font-size:.85rem}.cd-msg strong{color:#5b9bd5;font-size:1.1rem}.compound-questions{display:grid;gap:14px;margin-top:8px}.cq-item p{margin:0 0 6px;font-weight:700;color:#1c2e48}.habit-meters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.habit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.habit-card{padding:14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.habit-card:hover{border-color:#5b9bd5;transform:translateY(-2px)}.habit-card.selected{border-color:#2780a0;background:#eef6fc}.habit-card.habit-negative{border-color:#fcc;background:#f2f5ff}.habit-top{display:flex;align-items:center;gap:8px;margin-bottom:8px}.habit-emoji{font-size:1.4rem}.habit-stats{display:flex;justify-content:space-between;font-size:.8rem;font-weight:700}.rate-pos{color:#2780a0}.rate-neg{color:#e07b4c}.habit-result-banner{margin-top:10px;padding:12px;background:#eef6fc;border:1px solid #7ab8c8;border-radius:8px;font-weight:700;text-align:center;color:#2780a0}.home-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}.leaderboard-panel,.badge-wall{padding:16px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#14241f99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lb-header,.badge-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:#f0f4ff;font-size:.9rem}.lb-tabs{display:flex;gap:4px;margin-left:auto}.lb-tabs button{padding:3px 10px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:transparent;color:#b8c8e0;font-size:.72rem;cursor:pointer}.lb-tabs button.active{background:#d9bd7b33;border-color:#5b9bd5;color:#ebd49b}.lb-list{display:grid;gap:6px}.lb-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;background:#ffffff08;color:#b8c8e0;font-size:.82rem}.lb-row.lb-me{background:#d8572a1f;border:1px solid rgba(216,87,42,.3)}.lb-rank{font-weight:900;width:24px}.lb-name{flex:1;font-weight:700}.lb-meta{color:#889;font-size:.72rem}.lb-score{color:#5b9bd5}.badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.badge-chip{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08;text-align:center;transition:all .2s ease}.badge-chip.badge-new{border-color:#5b9bd5;background:#d9bd7b1a;animation:popIn .3s ease}.badge-emoji{font-size:1.6rem}.badge-name{font-size:.68rem;color:#b8c8e0;font-weight:700}.badge-sparkle{font-size:.6rem;color:#5b9bd5;font-weight:900;animation:pulseText 1s ease-in-out infinite}.badge-empty{color:#667;font-size:.8rem;text-align:center;grid-column:1/-1}.share-card-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.share-card{position:relative;width:min(420px,90vw);padding:28px 24px;border-radius:16px;border:1px solid rgba(217,189,123,.25);background:linear-gradient(160deg,#132038,#182a42,#0e1a30);color:#f0f4ff;box-shadow:0 24px 60px #00000080}.share-preview{position:relative;overflow:hidden;padding:24px 20px;margin-bottom:20px;border-radius:10px;background:#0003;text-align:center}.share-grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.06;background-image:linear-gradient(rgba(217,189,123,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(217,189,123,.3) 1px,transparent 1px);background-size:24px 24px}.share-emoji{font-size:3rem;position:relative;z-index:1}.share-preview h3{font-size:1.4rem;margin:10px 0 4px;position:relative;z-index:1}.share-stats{color:#3b82c4;font-weight:800;font-size:.95rem;margin:0 0 10px;position:relative;z-index:1}.share-insight{color:#b8c8e0;font-size:.85rem;line-height:1.5;max-width:340px;margin:0 auto 12px;position:relative;z-index:1}.share-quote{color:#5b9bd5;font-style:italic;font-size:.8rem;margin:0;position:relative;z-index:1}.share-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.wing-section-title{margin:28px 0 12px;color:#6b7d99;font-size:.9rem;font-weight:700}.locked-cards{opacity:.7}.wing-card.locked{cursor:not-allowed;opacity:.55;filter:grayscale(.3);transition:opacity .2s ease,filter .2s ease}.wing-card.locked:hover{opacity:.65;filter:grayscale(.2)}.wing-card.locked:active{animation:shakeLock .4s ease}@keyframes shakeLock{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.unlock-hint{font-size:.75rem;color:#6b7d99;font-weight:600;margin-left:10px;font-style:italic}.daily-challenge-section{margin-bottom:20px}.dc-card{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:14px;cursor:pointer;transition:all .2s ease;background:linear-gradient(135deg,#182a42,#132038);border:1px solid rgba(217,189,123,.15)}.dc-card:hover{border-color:#d9bd7b59;transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.dc-card.active{border-color:#5b9bd5;box-shadow:0 0 30px #d9bd7b1f}.dc-card.completed{border-color:#2d6e4a4d;opacity:.8;cursor:default}.dc-card.completed:hover{transform:none}.dc-card.empty{border-style:dashed}.dc-icon{font-size:2rem;flex-shrink:0}.dc-info{flex:1;display:flex;flex-direction:column;gap:2px}.dc-label{font-size:.72rem;color:#5b9bd5;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.dc-info strong{font-size:1.1rem;color:#f0f4ff}.dc-wing{font-size:.78rem;color:#6b7d99}.dc-score{font-size:.8rem;color:#2d6e7a;font-weight:700}.dc-cta{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#d9bd7b1f;border-radius:8px;color:#5b9bd5;font-weight:700;font-size:.88rem;flex-shrink:0}.dc-streak-badge{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#c85b3a26;border-radius:999px;color:#4a8fcf;font-weight:800;font-size:.85rem}.share-invite{margin-top:12px;padding:10px 14px;background:#ffffff0a;border:1px solid rgba(217,189,123,.15);border-radius:10px;text-align:center}.invite-label{display:block;font-size:.7rem;color:#5b9bd5;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.invite-code{display:block;font-size:1.5rem;font-weight:900;color:#f0f4ff;font-family:Courier New,monospace;letter-spacing:.06em}.invite-hint{display:block;font-size:.7rem;color:#556680;margin-top:4px}.deep-dive-panel{margin-top:12px}.deep-dive-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;border:1px solid rgba(217,189,123,.2);border-radius:10px;background:#ffffff08;color:#5b9bd5;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .18s ease}.deep-dive-toggle:hover{background:#ffffff0f;border-color:#d9bd7b59}.dd-chevron{transition:transform .2s ease;font-size:1.2rem}.dd-chevron.open{transform:rotate(180deg)}.deep-dive-body{margin-top:10px;display:flex;flex-direction:column;gap:12px}.dd-quote-card{padding:14px 16px;border-left:3px solid #5b9bd5;background:#ffffff08;border-radius:0 8px 8px 0}.dd-quote-mark{font-size:1.6rem;color:#5b9bd5;font-family:serif;line-height:1}.dd-quote-card p{margin:4px 0;font-size:.9rem;color:#f0f4ff;font-style:italic}.dd-book{font-size:.78rem;color:#6b7d99}.dd-section{margin-bottom:4px}.dd-section strong{display:block;font-size:.82rem;color:#b8c8e0;margin-bottom:8px}.dd-insights{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.dd-insights li{font-size:.82rem;color:#6b7d99;padding-left:16px;position:relative}.dd-insights li:before{content:"▸";position:absolute;left:0;color:#556680;font-size:.7rem;top:2px}.dd-related{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.dd-related-card{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff08;cursor:pointer;transition:all .15s ease;white-space:nowrap}.dd-related-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.dd-related-icon{font-size:1.1rem}.dd-related-name{font-size:.82rem;color:#b8c8e0;font-weight:600}.progress-dashboard{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;margin-bottom:16px;background:linear-gradient(135deg,#1a2f28cc,#14241fe6);border:1px solid rgba(255,255,255,.06);border-radius:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pd-main{flex:1;min-width:0}.pd-level{display:flex;align-items:center;gap:10px;margin-bottom:8px}.pd-level-icon{font-size:1.8rem}.pd-level-info strong{display:block;font-size:1rem;color:#f0f4ff}.pd-level-info span{font-size:.75rem;color:#6b7d99}.pd-progress-bar{height:6px;background:#ffffff14;border-radius:999px;overflow:hidden}.pd-progress-fill{height:100%;background:linear-gradient(90deg,#4a8fcf,#5b9bd5);border-radius:999px;transition:width .4s ease}.pd-stats{display:flex;gap:16px;flex-shrink:0}.pd-stat{display:flex;flex-direction:column;align-items:center;gap:2px;color:#6b7d99}.pd-stat svg{color:#556680}.pd-stat strong{font-size:1rem;color:#f0f4ff}.pd-stat span{font-size:.68rem}.social-proof-strip{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;margin-bottom:16px;background:linear-gradient(135deg,#4a8fcf0f,#5b9bd50a);border:1px solid rgba(91,155,213,.12);border-radius:10px;font-size:.82rem;color:#6b7d99}.sp-badge strong{color:#5b9bd5;font-size:.9rem;margin:0 2px}.sp-divider{color:#5b9bd533}.daily-quote-card{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;margin-bottom:16px;background:linear-gradient(135deg,#5b9bd50a,#4a8fcf05);border:1px solid rgba(91,155,213,.1);border-radius:10px}.dq-emoji{font-size:1.6rem;flex-shrink:0;line-height:1}.dq-content{flex:1;min-width:0}.dq-text{font-size:.85rem;color:#b8c8e0;font-style:italic;margin:0 0 4px;line-height:1.5}.dq-author{font-size:.72rem;color:#6b7d99}.next-room-card{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 16px;background:linear-gradient(135deg,#4a8fcf14,#3b82c40a);border:1px solid rgba(74,143,207,.2);border-radius:10px;cursor:pointer;transition:all .18s ease}.next-room-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0003;border-color:#4a8fcf59}.nr-emoji{font-size:1.4rem}.nr-info{flex:1;display:flex;flex-direction:column;gap:2px}.nr-label{font-size:.68rem;color:#5b9bd5;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nr-info strong{font-size:.95rem;color:#f0f4ff}.nr-hint{font-size:.75rem;color:#6b7d99}.nr-arrow{font-size:1.2rem;color:#5b9bd5}.feedback-footer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;padding:12px 0;border-top:1px solid rgba(255,255,255,.04);font-size:.76rem;color:#556680}.feedback-link{color:#6b7d99;text-decoration:none;transition:color .15s ease}.feedback-link:hover{color:#5b9bd5}.feedback-divider{color:#ffffff0f}.feedback-version{color:#ffffff0a}.onboarding-overlay{position:fixed;inset:0;z-index:3000;background:#0a1628;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.onboarding-card{width:100%;max-width:480px;padding:40px 32px;display:flex;flex-direction:column;align-items:center;gap:24px}.ob-step{display:flex;flex-direction:column;align-items:center;gap:24px;width:100%;animation:fadeIn .3s ease}.ob-hero{text-align:center}.ob-emoji{font-size:3rem;display:block;margin-bottom:12px}.ob-hero h2{font-size:1.5rem;color:#f0f4ff;margin:0 0 8px}.ob-hero p{font-size:.88rem;color:#6b7d99;margin:0}.ob-field{width:100%}.ob-field label{display:block;font-size:.82rem;color:#b8c8e0;margin-bottom:8px;font-weight:600}.ob-input{width:100%;padding:12px 16px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#ffffff0a;color:#f0f4ff;font-size:1rem;outline:none;transition:border-color .2s ease}.ob-input:focus{border-color:#5b9bd5}.ob-btn{width:100%;justify-content:center;gap:8px;padding:12px;font-size:.95rem}.ob-goals{display:flex;flex-direction:column;gap:10px;width:100%}.ob-goal-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff05;cursor:pointer;transition:all .18s ease;text-align:left}.ob-goal-card:hover{border-color:#d9bd7b4d;background:#ffffff0a}.ob-goal-card.selected{border-color:#5b9bd5;background:#d9bd7b14}.ob-goal-icon{font-size:1.8rem;flex-shrink:0}.ob-goal-info strong{display:block;font-size:.95rem;color:#f0f4ff;margin-bottom:2px}.ob-goal-info span{font-size:.78rem;color:#6b7d99}.ob-interactions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.ob-int-item{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:#ffffff05}.ob-int-icon{font-size:1.3rem;flex-shrink:0}.ob-int-item strong{display:block;font-size:.82rem;color:#f0f4ff;margin-bottom:2px}.ob-int-item span{font-size:.72rem;color:#6b7d99}.ob-start-preview{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid rgba(45,110,74,.3);border-radius:8px;background:#2d6e4a0f;color:#2d6e7a;font-size:.85rem;font-weight:600;width:100%;justify-content:center}.ob-start-btn{background:linear-gradient(135deg,#4a8fcf,#3b82c4);font-size:1rem}.ob-dots{display:flex;gap:8px}.ob-dot{width:8px;height:8px;border-radius:50%;background:#ffffff1a;transition:all .2s ease}.ob-dot.active{background:#5b9bd5}.ob-dot.done{background:#2d6e7a66}.ob-invite-error{display:block;color:#e07b4c;font-size:.75rem;margin-top:6px}.ob-invite-applied{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid rgba(45,110,122,.3);border-radius:8px;background:#2d6e7a14;color:#2d6e7a;font-size:.8rem;font-weight:600;width:100%}.ob-invite-actions{width:100%;display:flex;flex-direction:column;gap:8px}.ob-invite-actions .ghost-button.ob-btn{background:transparent;border:1px solid rgba(255,255,255,.08);color:#6b7d99;font-weight:400}.home-stage{display:flex;flex-direction:column}.home-content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;padding:40px 8vw 60px}.home-hero{margin-bottom:40px}.home-subtitle{font-size:clamp(1.6rem,3vw,2.8rem);font-weight:800;color:#f7e5b2;margin:0 0 12px;line-height:1.2}.home-desc{color:#b8c8e0;font-size:1.05rem;line-height:1.7;max-width:680px}.wing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.wing-card{display:flex;gap:16px;align-items:center;padding:20px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#f7f1e5f0;color:#17211c;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.wing-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #0000002e;border-color:var(--wing-primary)}.wing-card.completed{border-color:#7ab8c8;background:#f0f9f0}.wing-card.in-progress{border-left:4px solid var(--wing-primary)}.wing-icon{font-size:2.2rem;line-height:1}.wing-info{flex:1;min-width:0}.wing-info h3{margin:0 0 4px;font-size:1.1rem}.wing-info p{margin:0 0 8px;color:#556680;font-size:.88rem;line-height:1.4}.wing-meta{display:flex;gap:12px;font-size:.78rem;color:#889;font-weight:700}.wing-status{color:var(--wing-primary)}.partial-dot{width:12px;height:12px;border-radius:999px;background:var(--wing-primary);animation:pulseText 1.5s ease-in-out infinite}.timer.urgent{border-color:#e07b4c;background:#b9442133;color:#f99;animation:pulseText 1s ease-in-out infinite}.back-btn{margin-bottom:8px}.filter-bar{display:flex;gap:8px;flex-wrap:wrap}.filter-badge{padding:4px 12px;border-radius:999px;background:#edf0e8;color:#435148;font-size:.82rem;font-weight:800}.eliminated-row{opacity:.4;text-decoration:line-through;text-decoration-color:#e07b4c}.round-hint{color:#556680;font-size:.9rem;font-weight:700;text-align:center}.tradeoff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.tradeoff-card{padding:16px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .18s ease}.tradeoff-card:hover{border-color:#5b9bd5;transform:translateY(-2px)}.tradeoff-card.selected{border-color:#3b82c4;background:#f0f6ff;box-shadow:0 6px 20px #d8572a26}.tradeoff-card.dimmed{opacity:.5}.tradeoff-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tradeoff-header strong{font-size:1rem}.check-icon{color:#3b82c4}.tradeoff-metrics{display:grid;gap:6px;margin-bottom:8px}.tm-row{display:flex;justify-content:space-between;align-items:center;font-size:.88rem}.tm-row span{color:#556680}.return-val{color:#2780a0}.risk-bars{display:flex;gap:3px}.risk-dot{width:8px;height:8px;border-radius:2px;background:#ddd}.risk-dot.filled{background:#3b82c4}.net-row{border-top:1px dashed #c4d0e0;padding-top:4px;font-weight:800}.tradeoff-desc{margin:0;color:#889;font-size:.8rem;line-height:1.4}.synergy-banner{display:flex;align-items:center;gap:8px;padding:12px;border-radius:8px;font-size:.9rem;font-weight:700}.synergy-banner.positive{background:#e8f2fa;border:1px solid #7ab8c8;color:#2780a0}.synergy-banner.negative{background:#eef4ff;border:1px solid #dfb19f;color:#e07b4c}.net-value-display{display:flex;align-items:center;gap:8px;padding:12px;background:#f2f7ff;border-radius:8px;font-size:1.05rem}.sunk-cost-act{padding:20px;border:1px solid #c4d0e0;border-radius:10px;background:#f8fbff}.sunk-cost-act h3{margin:0 0 12px;font-size:1.1rem}.scenario-text{margin:0 0 8px;color:#46534b;line-height:1.6}.scenario-text.alt{padding:10px;border-left:3px solid #2a6ed8;background:#f0f6ff;border-radius:4px}.decision-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.decision-btn{padding:12px;border:2px solid #c4d0e0;border-radius:8px;background:#f4f8ff;font-weight:700;font-size:.88rem;cursor:pointer;transition:all .15s ease;text-align:center}.decision-btn.active-continue{border-color:#e07b4c;background:#eef4ff;color:#e07b4c}.decision-btn.active-switch{border-color:#2780a0;background:#e8f2fa;color:#2780a0}.decision-ev{margin-top:8px;padding:8px 12px;background:#edf0f8;border-radius:6px;font-size:.85rem;font-weight:700;color:#46534b}.feedback-web-svg{border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff;overflow:hidden}.fb-svg{width:100%;height:auto;display:block}.web-legend{font-size:.82rem;color:#556680;text-align:center}.leverage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.leverage-card{padding:14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .18s ease}.leverage-card:hover{border-color:#5b9bd5}.leverage-card.selected{border-color:#2780a0;background:#eef6fc;box-shadow:0 4px 16px #27724f1f}.lev-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.lev-ratio-badge{padding:2px 8px;border-radius:999px;background:#243b33;color:#f8fbff;font-size:.78rem;font-weight:900}.leverage-card strong{display:block;margin-bottom:8px;font-size:.9rem}.lev-bars{display:grid;gap:3px}.lev-bar{font-size:.72rem;color:#556680;font-weight:700}.lev-bar.high{color:#2780a0}.lev-bar.low{color:#e07b4c}.lev-delay{font-size:.72rem;color:#999;font-weight:600}.combined-row{display:grid;grid-template-columns:1fr 100px;gap:14px;align-items:center;padding:14px;border:1px solid #dcd6ca;border-radius:8px;background:#f8fbff}.combined-row.bucket-critical{border-left:4px solid #3b82c4;background:#f0f6ff}.combined-row.bucket-delete{border-left:4px solid #b0b0b0;background:#eef2f8;opacity:.7}.combined-row.bucket-normal{border-left:4px solid #5b9bd5}.combined-left{display:flex;flex-direction:column;gap:6px}.combined-left>span{font-weight:700}.combined-right input{width:100%;min-height:42px;padding:0 8px;border:1px solid #cfc7b8;border-radius:6px;background:#f4f8ff;font-size:1.05rem;font-weight:800;text-align:center}.combined-right input:disabled,.disabled-input{background:#f0f0ed;color:#aaa;cursor:not-allowed}.icon-toggle.active{border-color:#2780a0;background:#2780a0;color:#fff}@keyframes successPulse{0%{box-shadow:0 20px 60px #14191547}45%{box-shadow:0 20px 60px #14191547,0 0 0 4px #d9bd7b5c}to{box-shadow:0 20px 60px #14191547}}@keyframes lockShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}@keyframes resultPop{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes burstFade{0%{opacity:1;transform:scale(.96)}to{opacity:0;transform:scale(1.05)}}@keyframes confettiFall{0%{opacity:1;transform:translateY(0) rotate(0) scale(1)}to{opacity:0;transform:translateY(80px) rotate(360deg) scale(.4)}}@keyframes dotShake{0%,to{opacity:.6;transform:translate(0)}30%{opacity:1;transform:translate(-3px)}60%{opacity:1;transform:translate(3px)}}@keyframes rewardShine{0%,to{opacity:1}50%{opacity:.7}}@keyframes popIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}@keyframes hintGlow{0%,to{box-shadow:none}50%{box-shadow:inset 0 0 12px #d9bd7b26}}@keyframes pulseText{0%,to{opacity:.6}50%{opacity:1}}.dept-grid{display:grid;gap:8px}.dept-card{padding:12px 14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .18s ease}.dept-card:hover{border-color:#5b9bd5;transform:translateY(-2px)}.dept-card.approved{border-color:#4a8fcf;background:#f0f6ff;box-shadow:0 4px 16px #c75b3a26}.dept-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.dept-amount{font-weight:900;color:#4a8fcf}.dept-meta{display:flex;gap:10px;font-size:.78rem}.dept-contrib{color:#2d6e7a;font-weight:700}.dept-urgency{color:#889;font-style:italic}.intel-grid{display:grid;gap:8px}.intel-report-card{padding:12px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .18s ease}.intel-report-card:hover{border-color:#5b6ec8}.intel-report-card.selected{border-color:#5b6ec8;background:#f8f0ff}.intel-report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.intel-source{font-size:.72rem;color:#889}.intel-claim{font-size:.85rem;margin:4px 0}.intel-stats{display:flex;gap:12px;font-size:.75rem;color:#4a6070}.intel-warn{color:#4a8fcf;font-weight:800}.disease-grid{display:grid;gap:8px}.disease-card{padding:14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .18s ease}.disease-card:hover{border-color:#5b8ec8}.disease-card.selected{border-color:#5b8ec8;background:#fff0f5}.disease-stats{display:flex;gap:12px;font-size:.8rem;color:#4a6070;margin-top:6px}.life-path-demo{display:grid;grid-template-columns:1fr 1fr;gap:8px}.life-path-card{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #7ab8c8;border-radius:10px;background:#eef6fc}.lp-emoji{font-size:1.6rem}.life-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.life-card{padding:16px;border:2px solid #c4d0e0;border-radius:12px;background:#f8fbff;cursor:pointer;transition:all .18s ease}.life-card:hover{border-color:#3a6fb5;transform:translateY(-2px)}.life-card.selected{border-color:#3a6fb5;background:#e0f4ff}.life-emoji{font-size:2rem;display:block;margin-bottom:6px}.life-desc{font-size:.8rem;color:#4a6070;margin:6px 0}.life-stats{display:flex;justify-content:space-between;font-size:.85rem;margin:8px 0}.opp-cost{color:#4a8fcf}.life-meters{display:flex;gap:16px;font-size:.75rem;color:#889}.sys-sim-grid{display:grid;gap:14px}.sys-var{padding:10px 14px;border:1px solid #7ab8c8;border-radius:8px;background:#eef6fc}.sys-var-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-weight:700}.sys-var input[type=range]{width:100%;accent-color:#2d6e7a}.sys-outputs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.sys-out-card{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;font-weight:700}.sys-out-card.good{background:#e0eef8;color:#2d6e7a}.sys-out-card.bad{background:#eef4ff;color:#4a8fcf}.formula-tree{margin-top:4px}.formula-layer{padding:10px 14px;margin-bottom:4px;border:1px solid #d8c8e8;border-radius:8px;background:#faf8fc;cursor:pointer;transition:all .15s ease}.formula-layer:hover{border-color:#6c7ec0}.formula-layer.selected{border-color:#6c7ec0;background:#f0f4ff}.formula-layer.atomic{border-color:#6c7ec0;background:#ede0ff}.layer-header{display:flex;align-items:center;gap:8px}.layer-chevron{transition:transform .2s ease}.layer-chevron.open{transform:rotate(90deg)}.layer-name{font-weight:700}.layer-formula{font-size:.8rem;color:#6c7ec0;font-style:italic}.atomic-badge{font-size:.68rem;padding:2px 8px;border-radius:999px;background:#6c7ec0;color:#fff;font-weight:800}.assumption-grid{display:grid;gap:8px}.assumption-card{padding:14px;border:2px solid #d8c8e8;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .2s ease;min-height:60px}.assumption-card.flipped{background:#f0f4ff;border-color:#6c7ec0}.assumption-card.shattered{border-color:#4a8fcf;background:#eef4ff;opacity:.7}.assumption-front{display:flex;align-items:center;gap:10px}.assumption-icon{font-size:1.3rem}.assumption-back{margin-top:10px;padding-top:10px;border-top:1px dashed #d8c8e8}.hidden-premise{font-size:.82rem;color:#6c7ec0;margin:0 0 8px}.break-btn{padding:4px 12px;border:1px solid #4a8fcf;border-radius:6px;background:transparent;color:#4a8fcf;font-weight:800;font-size:.78rem;cursor:pointer}.unbreakable-tag{font-size:.78rem;color:#2d6e7a;font-weight:700}.break-counter{display:flex;align-items:center;gap:6px;color:#6c7ec0;font-weight:700;font-size:.85rem}.mirror-hint{font-size:.78rem;color:#889;margin:0}.canvas-target{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f0f4ff;border:1px solid #6c7ec0;border-radius:8px;font-weight:700}.principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.principle-card{padding:14px;border:2px solid #d8c8e8;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.principle-card:hover{border-color:#a8b8e4;transform:translateY(-2px)}.principle-card.selected{border-color:#6c7ec0;background:#f0f4ff}.principle-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.principle-cat{font-size:.72rem;padding:2px 8px;border-radius:999px;background:#ede0ff;color:#6c7ec0}.principle-name{display:block;margin-bottom:4px}.principle-desc{font-size:.8rem;color:#4a6070;margin:0}.selection-hint{display:block;text-align:center;font-size:.78rem;color:#889;font-weight:600}.failure-grid{display:grid;gap:8px}.failure-card{padding:12px 14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.failure-card:hover{border-color:#3a6fb5}.failure-card.selected{border-color:#3a6fb5;background:#e0f4ff}.failure-header{display:flex;justify-content:space-between;align-items:center}.failure-cause{font-weight:700}.failure-counter{display:flex;align-items:center;gap:6px;margin-top:8px;padding:8px;background:#eef6fc;border-radius:6px;font-size:.82rem;color:#2d6e7a;font-weight:600}.premise-grid{display:grid;gap:8px}.premise-card{padding:14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.premise-card:hover{border-color:#3a6fb5}.premise-card.selected{border-color:#3a6fb5;background:#e0f4ff}.premise-row{display:flex;align-items:flex-start;gap:10px}.premise-arrow{font-size:1.2rem;color:#3a6fb5;font-weight:900;flex-shrink:0}.premise-original,.premise-reversed{margin:0;font-size:.85rem}.premise-reversed{color:#4a8fcf;font-weight:700}.premise-impact{font-size:.82rem;color:#2d6e7a;margin:8px 0 0;font-weight:600}.disaster-list{display:grid;gap:8px}.disaster-card{padding:12px 14px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.disaster-card:hover{border-color:#3a6fb5}.disaster-card.selected{border-color:#3a6fb5;background:#e0f4ff}.disaster-card.unprotected{border-left:4px solid #4a8fcf}.disaster-header{display:flex;align-items:center;gap:8px;justify-content:space-between}.disaster-name{font-weight:700}.unprotected-badge{font-size:.68rem;padding:2px 6px;border-radius:999px;background:#eef4ff;color:#4a8fcf;font-weight:800}.disaster-meta{display:flex;gap:12px;font-size:.78rem;color:#4a6070;margin-top:6px}.risk-score{font-weight:900;color:#4a8fcf}.funnel-chain{display:flex;flex-direction:column;gap:4px}.funnel-link{cursor:pointer}.funnel-link.targeted .funnel-node{border-color:#4a8fcf;background:#f0f6ff}.funnel-arrow{display:block;text-align:center;font-size:.75rem;color:#889;padding:2px 0}.funnel-node{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff}.funnel-name{font-weight:700;min-width:140px;font-size:.85rem}.friction-bar{flex:1;height:8px;background:#e8edf6;border-radius:999px;overflow:hidden}.friction-fill{height:100%;background:linear-gradient(90deg,#7ab8c8,#5b9bd5,#4a8fcf);border-radius:999px;transition:width .3s ease}.friction-val{font-size:.75rem;color:#4a8fcf;font-weight:700}.touchpoint-list{display:grid;gap:6px}.touchpoint-item{padding:10px 14px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.touchpoint-item:hover{border-color:#5b9bd5}.touchpoint-item.selected{border-color:#4a8fcf;background:#f0f6ff}.touchpoint-item.non-removable{opacity:.5;cursor:not-allowed}.tp-header{display:flex;align-items:center;gap:8px;justify-content:space-between}.tp-name{font-weight:700;font-size:.85rem}.tp-friction{font-size:.75rem;color:#4a8fcf;font-weight:700}.non-removable-tag{font-size:.68rem;color:#889}.tp-desc{margin:4px 0 0;font-size:.75rem;color:#889}.tp-friction-bar{height:4px;background:#e8edf6;border-radius:999px;margin:4px 0;overflow:hidden}.tp-friction-fill{height:100%;border-radius:999px}.total-conv-banner{text-align:center;padding:8px;background:#eef6fc;border:1px solid #7ab8c8;border-radius:8px;font-weight:700;color:#2d6e7a}.zc-step{padding:10px 14px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff;margin-bottom:6px;transition:all .2s ease}.zc-step.removed{opacity:.4;background:#eef2f8}.zc-step-header{display:flex;align-items:center;justify-content:space-between}.zc-step-name{font-weight:700}.zc-remove-btn{display:flex;align-items:center;gap:4px;padding:3px 10px;border:1px solid #4a8fcf;border-radius:6px;background:transparent;color:#4a8fcf;font-size:.75rem;cursor:pointer}.zc-alternative{margin-top:6px;padding:8px;background:#f0f4ff;border-radius:6px;font-size:.78rem;color:#6c7ec0}.bayes-formula-box{padding:12px;background:#e3f2fd;border:1px solid #3a6fb5;border-radius:8px;margin-bottom:8px}.bayes-formula-box p{margin:0;font-weight:700;font-size:.85rem}.bayes-sub{color:#4a6070;font-size:.78rem!important;font-weight:500!important;margin-top:4px!important}.bayes-inputs{display:grid;gap:12px}.fp-scenarios{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.fp-card{padding:12px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff}.fp-stats{display:flex;flex-direction:column;gap:3px;margin-top:6px;font-size:.78rem;color:#4a6070}.posterior-highlight{color:#3a6fb5;font-weight:900}.intel-progress{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#4a6070}.intel-bar{flex:1;height:6px;background:#e8edf6;border-radius:999px;overflow:hidden}.intel-fill{height:100%;background:#3a6fb5;border-radius:999px;transition:width .2s ease}.intel-card{padding:16px;border:2px solid #c4d0e0;border-radius:12px;background:#f8fbff}.intel-card.pro{border-color:#3a6fb5}.intel-card.con{border-color:#4a8fcf}.intel-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.intel-dir{font-weight:800;font-size:.78rem}.intel-dir.pro{color:#3a6fb5}.intel-dir.con{color:#4a8fcf}.intel-reliability{font-size:.72rem;color:#889}.intel-text{font-size:.9rem;margin:8px 0}.intel-conf-slider{display:flex;align-items:center;gap:10px;margin:12px 0}.intel-conf-slider input[type=range]{flex:1;accent-color:#3a6fb5}.intel-final{text-align:center;padding:20px}.intel-final-hint{font-size:.8rem;color:#889;margin:8px 0 0}.shock-buttons{display:flex;gap:6px;flex-wrap:wrap}.shock-btn{padding:6px 12px;border:1px solid #c4d0e0;border-radius:999px;background:#f8fbff;font-size:.78rem;cursor:pointer;transition:all .15s ease}.shock-btn.active{border-color:#4a8fcf;background:#f0f6ff;color:#4a8fcf;font-weight:700}.shock-result{display:grid;gap:6px}.shock-asset{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.shock-asset.positive{border-left:4px solid #2d6e7a}.shock-asset.negative{border-left:4px solid #4a8fcf}.shock-asset.beneficiary{background:#e0eef8;border-color:#2d6e7a}.asset-name{font-weight:700;font-size:.85rem}.asset-impact{display:flex;align-items:center;gap:4px;font-weight:800}.asset-impact.up{color:#2d6e7a}.asset-impact.down{color:#4a8fcf}.barbell-meter{display:flex;height:32px;border-radius:8px;overflow:hidden;margin-bottom:6px;font-size:.72rem;font-weight:700}.barbell-seg{display:flex;align-items:center;justify-content:center;color:#fff}.barbell-seg.conserv{background:#2d6e7a}.barbell-seg.middle{background:#5b9bd5;color:#1a2b24}.barbell-seg.aggress{background:#4a8fcf}.asset-alloc-grid{display:grid;gap:10px}.alloc-card{padding:12px;border:1px solid #c4d0e0;border-radius:8px;background:#f8fbff}.alloc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.alloc-cat{font-size:.68rem;padding:2px 6px;border-radius:999px;background:#e8edf6}.alloc-stats{display:flex;gap:12px;font-size:.78rem;margin-bottom:6px}.alloc-card input[type=range]{width:100%;accent-color:#4a8fcf}.alloc-card input[type=number]{width:60px;padding:4px;border:1px solid #c4d0e0;border-radius:4px;text-align:center}.chaos-demo{padding:14px;border:1px solid #c4d0e0;border-radius:10px;background:#f8fbff;margin-bottom:8px}.chaos-slider{display:flex;align-items:center;gap:8px;margin-bottom:10px}.chaos-slider input[type=range]{flex:1;accent-color:#4a8fcf}.chaos-resilience{display:flex;align-items:center;gap:8px}.resilience-bar{flex:1;height:12px;background:#e8edf6;border-radius:999px;overflow:hidden}.resilience-fill{height:100%;background:linear-gradient(90deg,#4a8fcf,#5b9bd5,#2d6e7a);border-radius:999px;transition:width .2s ease}.entropy-dash{display:flex;gap:14px;align-items:flex-start}.entropy-gauge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid #c4d0e0;border-radius:12px;background:#f8fbff;min-width:120px}.entropy-gauge svg{color:#889}.entropy-gauge svg.done{color:#2d6e7a;animation:spin 1s ease}.entropy-val{font-size:2.2rem;font-weight:900}.entropy-actions{display:flex;flex-direction:column;gap:6px;flex:1}.entropy-log{max-height:120px;overflow-y:auto;font-size:.75rem;color:#4a6070;margin-top:8px;padding:8px;background:#eef2f8;border-radius:6px}.entropy-log p{margin:2px 0}.entropy-reduction{color:#2d6e7a;font-weight:700;margin-left:12px}.negentropy-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.negentropy-card{padding:12px;border:2px solid #c4d0e0;border-radius:10px;background:#f8fbff;cursor:pointer;transition:all .15s ease}.negentropy-card:hover{border-color:#2d6e7a}.negentropy-card.selected{border-color:#2d6e7a;background:#e0eef8}.negentropy-card.danger{border-color:#fcc;background:#f2f5ff}.negentropy-card.danger:hover{border-color:#4a8fcf}.negentropy-name{font-weight:700;display:block;margin-bottom:4px}.negentropy-stats{display:flex;justify-content:space-between;font-size:.78rem}.danger-zone{margin-top:8px;padding:10px;border:1px dashed #4a8fcf;border-radius:8px;background:#f2f5ff}.danger-label{font-size:.78rem;color:#4a8fcf;font-weight:700;margin:0 0 6px}.open-closed-demo{padding:14px;border:1px solid #c4d0e0;border-radius:10px;background:#f8fbff;margin-bottom:8px}.oc-slider{display:flex;align-items:center;gap:8px;margin-bottom:8px}.oc-slider input[type=range]{flex:1;accent-color:#2d6e7a}.oc-curves{display:grid;grid-template-columns:1fr 1fr;gap:8px}.oc-curve{padding:8px 12px;border-radius:6px;font-size:.82rem;text-align:center;font-weight:700}.oc-curve.closed{background:#eef4ff}.oc-curve.open{background:#e0eef8}.curve-val{display:block}.curve-val.bad{color:#4a8fcf}.curve-val.good{color:#2d6e7a}.cq-label{font-weight:700;color:#1a2b24;margin:0 0 6px;font-size:.88rem}.door-overlay{position:fixed;inset:0;z-index:2000;background:#0a1628;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:doorOverlayIn .3s ease forwards}.door-overlay.exit{background:#132038}.door-overlay.enter{background:#0a1628}.door-overlay.enter .door-label-sub{color:#5b9bd5;font-size:.85rem}.door-overlay.enter .door-label-main{animation:doorLabelEnterFade .6s .8s ease forwards}@keyframes doorLabelEnterFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes doorOverlayIn{0%{opacity:0}to{opacity:1}}.door-scene{display:flex;flex-direction:column;align-items:center;gap:0}.door-frame{display:flex;gap:0;perspective:1200px;box-shadow:0 0 80px #d9bd7b26}.door-left,.door-right{width:140px;height:300px;display:flex;align-items:center;justify-content:center;transform-origin:left center;animation:doorLeftOpen .8s .4s cubic-bezier(.7,0,.3,1) forwards;box-shadow:inset 0 0 60px #0000004d}.door-right{transform-origin:right center;animation:doorRightOpen .8s .4s cubic-bezier(.7,0,.3,1) forwards}.door-overlay.exit .door-left{animation:doorLeftClose .6s .2s ease forwards;transform:rotateY(-85deg)}.door-overlay.exit .door-right{animation:doorRightClose .6s .2s ease forwards;transform:rotateY(85deg)}@keyframes doorLeftOpen{0%{transform:rotateY(0)}to{transform:rotateY(-85deg)}}@keyframes doorRightOpen{0%{transform:rotateY(0)}to{transform:rotateY(85deg)}}@keyframes doorLeftClose{0%{transform:rotateY(-85deg)}to{transform:rotateY(0)}}@keyframes doorRightClose{0%{transform:rotateY(85deg)}to{transform:rotateY(0)}}.door-panel{display:flex;flex-direction:column;align-items:center;gap:8px}.door-number{font-size:2.4rem;filter:drop-shadow(0 0 12px rgba(255,255,255,.15))}.door-light{width:280px;height:4px;background:linear-gradient(90deg,transparent,#5b9bd5,#f0f4ff,#5b9bd5,transparent);margin-top:-2px;opacity:0;animation:lightBurst .6s 1.2s ease forwards}@keyframes lightBurst{0%{opacity:0;box-shadow:none}50%{opacity:1;box-shadow:0 0 30px #d9bd7b99}to{opacity:.6;box-shadow:0 0 20px #d9bd7b4d}}.door-label{margin-top:28px;text-align:center;animation:labelFadeIn .4s 1.4s ease forwards;opacity:0}@keyframes labelFadeIn{to{opacity:1}}.door-label-sub{display:block;font-size:.82rem;color:#6b7d99;letter-spacing:.08em;margin-bottom:6px}.door-label-main{display:block;font-size:1.3rem;font-weight:800;color:#f0f4ff;letter-spacing:.04em}.tab-switch-bar{display:flex;gap:8px;margin:20px 0 10px;padding:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px}.tab-switch-btn{flex:1;min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:8px;background:transparent;color:#6b7d99;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s ease}.tab-switch-btn:hover{color:#b8c8e0;background:#ffffff0a}.tab-switch-btn.active{background:linear-gradient(135deg,#4a8fcf40,#5b9bd526);border-color:#5b9bd566;color:#f0f4ff;box-shadow:0 4px 16px #5b9bd526}.tab-desc{margin:0 0 16px;padding:10px 14px;background:#5b9bd50a;border:1px solid rgba(91,155,213,.08);border-radius:8px;color:#6b7d99;font-size:.82rem;line-height:1.5}.vertical-wings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.wing-card.vertical-card{border-left:3px solid var(--wing-primary);transition:all .2s ease}.wing-card.vertical-card:hover{border-color:var(--wing-primary);box-shadow:0 8px 28px #00000040,0 0 0 1px var(--wing-primary) 30}.persona-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:800}.vertical-level-panel{margin-top:12px;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#14241f66;animation:slideIn .2s ease}.vlp-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.vlp-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:800;color:#f0f4ff}.vertical-level-list{display:grid;gap:6px}.vertical-level-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-left:3px solid transparent;border-radius:8px;background:#ffffff05;cursor:pointer;transition:all .18s ease}.vertical-level-item:hover:not(.locked){background:#ffffff0a;transform:translate(3px)}.vertical-level-item.passed{background:#2d6e4a14;border-color:#2d6e4a33}.vertical-level-item.locked{opacity:.45;cursor:not-allowed}.vl-number{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;font-size:.78rem;font-weight:800;color:#f0f4ff;flex-shrink:0}.vl-info{min-width:0}.vl-info strong{display:block;font-size:.9rem;color:#f0f4ff}.vl-info span{display:block;font-size:.75rem;color:#6b7d99;margin-top:2px}.ai-critic-box{margin-top:14px;padding:16px;border-radius:10px;border:1px solid rgba(0,0,0,.1);background:#f8f9fa;animation:slideIn .3s ease;color:#1a1a2e}.ai-critic-box.criticism{border-color:#e74c3c40;background:linear-gradient(135deg,#fff5f5,#fef9f9)}.ai-critic-box.praise{border-color:#2ecc7140;background:linear-gradient(135deg,#f5fff9,#f9fefc)}.ai-critic-box.loading{border-style:dashed}.ai-critic-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.ai-critic-emoji{font-size:1.2rem}.ai-critic-label{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.ai-critic-box.criticism .ai-critic-label{color:#e74c3c}.ai-critic-box.praise .ai-critic-label{color:#27ae60}.ai-critic-icon{color:#5b9bd5;margin-left:auto}.ai-critic-loading{display:flex;align-items:center;gap:10px;padding:12px 0;color:#6b7d99;font-size:.85rem}.spinning{animation:spin 1.5s linear infinite}.ai-critic-content{position:relative;padding-left:16px}.ai-critic-quote-mark{position:absolute;left:0;top:-2px;font-size:1.4rem;color:#5b9bd5;font-family:serif;opacity:.6}.ai-critic-content p{margin:0;color:#2d3436;font-size:.9rem;line-height:1.75;font-style:italic}.ai-critic-box.praise .ai-critic-content p{color:#1a3a2a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.npc-dialog{position:relative;display:flex;align-items:flex-start;gap:12px;margin:16px 0;opacity:0;transform:translateY(8px);transition:all .35s ease}.npc-dialog.visible{opacity:1;transform:translateY(0)}.npc-dialog-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:2px solid;background:#ffffff0f;font-size:1.3rem;flex-shrink:0}.npc-dialog-bubble{flex:1;min-width:0;padding:12px 16px;border-radius:12px;border:1px solid;background:#ffffff08}.npc-dialog-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.npc-dialog-header strong{font-size:.85rem;color:#f0f4ff}.npc-dialog-role{font-size:.7rem;font-weight:700;letter-spacing:.04em}.npc-dialog-text{margin:0;font-size:.85rem;line-height:1.6;color:#bcc8e0}.npc-dialog-close{position:absolute;top:0;right:0;width:28px;height:28px;border:none;border-radius:50%;background:#ffffff14;color:#6b7d99;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.narrative-banner{display:flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid;border-radius:8px;margin:8px 0 16px;animation:bannerFadeIn .4s ease}@keyframes bannerFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.narrative-banner-avatar{font-size:1.2rem}.narrative-banner-text{font-size:.8rem;color:#bcc8e0;line-height:1.5}.result-grade{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid;border-radius:8px;margin:8px 0}.result-grade-emoji{font-size:1.2rem}.result-grade-text{font-size:.85rem;font-weight:700}.difficulty-badge{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.04em}.difficulty-l1{background:#2d6e4a1f;color:#2d6e4a}.difficulty-l2{background:#5b9bd51f;color:#3b82c4}.difficulty-l3{background:#a55eea1f;color:#a55eea}.qh-gate{position:relative;width:100%;min-height:100vh;display:grid;place-items:center;padding:16px;background:linear-gradient(160deg,#0f0c1e,#1a1a2e 40%,#16213e);overflow:hidden}.qh-gate-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 30% 20%,rgba(255,182,193,.06) 0%,transparent 70%),radial-gradient(ellipse 50% 40% at 70% 80%,rgba(135,206,250,.04) 0%,transparent 70%);pointer-events:none}.qh-gate-decor{position:absolute;inset:0;pointer-events:none}.qh-dot{position:absolute;width:4px;height:4px;border-radius:50%;background:#ffb6c166;animation:qhFloat 6s ease-in-out infinite}.qh-dot-1{top:12%;left:15%;animation-delay:0s}.qh-dot-2{top:25%;right:20%;animation-delay:2s;width:6px;height:6px}.qh-dot-3{bottom:20%;left:40%;animation-delay:4s}.qh-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(255,182,193,.15),transparent)}.qh-line-1{top:30%;left:10%;right:10%;animation:qhFadeIn 8s ease-in-out infinite}.qh-line-2{bottom:35%;left:20%;right:20%;animation:qhFadeIn 7s ease-in-out 2s infinite}@keyframes qhFloat{0%,to{transform:translateY(0);opacity:.4}50%{transform:translateY(-12px);opacity:.8}}@keyframes qhFadeIn{0%,to{opacity:.3}50%{opacity:.7}}.qh-gate-card{position:relative;z-index:2;width:100%;max-width:400px;padding:32px 28px;border:1px solid rgba(255,182,193,.15);border-radius:16px;background:#0f0c1ed9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 16px 48px #00000080;animation:qhCardIn .5s ease}@keyframes qhCardIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.qh-gate-header{text-align:center;margin-bottom:24px}.qh-logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px}.qh-logo-icon{font-size:2.2rem;line-height:1}.qh-logo-title{margin:0;font-size:1.6rem;font-weight:800;color:#fbe8ec;letter-spacing:.06em}.qh-logo-sub{margin:2px 0 0;font-size:.75rem;color:#9b8e9a;letter-spacing:.04em}.qh-gate-divider{width:48px;height:2px;margin:14px auto;border-radius:1px;background:linear-gradient(90deg,transparent,rgba(255,182,193,.5),transparent)}.qh-gate-hint{margin:0;font-size:.8rem;color:#7a6f7a}.qh-gate-form{display:flex;flex-direction:column;gap:16px}.qh-input-group{display:flex;flex-direction:column;gap:6px}.qh-input-label{font-size:.78rem;font-weight:600;color:#c4b5c4;letter-spacing:.04em}.qh-input{width:100%;padding:12px 16px;border:1px solid rgba(255,182,193,.2);border-radius:10px;background:#ffffff0a;color:#f0e6ef;font-size:.95rem;font-family:inherit;outline:none;transition:border-color .2s;letter-spacing:.08em}.qh-input::placeholder{color:#5a4f5a;letter-spacing:.04em}.qh-input:focus{border-color:#ffb6c180}.qh-input-error{border-color:#ef444480}.qh-error-text{margin:0;font-size:.78rem;color:#ef4444;display:flex;align-items:center;gap:4px}.qh-btn{width:100%;padding:13px;border:none;border-radius:10px;background:linear-gradient(135deg,#e8537a,#d43d6b);color:#fff;font-size:.95rem;font-weight:700;cursor:pointer;transition:opacity .2s,transform .1s;letter-spacing:.04em}.qh-btn:active{opacity:.85;transform:scale(.98)}.qh-btn:disabled{opacity:.4;cursor:not-allowed}.qh-gate-footer{display:flex;justify-content:space-between;margin-top:20px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}.qh-gate-footer span{font-size:.68rem;color:#4a3f4a}.code-list{display:flex;flex-direction:column;gap:8px}.code-card{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid rgba(255,182,193,.12);border-radius:10px;background:#ffffff08;color:#f0e6ef;cursor:pointer;transition:all .15s;font-size:.85rem;width:100%}.code-card:hover{border-color:#ffb6c14d;background:#ffb6c10f}.code-card-left{display:flex;align-items:center;gap:10px}.code-card-icon{font-size:1.1rem}.code-card-left strong{display:block;font-size:.85rem}.code-card-meta{display:block;font-size:.68rem;color:#6b7d99;margin-top:2px}.code-card-arrow{color:#5a4f5a;font-size:.9rem}.code-status-tag{display:inline-block;font-size:.65rem;padding:2px 7px;border-radius:6px;font-weight:500;white-space:nowrap;letter-spacing:.02em}.code-status-new{background:#94a3b826;color:#94a3b8}.code-status-learning{background:#81c78426;color:#81c784}.code-status-advanced{background:#64b5f626;color:#64b5f6}.code-status-mastered{background:#ce93d82e;color:#ce93d8}.qh-topbar{display:flex;align-items:center;gap:8px;padding:6px 16px;border-bottom:1px solid rgba(255,182,193,.08);background:#0f0c1e80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:100}.qh-topbar-icon{font-size:1rem}.qh-topbar-title{font-size:.72rem;font-weight:600;color:#c4b5c4;letter-spacing:.05em}.qh-topbar-div{width:1px;height:14px;background:#ffb6c133}.qh-topbar-sub{font-size:.68rem;color:#5a4f5a}.invite-card{padding:16px;border:1px solid rgba(91,155,213,.2);border-radius:12px;background:#5b9bd50a;margin:16px 0}.invite-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;color:#f0f4ff}.invite-card-header strong{font-size:.9rem}.invite-card-header span{font-size:.75rem;color:#6b7d99}.invite-card-header em{color:#d9bd7b;font-style:normal}.invite-code-display{text-align:center;margin:8px 0}.invite-code-display code{display:inline-block;padding:8px 20px;background:#0a162899;border:1px solid rgba(217,189,123,.3);border-radius:8px;color:#d9bd7b;font-size:1.3rem;font-weight:800;letter-spacing:.06em;font-family:monospace}.invite-actions{display:flex;gap:8px;margin-top:10px}.invite-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;border:1px solid rgba(91,155,213,.2);border-radius:8px;background:#5b9bd514;color:#5b9bd5;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s}.invite-btn:active{background:#5b9bd526}.invite-btn.primary{background:linear-gradient(135deg,#3b82c4,#5b9bd5);border-color:transparent;color:#fff}.invite-hint{margin:10px 0 0;font-size:.7rem;color:#6b7d99;display:flex;align-items:center;gap:4px}.dc-countdown{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid rgba(240,192,64,.2);border-radius:8px;background:#f0c0400d;margin-top:8px}.dc-countdown-label{font-size:.78rem;color:#bcc8e0}.dc-countdown-time{font-size:.9rem;font-weight:700;color:#f0c040;font-family:monospace;letter-spacing:.04em}.purchase-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:16px;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.purchase-modal{position:relative;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;padding:24px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,#141e30,#0a1628);box-shadow:0 24px 64px #00000080;animation:modalSlideUp .3s ease}@keyframes modalSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.purchase-header{text-align:center;margin-bottom:20px}.purchase-header h2{font-size:1.3rem;color:#f0f4ff;margin:0 0 6px}.purchase-header p{font-size:.8rem;color:#6b7d99;margin:0}.purchase-plans{display:flex;flex-direction:row;gap:12px}.purchase-plan{flex:1;position:relative;padding:20px 16px;border:1px solid rgba(255,255,255,.08);border-radius:12px;text-align:center;background:#ffffff05}.purchase-plan.highlight{border-color:#d9bd7b4d;background:#d9bd7b0a}.purchase-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);padding:2px 12px;border-radius:999px;background:linear-gradient(135deg,#d9bd7b,#f0c040);color:#0a1628;font-size:.7rem;font-weight:800}.purchase-plan h3{font-size:.95rem;color:#f0f4ff;margin:8px 0 6px}.purchase-price{margin:8px 0}.purchase-price strong{font-size:1.6rem;color:#f0c040}.purchase-price span{font-size:.75rem;color:#6b7d99}.purchase-features{list-style:none;padding:0;margin:12px 0;text-align:left}.purchase-features li{padding:4px 0;font-size:.78rem;color:#bcc8e0}.purchase-btn{width:100%;padding:10px;border:1px solid rgba(91,155,213,.2);border-radius:8px;background:#5b9bd51a;color:#5b9bd5;font-size:.85rem;font-weight:700;cursor:pointer;margin-top:8px;transition:all .15s}.purchase-plan.highlight .purchase-btn{background:linear-gradient(135deg,#d9bd7b,#f0c040);border-color:transparent;color:#0a1628}.purchase-btn:active{opacity:.8}.purchase-note{text-align:center;font-size:.7rem;color:#6b7d99;margin:16px 0 0}.purchase-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;border-radius:50%;background:#ffffff14;color:#6b7d99;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.upgrade-link{padding:0;border:none;background:none;color:#d9bd7b;font-size:.78rem;font-weight:600;cursor:pointer;transition:opacity .15s}.upgrade-link:hover{opacity:.8}
