.app-header{background:var(--header-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:12px 20px;border-bottom:1px solid var(--glass-border);box-shadow:0 4px 20px #00000005;z-index:50;position:sticky;top:0;transition:all .3s ease-in-out;-webkit-tap-highlight-color:transparent;color:var(--fg)}.app-header.selecting-phase{cursor:default}.header-bottom{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:48px}.desktop-hidden{display:none!important}.header-left{display:flex;align-items:center;flex:1;min-width:0}.header-center{display:flex;justify-content:center;flex:1}.header-right{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:1}.app-title{display:flex;align-items:baseline;margin:0;font-size:1.1rem;font-weight:800;color:var(--fg);overflow:hidden;transition:all .3s ease-in-out}.test-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1}.app-title-name{color:var(--fg-muted);white-space:nowrap;flex-shrink:0}@media (max-width: 1024px){.app-title-name{display:none}}.home-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--fg-muted);cursor:pointer;padding:8px;margin-right:8px;border-radius:6px;transition:all .2s}.home-btn:hover{background:transparent;color:var(--primary)}.theme-toggle-btn{background:transparent;border:1px solid var(--glass-border);color:var(--fg);width:38px;height:38px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.16,1,.3,1);padding:0;flex-shrink:0}.theme-toggle-btn:hover{background:var(--glass-border-hover);transform:scale(1.08) rotate(15deg)}.theme-toggle-btn svg{transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.theme-toggle-btn:hover svg{transform:rotate(45deg)}.theme-toggle-btn .sun-icon{color:#fbbf24}.theme-toggle-btn .moon-icon{color:#3b82f6}.timer-controls{display:flex;align-items:center;gap:12px;background:var(--eval-bg);padding:6px 16px;border-radius:8px;border:1px solid var(--border-color)}.timer-display{display:flex;flex-direction:column;align-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.2}.elapsed-time{font-weight:700;font-size:1rem;color:var(--fg)}.time-limit{color:var(--fg-muted);font-size:.75rem}.timer-buttons{display:flex;gap:8px}.timer-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.start-btn{background:#10b981;color:#fff}.start-btn:hover{background:#059669;box-shadow:0 4px 12px #10b98133}.pause-btn{background:#f59e0b;color:#fff}.pause-btn:hover{background:#d97706;box-shadow:0 4px 12px #f59e0b33}.resume-btn{background:var(--primary);color:#fff}.resume-btn:hover{background:var(--primary-hover);box-shadow:0 4px 12px #8b5cf633}.timer-status{padding:4px 8px;color:var(--fg-muted);font-weight:600;font-size:14px}.submit-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 24px;background:var(--primary);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #8b5cf640}.submit-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 6px 16px #8b5cf659}.submit-btn:disabled{background:var(--input-border);color:var(--fg-muted);cursor:not-allowed;box-shadow:none;opacity:.6}.instruction-standalone-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;background:var(--fg-muted);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000d}.instruction-standalone-btn:hover{background:var(--fg);box-shadow:0 4px 12px #00000026}.menu-container{display:block;position:relative}.menu-toggle-btn{background:var(--input-bg);border:1px solid var(--input-border);color:var(--fg);border-radius:6px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.menu-toggle-btn:hover,.menu-toggle-btn.open{background:var(--eval-bg);border-color:var(--fg-muted)}.dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:8px;box-shadow:var(--card-shadow);min-width:180px;display:flex;flex-direction:column;overflow:hidden}.dropdown-item{display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:none;border-bottom:1px solid var(--glass-border);text-align:left;font-size:14px;font-weight:500;color:var(--fg);cursor:pointer;transition:background .15s,color .15s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:var(--eval-bg);color:var(--fg)}.dropdown-item.active{color:var(--primary);font-weight:600}.dropdown-item.active:hover{background:var(--eval-bg)}.signout-item{color:#ef4444}.signout-item:hover{background:#ef44441a;color:#dc2626}.mobile-only-menu-item{display:none}.header-expand-hint{display:none;width:100%;height:12px;justify-content:center;align-items:center;position:absolute;bottom:0;left:0;opacity:.5}.hint-bar{width:40px;height:4px;background-color:var(--input-border);border-radius:2px;transition:all .3s ease}@media (max-width: 768px){.app-header{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px 16px;gap:0;position:sticky;top:0;cursor:pointer}.app-header.selecting-phase{padding-bottom:12px}.desktop-hidden{display:flex!important}.mobile-hidden{display:none!important}.mobile-only-menu-item{display:block}.header-expand-hint{display:flex}.app-header:hover .header-expand-hint{opacity:.8}.app-header.expanded .hint-bar{width:6px;height:6px;border-radius:50%}.header-top{justify-content:space-between;align-items:center;width:100%;margin-bottom:12px;overflow:hidden;transition:max-height .3s ease-in-out,opacity .3s ease-in-out,margin .3s ease-in-out}.header-top .header-left{flex:1;min-width:0;margin-right:12px}.app-title{font-size:1rem}.submit-btn{padding:8px 16px;font-size:13px;white-space:nowrap}.app-header:not(.expanded) .header-top{max-height:0;opacity:0;margin-bottom:0}.app-header.expanded .header-top{max-height:60px;opacity:1;margin-bottom:12px}.header-bottom{display:flex;justify-content:space-between;align-items:center;width:100%;gap:12px}.header-center{flex:1;min-width:0}.timer-controls{width:100%;justify-content:space-between;padding:8px 12px}.header-right{flex:none;display:flex;align-items:center;gap:8px}}.card{width:100%;max-width:var(--content-max-width, 1050px);margin:0 auto 20px;padding:var(--content-padding, 20px);background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--card-shadow);transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease,background-color .3s ease;box-sizing:border-box;color:var(--fg)}.card--hoverable:hover{box-shadow:0 12px 30px #00000014,0 4px 12px #00000008;border-color:var(--glass-border-hover);transform:translateY(-2px)}@media (max-width: 768px){.card{border-radius:0;border-left:none;border-right:none;margin-bottom:8px;box-shadow:0 1px 2px #00000005}}.score-badge{display:inline-flex;align-items:baseline;gap:4px;font-weight:600;white-space:nowrap;border-radius:6px;padding:4px 10px;border:1px solid currentColor;box-shadow:0 1px 2px #0000000d}.score-badge__label{font-size:.75em;opacity:.85}.score-badge__value{font-size:1em}.score-badge--overall,.score-badge--main_question{font-size:.85em}.score-badge--perfect{color:#059669;background:#ecfdf5;border-color:#a7f3d0;box-shadow:none}.score-badge--partial{color:#d97706;background:#fffbeb;border-color:#fde68a;box-shadow:none}.score-badge--zero{color:#dc2626;background:#fef2f2;border-color:#fecaca;box-shadow:none}.score-badge--unselected{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb;box-shadow:none}.score-badge--criteria-theme{color:var(--primary);background:#fff;border-color:var(--input-border);box-shadow:none}:root.dark-mode .score-badge--perfect{color:#34d399;background:#10b98126;border-color:#10b9814d}:root.dark-mode .score-badge--partial{color:#fbbf24;background:#f59e0b26;border-color:#f59e0b4d}:root.dark-mode .score-badge--zero{color:#fca5a5;background:#ef444426;border-color:#ef44444d}:root.dark-mode .score-badge--unselected{color:#9ca3af;background:#ffffff0d;border-color:#ffffff1a}:root.dark-mode .score-badge--criteria-theme{color:var(--badge-color);background:var(--input-bg);border-color:var(--input-border)}.total-scoring{margin-bottom:2rem}.overall-comment{font-size:15px;color:#475569;line-height:1.5;background:#f8fafc;padding:12px;border-radius:8px;border:1px solid #e2e8f0}.instruction-title{font-size:18px;font-weight:600;color:var(--fg);margin:0;padding-bottom:0;border-bottom:none}.instruction-text{margin:0 0 12px;font-family:inherit;font-size:16px;white-space:pre-wrap;line-height:1.6;color:var(--fg-muted)}.instruction-figure{margin:12px 0;text-align:center}.instruction-figure-img{max-width:100%;height:auto;display:block;margin:0 auto}.instruction-figure figcaption{font-size:.85rem;color:var(--fg-muted);margin-top:4px}.instruction-figure-placeholder{margin:8px 0;padding:8px;background:var(--eval-bg);color:var(--fg-muted);font-size:15px;font-style:italic;border:1px dashed var(--input-border);border-radius:4px}.instruction-markdown{font-size:16px;line-height:1.6;color:var(--fg-muted);margin-bottom:12px}.instruction-markdown p{margin:0 0 8px}.instruction-markdown h2,.instruction-markdown h3,.instruction-markdown h4{margin:12px 0 6px;color:var(--fg)}.instruction-markdown ol,.instruction-markdown ul{margin:0 0 8px;padding-left:1.5em}.instruction-markdown li{margin-bottom:4px}.instruction-markdown table{border-collapse:collapse;font-size:15px;margin:8px auto;width:100%}.instruction-markdown th,.instruction-markdown td{border:1px solid var(--border-color);padding:6px 10px;text-align:left;color:var(--fg)}.instruction-markdown th{background:var(--eval-bg);font-weight:600}.blank-placeholder{display:inline-flex;align-items:center;justify-content:center;min-width:4em;border-bottom:1.5px solid var(--fg);vertical-align:bottom;position:relative}.blank-placeholder,.blank-label{font-weight:700;color:var(--fg);pointer-events:none}.blank-label{font-size:1em;font-weight:700;border-bottom:1.5px solid currentColor;padding:0 1em}.instruction-markdown u,.instruction-text u{text-decoration:none;border-bottom:1.5px solid currentColor;display:inline;font-weight:700}.underline-label{vertical-align:baseline;margin-right:.1em;color:var(--fg-muted)}.instruction-table{margin:12px 0;overflow-x:auto}.instruction-table figcaption{font-size:.9rem;color:var(--fg-muted);margin-bottom:6px}.instruction-table table{border-collapse:collapse;font-size:15px;width:100%}.instruction-table th,.instruction-table td{border:1px solid var(--border-color);padding:6px 10px;text-align:left;color:var(--fg)}.instruction-table th{background:var(--eval-bg);font-weight:600}.ref-link{color:inherit;text-decoration:none;border-bottom:1.5px solid currentColor;font-weight:700;cursor:pointer}.ref-link:hover{opacity:.7}@keyframes ref-highlight{0%{background-color:#8b5cf64d;outline:2px solid var(--primary)}70%{background-color:#8b5cf64d;outline:2px solid var(--primary)}to{background-color:transparent;outline:2px solid transparent}}.ref-target-highlight{animation:ref-highlight 1.8s ease-out forwards;border-radius:2px}@media (max-width: 768px){.instruction-markdown table,.instruction-table table{display:block;overflow-x:auto;white-space:nowrap}}.options{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.option{display:flex;flex:1 1 auto;align-items:flex-start;cursor:pointer;padding:12px 16px;border-radius:8px;border:1px solid #d1d5db;background-color:#fff;transition:all .2s ease-in-out;box-sizing:border-box;max-width:100%}.option.selected{border-color:#3b82f6;background:#eff6ff;box-shadow:0 2px 8px #3b82f626}.option.disabled{cursor:not-allowed;opacity:.6}.option:not(.disabled):hover{background-color:#f9fafb}.option.selected:not(.disabled):hover{background-color:#dbeafe}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.radio-circle{width:20px;height:20px;min-width:20px;border-radius:50%;border:2px solid #9ca3af;margin-right:12px;margin-top:2px;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;background-color:#fff;box-sizing:border-box}.option.selected .radio-circle{border-color:#3b82f6;border-width:6px}.option-text{flex:1;line-height:1.5;font-size:16px;color:#374151;word-break:break-word}.option-label{font-weight:600;margin-right:4px}.option.correct-option{border-color:#10b981;background:#ecfdf5!important;opacity:1}.option.correct-option .radio-circle{border-color:#10b981}.option.wrong-selection{border-color:#ef4444;background:#fef2f2!important;opacity:1}.option.wrong-selection .radio-circle{border-color:#ef4444;border-width:6px}.section-toolbar{display:flex;align-items:center;gap:10px;margin-top:6px;padding:4px 0;font-size:13px;color:var(--fg-muted)}.question-text{margin-bottom:20px;line-height:1.6;color:var(--fg);font-size:16px}.grid-btn{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;box-shadow:0 2px 4px #8b5cf626}.grid-btn:hover{background:var(--primary-hover);box-shadow:0 4px 8px #8b5cf640}.grid-btn.active{background:#ef4444;box-shadow:0 2px 4px #ef444426}.grid-btn.active:hover{background:#dc2626;box-shadow:0 4px 8px #ef444440}.chars-per-line-control,.max-chars-control{display:flex;align-items:center;gap:4px;font-size:14px}.chars-input{width:80px;padding:4px;border:none!important;border-bottom:1px solid var(--input-border)!important;border-radius:0!important;text-align:center;background:transparent!important;color:var(--fg);cursor:pointer;box-shadow:none!important;transition:border-color .2s}.chars-input:focus{outline:none!important;border:none!important;border-bottom:2px solid var(--primary)!important;box-shadow:none!important}.character-counter{display:flex;gap:8px;font-size:14px}.counter-item{display:flex;gap:3px}.counter-label{color:var(--fg-muted)}.counter-value{font-weight:600;color:var(--fg);min-width:30px;text-align:right}.counter-value.over-limit{color:#ef4444;font-weight:700}.editor-wrapper{position:relative;width:100%}.line-char-counter{position:absolute;top:0;right:-60px;background:var(--primary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;pointer-events:none;z-index:10;width:32px;text-align:center;box-shadow:0 2px 8px #8b5cf64d}.cursor-char-counter{position:absolute;background:var(--secondary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;pointer-events:none;z-index:11;width:32px;text-align:center;box-shadow:0 2px 8px #06b6d466}.carry-over-indicator{position:absolute;top:0;color:var(--fg-muted);opacity:.5;font-size:14px;pointer-events:none;z-index:9;width:30px;text-align:center}.disabled-cell{position:absolute;background:#ef444414;border:1px solid rgba(239,68,68,.2);pointer-events:none;z-index:5}.section-editor{display:flex;justify-content:flex-start;width:100%;overflow-x:auto}.section-editor:not(.grid-container){display:block}.section-content{width:100%;box-sizing:border-box;padding:14px;border:1px solid var(--input-border);border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Yu Gothic,Meiryo,Helvetica Neue,Arial,sans-serif;font-size:18px;line-height:1.6;resize:vertical;outline:none;transition:border-color .2s,box-shadow .2s,background-color .2s;background:var(--input-bg);color:var(--fg)}.section-content.grid-mode{box-sizing:content-box;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,Consolas,Courier New,monospace;font-size:20px;line-height:24px;background-image:linear-gradient(to right,var(--grid-line-color) 1px,transparent 2px),linear-gradient(to bottom,var(--grid-line-color) 1px,transparent 2px),linear-gradient(to right,var(--grid-line-color) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line-color) 1px,transparent 1px);background-size:120px 24px,24px 120px,24px 24px,24px 24px;letter-spacing:4px;padding:1px 0 0 2px;margin:0;border:none;background-color:transparent;overflow:hidden;resize:none}.section-content:focus{border-color:var(--primary);box-shadow:0 0 0 3px #8b5cf626}.section-content.grid-mode:focus{border-color:transparent;box-shadow:none}.section-content:disabled,.section-content[readonly]{background-color:var(--eval-bg);color:var(--fg-muted);cursor:not-allowed}.chars-input:disabled{background-color:transparent!important;color:var(--fg-muted)!important;cursor:not-allowed!important;border-bottom-color:var(--border-color)!important}.detailed-scoring{margin-top:20px}.score-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.rule-violations{margin-bottom:24px;background:#ef444414;padding:16px;border-radius:8px;border:1px solid rgba(239,68,68,.2)}.rule-violations-title{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 16px;padding-bottom:8px;font-size:18px;font-weight:600;color:#ef4444;border-bottom:2px solid #ef4444}.rule-violations-list{margin:0 0 0 20px;color:#ef4444}.rule-violations-list li{margin-bottom:4px}.criteria-scores{margin-bottom:16px}.criteria-list{background:#06b6d40f;border:1px solid rgba(6,182,212,.2);border-radius:8px;padding:16px;margin-bottom:24px}.criteria-item{padding:12px 0;margin:0;border-bottom:1px solid rgba(6,182,212,.15)}.criteria-item:first-child{padding-top:0}.criteria-item:last-child{padding-bottom:0;border-bottom:none}.criteria-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.criteria-name{font-weight:600;color:var(--fg)}.criteria-reason{color:var(--fg-muted);font-size:14px;line-height:1.5}.feedback-content{color:var(--fg);line-height:1.6;white-space:pre-wrap;font-size:15px;background:#8b5cf614;border:1px solid rgba(139,92,246,.2);border-radius:8px;padding:16px;margin-bottom:24px}.feedback-title{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 16px;padding-bottom:8px;font-size:18px;font-weight:600;color:var(--primary);border-bottom:2px solid var(--primary)}.explanation-content{color:var(--fg);line-height:1.6;font-size:15px;border-radius:8px;padding:16px;border:1px solid transparent;background:transparent;margin-bottom:24px}.explanation-title{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 16px;padding-bottom:8px;font-size:18px;font-weight:600;border-bottom:2px solid transparent}.detailed-explanation--perfect{background:#10b98114;border-color:#10b98133}.detailed-explanation--perfect .explanation-title{color:#10b981;border-bottom-color:#10b981}.detailed-explanation--partial{background:#f59e0b14;border-color:#f59e0b33}.detailed-explanation--partial .explanation-title{color:#f59e0b;border-bottom-color:#f59e0b}.detailed-explanation--zero{background:#ef444414;border-color:#ef444433}.detailed-explanation--zero .explanation-title{color:#ef4444;border-bottom-color:#ef4444}.criteria-title{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 16px;padding-bottom:8px;font-size:18px;font-weight:600;color:var(--secondary);border-bottom:2px solid var(--secondary)}.question-header{display:flex;flex-direction:column;margin-bottom:12px;border-bottom:2px solid var(--primary);padding-bottom:8px;gap:4px}.question-header-top{display:flex;justify-content:space-between;align-items:baseline;width:100%}.question-title{margin:0;color:var(--fg);font-size:1.15em;font-weight:600;flex:1}.sub-question-instruction{font-size:.95em;font-weight:400;color:var(--fg-muted);line-height:1.5}.question-item-flat{margin:0 auto;width:100%;max-width:var(--content-max-width);padding:20px 0;border-bottom:1px solid var(--border-color)}.question-item-flat:last-child{border-bottom:none;padding-bottom:0}.question-item-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.question-item-title{font-weight:600;color:var(--fg);font-size:1em}.inline-answer-row{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.inline-answer-input{padding:8px 12px;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--fg);border-radius:6px;font-size:16px;font-family:inherit;outline:none;min-width:120px;max-width:100%;transition:all .2s}.inline-answer-input.answer-type-numeric{width:160px;font-family:SF Mono,Consolas,Courier New,monospace}.inline-answer-input.answer-type-expression{width:240px;font-family:SF Mono,Consolas,Courier New,monospace}.inline-answer-input.answer-type-free_text{width:100%;max-width:320px}.inline-answer-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #8b5cf626}.inline-answer-input:disabled{background-color:var(--eval-bg);color:var(--fg-muted);cursor:not-allowed;border-color:var(--border-color)}.inline-answer-unit{font-size:15px;color:var(--fg-muted);white-space:nowrap;font-weight:500}@media (max-width: 768px){.line-char-counter,.carry-over-indicator{display:none}}.scoring-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.scoring-dialog{background:#fff;border-radius:12px;padding:40px 48px;min-width:320px;max-width:90vw;text-align:center;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;align-items:center;gap:16px}.scoring-title{font-size:1.3rem;font-weight:600;color:#333;margin:0}.scoring-label{color:#666;font-size:.95rem;margin:0;min-height:1.4em}.scoring-count{color:#888;font-size:.85rem;margin:0}.scoring-progress-bar{width:240px;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.scoring-progress-fill{height:100%;background:#17a2b8;border-radius:4px;transition:width .4s ease}.scoring-spinner{width:48px;height:48px;border:4px solid #e9ecef;border-top-color:#17a2b8;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.scoring-done-icon{width:52px;height:52px;border-radius:50%;background:#28a745;color:#fff;font-size:1.6rem;display:flex;align-items:center;justify-content:center}.scoring-error-icon{width:52px;height:52px;border-radius:50%;background:#dc3545;color:#fff;font-size:1.4rem;display:flex;align-items:center;justify-content:center}.scoring-ok-btn{margin-top:8px;padding:10px 40px;background:#17a2b8;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.scoring-ok-btn:hover{background:#138496}.scoring-ok-btn.error{background:#dc3545}.scoring-ok-btn.error:hover{background:#c82333}.exam-selector-container{padding-top:2rem}.exam-selector-card h2{font-size:1.4rem;color:var(--fg);margin-bottom:1.25rem}.exam-filters{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.exam-filters select{padding:8px 10px;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--fg);border-radius:4px;font-size:14px;flex:1;min-width:130px;outline:none;transition:border-color .2s}.exam-filters select:focus{border-color:var(--primary)}.exam-filters button{padding:8px 20px;background:var(--primary);color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.exam-filters button:hover:not(:disabled){background:var(--primary-hover)}.exam-filters button:disabled{opacity:.6;cursor:not-allowed}.exam-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.exam-error{color:#ef4444;font-size:14px}.exam-loading,.exam-empty{color:var(--fg-muted);font-size:14px;padding:.5rem 0;list-style:none}.dd-subject-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;overflow:hidden}.dd-subject-btn{width:100%;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;font-size:15px;font-weight:600;color:var(--fg);cursor:pointer;transition:all .2s;text-align:left}.dd-subject-btn:hover,.dd-subject-btn.open{background:#8b5cf614;border-color:var(--primary);color:var(--primary)}.dd-term-list{list-style:none;margin:.25rem 0 0 1rem;display:flex;flex-direction:column;gap:.25rem;border-left:2px solid var(--border-color);padding-left:.75rem}.dd-term-btn{width:100%;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;font-size:14px;color:var(--fg);cursor:pointer;transition:all .2s;text-align:left}.dd-term-btn:hover,.dd-term-btn.open{background:#8b5cf614;border-color:var(--primary);color:var(--primary)}.dd-exam-list{list-style:none;margin:.25rem 0 0 1rem;display:flex;flex-direction:column;gap:.35rem;border-left:2px solid var(--border-color);padding-left:.75rem}.dd-exam-item-container{border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background:var(--input-bg);margin-bottom:.35rem}.dd-exam-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;transition:all .2s;background:var(--input-bg)}.dd-exam-item.expanded{background:var(--eval-bg);border-bottom:1px solid var(--border-color)}.dd-exam-item:hover{background:#8b5cf614}.exam-title{font-size:14px;color:var(--fg);font-weight:500}.dd-exam-item:hover .exam-title{color:var(--primary)}.exam-meta{font-size:12px;color:var(--fg-muted);white-space:nowrap;margin-left:1rem}.dd-chevron{font-size:11px;color:var(--fg-muted);margin-left:.5rem;transition:transform .2s}.open>.dd-chevron{color:var(--primary)}.exam-sessions-panel{padding:16px;background:var(--eval-bg);display:flex;flex-direction:column;gap:16px}.start-new-btn{background-color:#10b981;color:#fff;border:none;padding:10px 16px;border-radius:6px;font-weight:700;cursor:pointer;transition:background-color .2s;align-self:flex-start;box-shadow:0 2px 4px #10b98133}.start-new-btn:hover{background-color:#059669;box-shadow:0 4px 8px #10b9814d}.sessions-list-wrapper{display:flex;flex-direction:column;gap:8px}.sessions-header{font-size:13px;color:var(--fg-muted);margin:0 0 4px;font-weight:600}.sessions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.session-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s}.session-item:hover{background:#8b5cf614;border-color:var(--primary);transform:translate(2px)}.session-date{font-size:14px;color:var(--fg);font-weight:500}.session-status{font-size:12px;padding:4px 8px;border-radius:12px;font-weight:600}.status-in_progress,.status-paused{background-color:#fef3c7;color:#d97706}:root.dark-mode .status-in_progress,:root.dark-mode .status-paused{background-color:#f59e0b26;color:#fbbf24}.status-submitted{background-color:#e0e7ff;color:#4338ca}:root.dark-mode .status-submitted{background-color:#6366f126;color:#a5b4fc}.status-scored{background-color:#dcfce7;color:#15803d}:root.dark-mode .status-scored{background-color:#10b98126;color:#34d399}.status-error{background-color:#fee2e2;color:#b91c1c}:root.dark-mode .status-error{background-color:#ef444426;color:#fca5a5}.instruction-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#090a1099;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.instruction-modal-content{background-color:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:12px;box-shadow:var(--card-shadow);max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--glass-border);color:var(--fg)}.instruction-modal-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:32px;word-break:break-word;overflow-wrap:break-word}.instruction-modal-footer{padding:20px 32px;border-top:1px solid var(--glass-border);display:flex;justify-content:center;background-color:var(--eval-bg)}.instruction-modal-start-btn{background:#10b981;color:#fff;border:none;border-radius:8px;padding:12px 48px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #10b9814d}.instruction-modal-start-btn:hover{background:#059669;box-shadow:0 6px 16px #10b98166}.instruction-modal-start-btn:active{transform:translateY(1px);box-shadow:0 2px 4px -1px #3b82f633}@media (max-width: 768px){.instruction-modal-overlay{padding:16px}.instruction-modal-body{padding:24px 16px}.instruction-modal-footer{padding:16px}.instruction-modal-start-btn{width:100%;padding:14px}}.terms-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#090a1099;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.terms-modal-content{background-color:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:12px;box-shadow:var(--card-shadow);max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--glass-border);color:var(--fg)}.terms-modal-header{padding:20px 32px;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.terms-modal-header h2{margin:0;font-size:1.25rem;color:var(--fg)}.terms-modal-close-icon{background:none;border:none;font-size:24px;cursor:pointer;color:var(--fg-muted);padding:4px;line-height:1}.terms-modal-close-icon:hover{color:var(--fg)}.terms-modal-body{flex:1;overflow-y:auto;padding:32px;word-break:break-word;color:var(--fg);line-height:1.6}.terms-modal-body h1,.terms-modal-body h2,.terms-modal-body h3{margin-top:0;color:var(--fg)}.terms-modal-body ol,.terms-modal-body ul{padding-left:20px;margin-bottom:16px}.terms-modal-footer{padding:20px 32px;border-top:1px solid var(--glass-border);display:flex;justify-content:flex-end;gap:12px;background-color:var(--eval-bg)}.terms-modal-close-btn{background:var(--input-bg);color:var(--fg);border:1px solid var(--input-border);border-radius:8px;padding:10px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.terms-modal-close-btn:hover{background:var(--eval-bg)}.terms-modal-agree-btn{background:var(--primary);color:#fff;border:none;border-radius:8px;padding:10px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #8b5cf633}.terms-modal-agree-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 6px 16px #8b5cf64d}.terms-modal-agree-btn:disabled{background:var(--input-border);color:var(--fg-muted);cursor:not-allowed;opacity:.7;box-shadow:none}*{margin:0;padding:0;box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}:root{--content-max-width: 1050px;--content-padding: 20px;--in-oklch: ;--bg: #f8fafc;--fg: #0f172a;--fg-muted: #475569;--primary: #8b5cf6;--primary-hover: #7c3aed;--secondary: #06b6d4;--secondary-hover: #0891b2;--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(15, 23, 42, .08);--glass-border-hover: rgba(15, 23, 42, .16);--card-shadow: 0 8px 32px 0 rgba(15, 23, 42, .06);--header-bg: rgba(248, 250, 252, .8);--input-bg: #ffffff;--input-border: #cbd5e1;--border-color: #e2e8f0;--badge-bg: rgba(139, 92, 246, .08);--badge-color: #6d28d9;--eval-bg: rgba(15, 23, 42, .04);--grid-line-color: rgba(15, 23, 42, .12);--scroll-thumb: #cbd5e1;--scroll-track: #f1f5f9}@supports (linear-gradient(in oklch,white,black)){:root{--in-oklch: in oklch}}:root.dark-mode{--bg: #090a10;--fg: #f3f4f6;--fg-muted: #9ca3af;--glass-bg: rgba(17, 18, 30, .45);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .16);--card-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--header-bg: rgba(9, 10, 16, .7);--input-bg: rgba(9, 10, 16, .5);--input-border: rgba(255, 255, 255, .15);--border-color: rgba(255, 255, 255, .08);--badge-bg: rgba(139, 92, 246, .15);--badge-color: #c084fc;--eval-bg: rgba(0, 0, 0, .2);--grid-line-color: rgba(255, 255, 255, .15);--scroll-thumb: #374151;--scroll-track: #090a10}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:9999px;border:2.5px solid var(--scroll-track)}::-webkit-scrollbar-thumb:hover{background:var(--primary)}html,body{height:100vh;height:100dvh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg);color:var(--fg);transition:background-color .4s ease,color .4s ease}#root{height:100vh;height:100dvh}.app{height:100vh;height:100dvh;background-color:var(--bg);display:flex;flex-direction:column;overflow:hidden;transition:background-color .4s ease}.app-main{flex:1;padding:24px 20px}.add-section-btn{padding:10px 20px;background:var(--primary);color:#fff;border:none;border-radius:20px;cursor:pointer;font-size:14px;font-weight:600;margin-right:8px;box-shadow:0 4px 12px #8b5cf640;transition:all .2s ease}.add-section-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 6px 16px #8b5cf659}.add-section-btn:disabled{background:var(--fg-muted);cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}.url-input{padding:8px 12px;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--fg);border-radius:6px;font-size:14px;min-width:200px;transition:all .2s ease}.url-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf640}.chars-per-line-control{display:flex;align-items:center;gap:8px;font-size:16px;padding:8px 12px;background:var(--eval-bg);border:1px solid var(--border-color);color:var(--fg);border-radius:6px}.chars-input{width:80px;padding:6px 8px;border:1px solid var(--input-border);border-radius:4px;text-align:center;background:var(--input-bg);color:var(--fg);cursor:pointer;font-size:14px}.question-title{margin:0;color:var(--fg);font-size:1.25em;font-weight:700}.section-title{font-size:1.5rem;font-weight:800;margin:0 0 1rem;color:var(--fg);border-bottom:2px solid var(--primary);padding-bottom:.5rem;width:100%;display:flex;align-items:baseline;gap:12px;transition:border-bottom-color .4s ease}.section-title .score-badge{margin-left:auto;flex-shrink:0}.section-title.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .2s,margin-bottom .2s cubic-bezier(.4,0,.2,1)}.section-title.collapsible:hover{opacity:.8}.section-title.collapsible:before{content:"▼ ";font-size:.7em;color:var(--primary);display:inline-block;transform:translateY(-2px)}.section-title.collapsible.collapsed{margin-bottom:0}.section-title.collapsible.collapsed:before{content:"▶ "}.section-collapsible-wrapper{display:grid;grid-template-rows:1fr;transition:grid-template-rows .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);opacity:1}.section-collapsible-wrapper.collapsed{grid-template-rows:0fr;opacity:0;pointer-events:none}.section-collapsible-content{overflow:hidden;display:flex;flex-direction:column;min-height:0}.section-title.instruction{border-bottom-color:var(--fg-muted)}.section-title.instruction.collapsible:before{color:var(--fg-muted)}.section-title.main-question,.section-title.selectable{align-items:center}.selection-checkbox{display:inline-block;width:22px;height:22px;border:2px solid var(--input-border);border-radius:6px;flex-shrink:0;cursor:pointer;background:var(--input-bg);position:relative;transition:all .2s}.selection-checkbox:hover:not(.disabled){border-color:var(--fg-muted)}.selection-checkbox.checked{border-color:var(--primary);background:var(--primary)}.selection-checkbox.checked:after{content:"";position:absolute;left:6px;top:2px;width:6px;height:12px;border:2px solid white;border-top:none;border-left:none;transform:rotate(45deg)}.selection-checkbox.disabled{border-color:var(--border-color);background:var(--eval-bg);cursor:not-allowed}.selection-checkbox.disabled.checked{border-color:var(--fg-muted);background:var(--fg-muted)}.sub-question-wrapper{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-color)}.sub-question-wrapper.first{margin-top:0;padding-top:8px;border-top:none}.selection-hint{font-size:.875rem;font-weight:500;color:var(--fg-muted);margin-left:8px}.section-title.selected .selection-hint{color:var(--primary)}.sub-question-group .question-header{margin-bottom:8px;display:flex;flex-direction:column;gap:4px}.sub-question-instruction{font-size:.95em;color:var(--fg-muted);line-height:1.5;padding:10px 14px;background:var(--eval-bg);border-left:4px solid var(--primary);border-radius:0 8px 8px 0;margin-top:8px;margin-bottom:12px;width:100%;box-sizing:border-box}.question-item-flat{margin-bottom:16px}.question-item-flat .section{border:none;border-radius:0;margin:0;padding:0;max-width:none}.question-item-flat .section.normal-mode{width:100%}.question-item-flat+.question-item-flat .section{border-top:1px solid var(--border-color);padding-top:16px}.auth-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:transparent;padding:20px}.auth-form{background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:2.5rem;border-radius:16px;box-shadow:var(--card-shadow);display:flex;flex-direction:column;gap:1.25rem;width:100%;max-width:380px;border:1px solid var(--glass-border);color:var(--fg)}.auth-form h1{font-size:1.75rem;font-weight:800;color:var(--fg);text-align:center;margin-bottom:.5rem;letter-spacing:-.025em}.auth-form input{padding:12px 16px;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--fg);border-radius:8px;font-size:15px;transition:all .2s}.auth-form input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #8b5cf626}.auth-form button{padding:12px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #8b5cf640;transition:all .2s}.auth-form button:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 6px 16px #8b5cf659}.auth-form .password-input-wrapper{position:relative;width:100%;display:flex}.auth-form .password-input-wrapper input{width:100%;padding-right:44px}.auth-form .password-toggle-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;color:var(--fg-muted);padding:0;border:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:none}.auth-form .password-toggle-btn:hover:not(:disabled){background:transparent;color:var(--fg)}.auth-form button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.auth-error{color:#ef4444;font-size:14px;text-align:center;background:#ef44441a;padding:8px;border:1px solid rgba(239,68,68,.2);border-radius:6px}.auth-switch{text-align:center;font-size:14px;color:var(--fg-muted);margin-top:.5rem}.auth-switch a{color:var(--primary);text-decoration:underline;cursor:pointer;font-weight:600}.auth-switch a:hover{color:var(--primary-hover)}.terms-checkbox-container{font-size:14px;color:var(--fg-muted);display:flex;align-items:center}.terms-checkbox-container label{display:flex;align-items:center;gap:8px;cursor:pointer}.terms-checkbox-container input[type=checkbox]{width:16px;height:16px;padding:0;margin:0}.terms-checkbox-container a{color:var(--primary);text-decoration:underline}.terms-checkbox-container a:hover{color:var(--primary-hover)}@media (max-width: 768px){:root{--content-padding: 16px}.app-main{padding:0 0 40px}.section-title{font-size:1.25rem;margin:1rem auto .5rem}}.lp-container{--lp-primary: #8b5cf6;--lp-primary-hover: #7c3aed;--lp-secondary: #06b6d4;--lp-secondary-hover: #0891b2;--in-oklch: }@supports (linear-gradient(in oklch,white,black)){.lp-container{--in-oklch: in oklch}}.lp-container.dark-mode{--lp-bg: #090a10;--lp-fg: #f3f4f6;--lp-fg-muted: #9ca3af;--lp-glass-bg: rgba(17, 18, 30, .45);--lp-glass-border: rgba(255, 255, 255, .08);--lp-glass-border-hover: rgba(255, 255, 255, .16);--lp-card-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--lp-glow-color-1: rgba(139, 92, 246, .18);--lp-glow-color-2: rgba(6, 182, 212, .18);--lp-glow-color-3: rgba(236, 72, 153, .1);--lp-logo-gradient: linear-gradient(135deg var(--in-oklch), #ffffff 30%, #a78bfa 100%);--lp-header-bg: rgba(9, 10, 16, .7);--lp-nav-cta-bg: rgba(255, 255, 255, .08);--lp-nav-cta-hover-bg: #f3f4f6;--lp-nav-cta-hover-fg: #090a10;--lp-visual-glow-opacity: .35;--lp-phi-num-gradient: linear-gradient(135deg var(--in-oklch), rgba(139, 92, 246, .4) 0%, rgba(6, 182, 212, .1) 100%);--lp-footer-cta-bg: linear-gradient(135deg var(--in-oklch), #0f101a 0%, #15102a 100%);--lp-eval-bg: rgba(0, 0, 0, .2);--lp-grid-cell-bg: rgba(255, 255, 255, .02);--lp-grid-cell-border: rgba(255, 255, 255, .15);--lp-timer-bg: #0d0f19;--lp-badge-bg: rgba(139, 92, 246, .15);--lp-badge-color: #c084fc}.lp-container.light-mode{--lp-bg: #f8fafc;--lp-fg: #0f172a;--lp-fg-muted: #475569;--lp-glass-bg: rgba(255, 255, 255, .75);--lp-glass-border: rgba(15, 23, 42, .08);--lp-glass-border-hover: rgba(15, 23, 42, .16);--lp-card-shadow: 0 8px 32px 0 rgba(15, 23, 42, .06);--lp-glow-color-1: rgba(139, 92, 246, .08);--lp-glow-color-2: rgba(6, 182, 212, .08);--lp-glow-color-3: rgba(236, 72, 153, .04);--lp-logo-gradient: linear-gradient(135deg var(--in-oklch), #0f172a 30%, #7c3aed 100%);--lp-header-bg: rgba(248, 250, 252, .8);--lp-nav-cta-bg: rgba(15, 23, 42, .06);--lp-nav-cta-hover-bg: #0f172a;--lp-nav-cta-hover-fg: #f8fafc;--lp-visual-glow-opacity: .15;--lp-phi-num-gradient: linear-gradient(135deg var(--in-oklch), rgba(139, 92, 246, .6) 0%, rgba(6, 182, 212, .2) 100%);--lp-footer-cta-bg: linear-gradient(135deg var(--in-oklch), #f1f5f9 0%, #e2e8f0 100%);--lp-eval-bg: rgba(15, 23, 42, .04);--lp-grid-cell-bg: rgba(15, 23, 42, .02);--lp-grid-cell-border: rgba(15, 23, 42, .1);--lp-timer-bg: #ffffff;--lp-badge-bg: rgba(139, 92, 246, .08);--lp-badge-color: #6d28d9}.lp-container{height:100vh;height:100dvh;overflow-y:auto;background-color:var(--lp-bg);color:var(--lp-fg);font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden;position:relative;line-height:1.6;transition:background-color .4s ease,color .4s ease}.lp-glow-orb{position:absolute;border-radius:50%;filter:blur(140px);z-index:0;pointer-events:none;animation:floatOrb 25s infinite alternate ease-in-out}.orb-1{width:50vw;height:50vw;max-width:600px;max-height:600px;top:-10%;right:-5%;background:var(--lp-glow-color-1)}.orb-2{width:45vw;height:45vw;max-width:500px;max-height:500px;top:40%;left:-10%;background:var(--lp-glow-color-2);animation-delay:-5s;animation-duration:30s}.orb-3{width:35vw;height:35vw;max-width:400px;max-height:400px;bottom:10%;right:15%;background:var(--lp-glow-color-3);animation-delay:-10s;animation-duration:20s}@keyframes floatOrb{0%{transform:translate(0) scale(1)}to{transform:translate(8%,12%) scale(1.15)}}.lp-header,.lp-hero,.lp-philosophy,.lp-features,.lp-roadmap,.lp-cta-section,.lp-footer{position:relative;z-index:10}.lp-header{position:sticky;top:0;z-index:100;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--lp-glass-border);background:var(--lp-header-bg);transition:background-color .4s ease,border-bottom-color .4s ease}.lp-header-content{max-width:1200px;margin:0 auto;padding:1.25rem 2rem;display:flex;justify-content:space-between;align-items:center}.lp-logo{display:flex;align-items:center;gap:.75rem}.lp-logo-icon{font-size:1.75rem}.lp-logo-text{font-size:1.35rem;font-weight:800;letter-spacing:-.025em;background:var(--lp-logo-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:background .4s ease}.lp-nav{display:flex;align-items:center;gap:1.5rem}.lp-theme-toggle{background:transparent;border:1px solid var(--lp-glass-border);color:var(--lp-fg);width:38px;height:38px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.16,1,.3,1);padding:0}.lp-theme-toggle:hover{background:var(--lp-glass-border-hover);transform:scale(1.08) rotate(15deg)}.lp-theme-toggle svg{transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.lp-theme-toggle:hover svg{transform:rotate(45deg)}.lp-theme-toggle .sun-icon{color:#fbbf24}.lp-theme-toggle .moon-icon{color:#3b82f6}.lp-nav-btn{background:transparent;border:none;color:var(--lp-fg);font-weight:600;font-size:.95rem;cursor:pointer;transition:color .25s ease}.lp-nav-btn:hover{color:var(--lp-primary)}.lp-nav-cta{background:var(--lp-nav-cta-bg);border:1px solid var(--lp-glass-border);color:var(--lp-fg);font-weight:600;font-size:.95rem;padding:.6rem 1.25rem;border-radius:9999px;cursor:pointer;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:all .3s cubic-bezier(.16,1,.3,1)}.lp-nav-cta:hover{background:var(--lp-nav-cta-hover-bg);color:var(--lp-nav-cta-hover-fg);transform:translateY(-2px);box-shadow:0 4px 20px #8b5cf626}.lp-hero{max-width:1200px;margin:0 auto;padding:6rem 2rem 4rem;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;position:relative;z-index:10}.lp-hero-content{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.lp-badge{background:var(--lp-badge-bg);border:1px solid var(--lp-glass-border);color:var(--lp-badge-color);font-size:.85rem;font-weight:600;padding:.4rem 1rem;border-radius:9999px;margin-bottom:1.5rem;letter-spacing:.05em;text-transform:uppercase;display:inline-block;transition:background-color .4s ease,color .4s ease,border-color .4s ease}.lp-hero-title{font-size:clamp(2.5rem,5vw,3.8rem);font-weight:900;line-height:1.15;letter-spacing:-.03em;margin:0 0 1.5rem}.gradient-text{background:linear-gradient(135deg var(--in-oklch),#8b5cf6 0%,#06b6d4 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.lp-hero-subtitle{font-size:1.15rem;color:var(--lp-fg-muted);margin-bottom:2.5rem;max-width:580px;line-height:1.7}.lp-hero-ctas{display:flex;gap:1.25rem;align-items:center;width:100%}.lp-cta-primary{background:linear-gradient(135deg var(--in-oklch),var(--lp-primary) 0%,#9061f9 100%);border:none;color:#fff;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:12px;cursor:pointer;display:flex;align-items:center;gap:.75rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 10px 30px -10px #8b5cf680}.lp-cta-primary:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 20px 40px -10px #8b5cf699;background:linear-gradient(135deg var(--in-oklch),var(--lp-primary-hover) 0%,#7e3af2 100%)}.lp-cta-primary .arrow-icon{transition:transform .3s ease}.lp-cta-primary:hover .arrow-icon{transform:translate(4px)}.lp-cta-primary.large{padding:1.25rem 3rem;font-size:1.2rem}.lp-cta-secondary{color:var(--lp-fg);font-weight:600;font-size:1rem;text-decoration:none;border-bottom:2px solid rgba(255,255,255,.15);padding-bottom:.25rem;transition:all .25s ease}.lp-cta-secondary:hover{border-color:var(--lp-secondary);color:var(--lp-secondary)}.lp-hero-visual{display:flex;justify-content:center;align-items:center}.lp-visual-wrapper{position:relative;width:100%;max-width:520px;border-radius:20px;padding:4px;background:linear-gradient(135deg var(--in-oklch),rgba(139,92,246,.4),rgba(6,182,212,.4));box-shadow:var(--lp-card-shadow);animation:floatGraphic 6s infinite alternate ease-in-out}.lp-mockup-img{width:100%;height:auto;border-radius:16px;display:block}.lp-visual-glow{position:absolute;top:-15px;left:-15px;right:-15px;bottom:-15px;z-index:-1;background:linear-gradient(135deg var(--in-oklch),var(--lp-primary),var(--lp-secondary));filter:blur(25px);opacity:var(--lp-visual-glow-opacity);border-radius:24px;pointer-events:none;transition:opacity .4s ease}@keyframes floatGraphic{0%{transform:translateY(0) rotate(0)}to{transform:translateY(-12px) rotate(1deg)}}.lp-philosophy{max-width:1200px;margin:0 auto;padding:4rem 2rem;z-index:10;position:relative}.lp-philosophy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.lp-phi-card{background:var(--lp-glass-bg);border:1px solid var(--lp-glass-border);padding:2.5rem 2rem;border-radius:20px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.lp-phi-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(to right,var(--lp-primary),transparent);opacity:0;transition:opacity .3s ease}.lp-phi-card:hover{transform:translateY(-6px);border-color:var(--lp-glass-border-hover);box-shadow:0 12px 40px #00000040}.lp-phi-card:hover:before{opacity:1}.lp-phi-num{font-size:3rem;font-weight:800;background:var(--lp-phi-num-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1;margin-bottom:1rem;transition:background .4s ease}.lp-phi-card h3{font-size:1.25rem;margin:0 0 .75rem;font-weight:700}.lp-phi-card p{color:var(--lp-fg-muted);font-size:.95rem;margin:0;line-height:1.6}.lp-features{max-width:1200px;margin:0 auto;padding:6rem 2rem;z-index:10;position:relative}.lp-section-header{text-align:center;margin-bottom:5rem}.lp-section-title{font-size:clamp(2rem,4vw,2.75rem);font-weight:800;margin:0 0 1rem;letter-spacing:-.02em}.lp-section-desc{font-size:1.15rem;color:var(--lp-fg-muted);max-width:600px;margin:0 auto}.lp-features-list{display:flex;flex-direction:column;gap:6rem}.lp-feature-item{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5rem}.lp-feature-item.reverse{direction:rtl}.lp-feature-item.reverse .lp-feature-info{direction:ltr}.lp-feature-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.lp-feat-badge{color:var(--lp-secondary);font-weight:700;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.75rem}.lp-feature-info h3{font-size:1.85rem;font-weight:800;margin:0 0 1.25rem;letter-spacing:-.01em;line-height:1.3}.lp-feature-info p{color:var(--lp-fg-muted);font-size:1.05rem;line-height:1.7;margin-bottom:1.5rem}.lp-feat-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.lp-feat-list li{display:flex;align-items:center;gap:.75rem;font-weight:500;font-size:.95rem}.lp-feat-list li:before{content:"✓";color:var(--lp-secondary);font-weight:900;font-size:1.1rem}.lp-feature-visual-mini{display:flex;justify-content:center;align-items:center;position:relative;width:100%}.lp-feat-card{width:100%;max-width:380px;background:var(--lp-glass-bg);border:1px solid var(--lp-glass-border);border-radius:16px;padding:1.5rem;box-shadow:var(--lp-card-shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative;z-index:5;transition:all .3s ease}.lp-feat-card:hover{transform:scale(1.03) translateY(-4px);border-color:var(--lp-glass-border-hover)}.lp-feat-card-header{display:flex;gap:.4rem;margin-bottom:1.25rem}.lp-feat-card-header span{width:10px;height:10px;border-radius:50%}.lp-dot-red{background-color:#ef4444}.lp-dot-yellow{background-color:#f59e0b}.lp-dot-green{background-color:#10b981}.lp-badge-ai{font-size:.7rem;font-weight:800;color:var(--lp-primary);background:#8b5cf626;padding:.25rem .6rem;border-radius:4px;display:inline-block;margin-bottom:.75rem;letter-spacing:.05em}.lp-score-display{display:flex;align-items:baseline;gap:.2rem;margin-bottom:.5rem}.lp-score-num{font-size:3rem;font-weight:900;line-height:1;color:#10b981}.lp-score-total{color:var(--lp-fg-muted);font-size:1.1rem}.lp-eval-progress{height:6px;background:#ffffff1a;border-radius:999px;overflow:hidden;margin-bottom:1.25rem}.lp-eval-bar{height:100%;background:linear-gradient(to right,var(--lp-primary),#10b981);border-radius:999px}.lp-eval-feedback{font-size:.85rem;color:var(--lp-fg-muted);margin:0;line-height:1.5;background:var(--lp-eval-bg);padding:.75rem;border-radius:8px;border-left:3px solid var(--lp-primary);font-style:italic;transition:background-color .4s ease,border-left-color .4s ease}.lp-cbt-mock-window{width:100%;max-width:440px;background:var(--lp-glass-bg);border:1px solid var(--lp-glass-border);border-radius:16px;box-shadow:var(--lp-card-shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.16,1,.3,1);z-index:5}.lp-cbt-mock-window:hover{transform:scale(1.03) translateY(-4px);border-color:var(--lp-glass-border-hover)}.lp-cbt-mock-header{display:flex;align-items:center;padding:.75rem 1rem;background:#00000026;border-bottom:1px solid var(--lp-glass-border)}.light-mode .lp-cbt-mock-header{background:#00000008}.lp-cbt-mock-dots{display:flex;gap:6px}.lp-cbt-dot{width:10px;height:10px;border-radius:50%}.lp-cbt-dot.red{background-color:#ef4444}.lp-cbt-dot.yellow{background-color:#f59e0b}.lp-cbt-dot.green{background-color:#10b981}.lp-cbt-mock-title{font-size:.75rem;font-weight:700;color:var(--lp-fg-muted);margin-left:auto;margin-right:auto}.lp-cbt-mock-badge{font-size:.65rem;background:#8b5cf626;color:var(--lp-primary);padding:.2rem .6rem;border-radius:4px;border:1px solid rgba(139,92,246,.25);font-weight:600}.lp-cbt-mock-toolbar{display:flex;gap:12px;align-items:center;padding:.5rem 1rem;background:#0000001a;border-bottom:1px solid var(--lp-glass-border);font-size:.7rem}.light-mode .lp-cbt-mock-toolbar{background:#00000005}.lp-cbt-tool{color:var(--lp-fg-muted);font-weight:600}.lp-cbt-tool.active{background:var(--lp-primary);color:#fff;padding:2px 6px;border-radius:4px}.lp-cbt-counter{margin-left:auto;font-weight:700;color:#10b981}.lp-cbt-mock-editor{display:flex;padding:1.25rem 1rem;min-height:180px;background:#0003;font-family:Roboto Mono,SF Mono,Consolas,Courier New,monospace;font-size:.8rem;line-height:1.6}.light-mode .lp-cbt-mock-editor{background:#fff6}.lp-cbt-gutter{display:flex;flex-direction:column;color:var(--lp-fg-muted);opacity:.4;text-align:right;margin-right:12px;-webkit-user-select:none;user-select:none;font-size:.75rem}.lp-cbt-content{flex:1;color:var(--lp-fg);text-align:left}.lp-cbt-content p{margin:0 0 .75rem;text-indent:1em}.lp-cbt-content p:last-child{margin-bottom:0}.lp-cbt-cursor{display:inline-block;width:2px;height:1.1em;background-color:var(--lp-primary);vertical-align:middle;margin-left:2px;animation:lp-cursor-blink 1s step-end infinite}@keyframes lp-cursor-blink{0%,to{background-color:transparent}50%{background-color:var(--lp-primary)}}.lp-cbt-mock-footer{display:flex;align-items:center;gap:6px;padding:.5rem 1rem;background:#00000026;border-top:1px solid var(--lp-glass-border);font-size:.65rem;color:var(--lp-fg-muted)}.light-mode .lp-cbt-mock-footer{background:#00000008}.lp-cbt-status-dot{width:6px;height:6px;border-radius:50%;background-color:#10b981;box-shadow:0 0 8px #10b981}.lp-cbt-footer-right{margin-left:auto;font-weight:600;color:var(--lp-secondary)}.timer-card{display:flex;flex-direction:column;align-items:center;padding:2rem}.lp-timer-ring{width:140px;height:140px;border-radius:50%;background:conic-gradient(var(--lp-secondary) 70%,rgba(255,255,255,.05) 0%);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.lp-timer-circle{width:124px;height:124px;border-radius:50%;background:var(--lp-timer-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:background-color .4s ease}.lp-timer-text{font-size:1.85rem;font-weight:800;color:#fff;line-height:1}.lp-timer-label{font-size:.6rem;color:var(--lp-secondary);letter-spacing:.1em;margin-top:.25rem}.lp-timer-controls-mock{font-size:.85rem;color:var(--lp-fg-muted)}.lp-timer-btn-mock{background:#ffffff0d;border:1px solid var(--lp-glass-border);padding:.4rem 1rem;border-radius:6px;display:inline-block}.lp-audience{max-width:1200px;margin:0 auto;padding:6rem 2rem;z-index:10;position:relative}.lp-audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.lp-aud-card{background:linear-gradient(180deg,var(--lp-glass-bg) 0%,rgba(139,92,246,.04) 100%);border:1px solid var(--lp-glass-border);border-radius:24px;padding:3rem 2rem;text-align:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:all .3s ease}.lp-aud-card:hover{transform:translateY(-8px);border-color:#06b6d440;box-shadow:0 15px 40px -10px #06b6d426}.lp-aud-icon{font-size:2.5rem;margin-bottom:1.5rem}.lp-aud-card h4{font-size:1.25rem;margin:0 0 1rem;font-weight:700}.lp-aud-card p{color:var(--lp-fg-muted);font-size:.95rem;line-height:1.6;margin:0}.lp-footer-cta{background:var(--lp-footer-cta-bg);border-top:1px solid var(--lp-glass-border);border-bottom:1px solid var(--lp-glass-border);padding:6rem 2rem;text-align:center;position:relative;overflow:hidden;z-index:10;transition:background .4s ease,border-color .4s ease}.lp-footer-cta-content{max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.lp-footer-cta h2{font-size:clamp(2rem,4vw,3rem);font-weight:900;margin:0 0 1rem;letter-spacing:-.02em}.lp-footer-cta p{font-size:1.15rem;color:var(--lp-fg-muted);margin-bottom:2.5rem;max-width:500px}.lp-roadmap{max-width:1200px;margin:0 auto;padding:6rem 2rem;z-index:10;position:relative}.lp-roadmap-timeline{display:flex;flex-direction:column;gap:2rem;max-width:800px;margin:0 auto;position:relative;padding-left:2.5rem}.lp-roadmap-timeline:before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:var(--lp-glass-border)}.lp-roadmap-item{position:relative;display:flex;flex-direction:column}.lp-roadmap-dot{position:absolute;left:-40px;top:6px;width:20px;height:20px;border-radius:50%;background:var(--lp-bg);border:4px solid var(--lp-glass-border);z-index:2;transition:border-color .4s ease,background-color .4s ease}.lp-roadmap-item.active .lp-roadmap-dot{border-color:var(--lp-primary);background:var(--lp-primary);box-shadow:0 0 12px var(--lp-primary)}.lp-roadmap-content{background:var(--lp-glass-bg);border:1px solid var(--lp-glass-border);padding:1.5rem 2rem;border-radius:16px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .3s ease}.lp-roadmap-content:hover{transform:translate(4px);border-color:var(--lp-glass-border-hover)}.lp-roadmap-status{font-size:.75rem;font-weight:800;color:var(--lp-primary);background:#8b5cf626;padding:.2rem .6rem;border-radius:4px;display:inline-block;margin-bottom:.75rem}.lp-roadmap-status.upcoming{color:var(--lp-fg-muted);background:#ffffff0d}.lp-container.light-mode .lp-roadmap-status.upcoming{background:#0000000d}.lp-roadmap-content h4{font-size:1.15rem;margin:0 0 .5rem;font-weight:700}.lp-roadmap-content p{color:var(--lp-fg-muted);font-size:.9rem;margin:0;line-height:1.6}.lp-footer{max-width:1200px;margin:0 auto;padding:3rem 2rem;border-top:1px solid var(--lp-glass-border);text-align:center;position:relative;z-index:10;transition:border-top-color .4s ease}.lp-footer-bottom{font-size:.85rem;color:var(--lp-fg-muted)}@media (max-width: 1024px){.lp-hero{grid-template-columns:1fr;gap:3rem;padding-top:4rem}.lp-hero-content{align-items:center;text-align:center}.lp-hero-subtitle{margin-left:auto;margin-right:auto}.lp-hero-ctas{justify-content:center}.lp-hero-visual{order:2}.lp-feature-item{grid-template-columns:1fr;gap:3rem}.lp-feature-item.reverse{direction:ltr}.lp-feature-info{align-items:center;text-align:center}.lp-feat-list{align-items:center}}@media (max-width: 768px){.mobile-only{display:block}.lp-header-content{padding:1rem 1.5rem}.lp-philosophy-grid,.lp-audience-grid{grid-template-columns:1fr;gap:1.5rem}.lp-hero-ctas{flex-direction:column;gap:1rem}.lp-cta-primary{width:100%;justify-content:center}.lp-nav{gap:1rem}.lp-nav-cta{padding:.5rem 1rem;font-size:.85rem}}.mobile-only{display:none}
