:root{--bg: #0f172a;--surface: #1e293b;--surface2: #273549;--border: #334155;--accent: #3b82f6;--accent-hover: #2563eb;--text: #f8fafc;--text-muted: #94a3b8;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--radius: 8px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.6;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;border-radius:var(--radius);padding:8px 16px;font-size:14px;font-family:var(--font);transition:background .15s}button:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}input,select,textarea{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:8px 12px;font-size:14px;font-family:var(--font);outline:none;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--accent)}textarea{resize:vertical;min-height:90px}.app-shell{display:flex;flex-direction:column;min-height:100vh}.nav{position:sticky;top:0;z-index:100;background:var(--surface);border-bottom:1px solid var(--border);padding:0 16px;height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px}.nav-brand{font-size:18px;font-weight:700;color:var(--text);letter-spacing:-.3px}.nav-brand span{color:var(--accent)}.nav-links{display:flex;gap:4px;align-items:center}.nav-link{color:var(--text-muted);padding:6px 10px;border-radius:var(--radius);font-size:14px;font-weight:500;transition:color .15s,background .15s}.nav-link:hover,.nav-link.active{color:var(--text);background:var(--surface2);text-decoration:none}.nav-right{display:flex;align-items:center;gap:8px}.tier-badge{font-size:11px;font-weight:700;padding:2px 7px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.tier-badge.pro{background:var(--warning);color:#000}.tier-badge.free{background:var(--border);color:var(--text-muted)}.tier-badge.disabled{background:var(--surface2);color:var(--text-muted);cursor:not-allowed}.page{flex:1;max-width:720px;margin:0 auto;padding:24px 16px;width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:12px}.card-link{display:block;text-decoration:none;color:inherit}.page-header{margin-bottom:20px}.page-header h1{font-size:22px;font-weight:700}.page-header p{color:var(--text-muted);font-size:14px;margin-top:4px}.auth-page{max-width:380px;margin:60px auto;padding:0 16px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.auth-card h1{font-size:20px;font-weight:700;margin-bottom:4px}.auth-card p{color:var(--text-muted);font-size:14px;margin-bottom:20px}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-group label{font-size:13px;font-weight:500;color:var(--text-muted)}.form-error{color:var(--danger);font-size:13px;margin-top:8px}.form-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.form-actions button{width:100%;padding:10px;font-size:15px;font-weight:600}.auth-footer{text-align:center;margin-top:16px;font-size:13px;color:var(--text-muted)}.chart-section{margin-bottom:32px}.chart-section h2{font-size:16px;font-weight:600;margin-bottom:14px}.empty-state{text-align:center;padding:48px 16px;color:var(--text-muted)}.empty-state p{margin-bottom:16px}.spinner{display:flex;justify-content:center;align-items:center;padding:48px;color:var(--text-muted)}.hero{text-align:center;padding:40px 16px 24px}.hero h1{font-size:28px;font-weight:700;margin-bottom:8px}.hero p{color:var(--text-muted);font-size:15px;max-width:480px;margin:0 auto 24px}.hero-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:560px;margin:0 auto 28px}.hero-pillar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 10px}.hero-pillar-icon{font-size:22px;margin-bottom:6px}.hero-pillar h3{font-size:13px;font-weight:600;margin-bottom:2px}.hero-pillar p{font-size:12px;color:var(--text-muted);margin:0}.progress-wrap{margin-bottom:24px}.progress-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-muted);margin-bottom:6px}.progress-track{height:6px;border-radius:99px;background:var(--border);overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.wizard-step h2{font-size:19px;font-weight:700;margin-bottom:6px}.wizard-step>p{color:var(--text-muted);font-size:14px;margin-bottom:20px}.wizard-actions{display:flex;justify-content:space-between;gap:10px;margin-top:24px}.wizard-actions .spacer{flex:1}.likert-question{margin-bottom:22px}.likert-question-text{font-size:14px;font-weight:500;margin-bottom:10px}.likert-scale{display:flex;gap:6px}.likert-option{flex:1;text-align:center;padding:10px 4px;border:2px solid var(--border);border-radius:var(--radius);background:var(--surface2);font-size:13px;font-weight:600;color:var(--text-muted)}.likert-option.selected{border-color:var(--accent);background:#1d4ed830;color:var(--text)}.likert-scale-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);margin-top:6px}.post-draft{border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:14px}.post-draft-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.post-draft-header select{width:auto}.char-count{font-size:11px;color:var(--text-muted);text-align:right;margin-top:4px}.gauge-wrap{position:relative;display:flex;justify-content:center;align-items:center;padding:12px 0 4px}.gauge-label{position:absolute;text-align:center}.gauge-label .score{font-size:36px;font-weight:800;color:var(--text)}.gauge-label .max{font-size:14px;color:var(--text-muted)}.gauge-label p{font-size:12px;color:var(--text-muted);margin-top:4px;max-width:130px;line-height:1.3}.category-scores{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}.category-score-pill{flex:1;min-width:100px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;text-align:center}.category-score-pill .value{font-size:20px;font-weight:700}.category-score-pill .label{font-size:11px;color:var(--text-muted);margin-top:2px}.post-feedback-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:12px}.post-feedback-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.post-feedback-platform{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.post-feedback-overall{font-size:18px;font-weight:700;color:var(--accent)}.post-feedback-content{font-size:13px;color:var(--text-muted);margin-bottom:10px;font-style:italic}.post-subscores{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.post-subscore{font-size:11px;background:var(--surface2);border-radius:20px;padding:3px 9px;color:var(--text-muted)}.post-feedback-bullets{font-size:13px;padding-left:18px}.post-feedback-bullets li{margin-bottom:4px}.disclaimer{font-size:12px;color:var(--text-muted);border-top:1px solid var(--border);padding-top:14px;margin-top:24px}.plan-summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:20px;font-size:14px}.plan-category-group{margin-bottom:22px}.plan-category-group h3{font-size:14px;font-weight:700;margin-bottom:10px;text-transform:capitalize;color:var(--text-muted)}.plan-item-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;margin-bottom:8px;display:flex;gap:10px;align-items:flex-start}.plan-item-card.completed{opacity:.6}.plan-item-card input[type=checkbox]{width:auto;margin-top:3px;accent-color:var(--accent)}.plan-item-body{flex:1}.plan-item-title{font-size:14px;font-weight:600;display:flex;gap:8px;align-items:center}.plan-item-title.done{text-decoration:line-through}.plan-item-desc{font-size:13px;color:var(--text-muted);margin-top:2px}.difficulty-badge{font-size:10px;font-weight:700;text-transform:uppercase;padding:1px 6px;border-radius:20px}.difficulty-easy{background:#065f4630;color:#6ee7b7}.difficulty-medium{background:#92400e30;color:#fbbf24}.difficulty-hard{background:#7f1d1d30;color:#fca5a5}.history-row{display:flex;justify-content:space-between;align-items:center}.history-row .score{font-size:18px;font-weight:700;color:var(--accent)}.history-row .date{font-size:12px;color:var(--text-muted)}
