:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e5edf8;background:#07111f;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 10% 0%,#132a45 0,transparent 32%),radial-gradient(circle at 100% 20%,#17233d 0,transparent 28%),#07111f}button,input,textarea,select{font:inherit}.center{min-height:100vh;display:grid;place-items:center}.app{min-height:100vh}header{min-height:72px;padding:10px max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:18px;border-bottom:1px solid #213044;background:#081321ed;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#34d399,#22d3ee);display:grid;place-items:center;color:#04211d;font-weight:900}.brand b,.brand span{display:block}.brand span{font-size:11px;color:#8291a8;margin-top:2px}nav{display:flex;gap:3px;margin-left:auto}nav button,.menu-btn{border:0;background:transparent;color:#8192aa;padding:9px 10px;border-radius:9px;display:flex;align-items:center;gap:5px;font-size:12px;cursor:pointer}nav button.active,nav button:hover{background:#14253a;color:#e9f1fb}.icon-btn,.menu-btn{border:1px solid #2a3a50;background:#0b1726;color:#9fb0c8;border-radius:10px;padding:9px;cursor:pointer}.menu-btn{display:none;margin-left:auto}main{max-width:1180px;margin:0 auto;padding:34px 24px 60px}.alert{border:1px solid #7c3d3d;background:#34191d;color:#ffb7b7;padding:12px 15px;border-radius:12px;margin-bottom:18px}.hero{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:26px}.eyebrow{font-size:12px;letter-spacing:.16em;color:#55e6c1;font-weight:800}.hero h1,.page-head h1{font-size:40px;line-height:1.08;margin:8px 0 10px}.hero p,.page-head p{color:#93a4bc;margin:0}.page-head{margin-bottom:24px}.readiness{display:flex;gap:13px;align-items:center;border:1px solid #2d425b;background:#0c1b2dcc;border-radius:18px;padding:16px 20px;min-width:210px}.readiness svg{color:#55e6c1}.readiness strong{font-size:28px;display:block}.readiness span{font-size:12px;color:#8fa1b9}.skills{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.skill-card,.panel{border:1px solid #20324a;background:linear-gradient(180deg,#0d1b2b,#0a1624);border-radius:18px;box-shadow:0 12px 30px #02060d40}.skill-card{padding:17px}.skill-card.danger{border-color:#683641}.skill-card.danger .bar i{background:linear-gradient(90deg,#f97376,#fb923c)}.skill-head,.skill-foot,.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.skill-head span{font-size:13px;color:#92a3ba}.skill-head b{font-size:18px}.bar,.bigbar{height:7px;background:#172638;border-radius:999px;overflow:hidden;margin:13px 0 9px}.bar i,.bigbar i{display:block;height:100%;background:linear-gradient(90deg,#34d399,#22d3ee);border-radius:inherit}.skill-foot{font-size:11px;color:#71839b}.grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.8fr);gap:18px}.panel{padding:18px}.panel-title{margin-bottom:14px;color:#a8bad0}.panel-title>div{display:flex;align-items:center;gap:9px}.panel-title b{color:#e7eef8}.task{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #18283a}.task:first-of-type{border-top:0}.check{width:29px;height:29px;border:0;background:transparent;padding:0;color:#3ed4ad;cursor:pointer}.check span{width:22px;height:22px;border:1px solid #3b4b60;border-radius:7px;display:block}.task-main{flex:1}.task-main b,.task-main small{display:block}.task-main small,.muted,.wrong small{color:#8496ae;font-size:13px;line-height:1.55}.metric small{color:#57dcb8}.counter{display:flex;align-items:center;gap:8px}.counter button{width:28px;height:28px;border-radius:8px;border:1px solid #263a51;background:#0a1522;color:#b9c7d8;cursor:pointer}.counter strong{font-size:13px;min-width:50px;text-align:center}.side-stack,.cards{display:grid;gap:18px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.bigbar{height:10px}.pill,.risk{font-size:10px;border-radius:999px;padding:4px 8px}.pill{color:#63e6be;border:1px solid #235f50;background:#0d2c25}.risk{color:#ffb083;border:1px solid #74432c;background:#301e15}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(460px,100%);padding:28px;border:1px solid #263950;background:#0a1727e8;border-radius:24px;box-shadow:0 30px 90px #0007}.auth-card h1{font-size:30px;margin:28px 0 10px}.auth-card p{color:#8fa1b9;line-height:1.6}.auth-card input,.form input,.form textarea,.form select,.inline-form input,.inline-form select,.filters select{width:100%;border:1px solid #2d4057;background:#07111d;color:#e9f1fa;padding:12px 14px;border-radius:10px;outline:none}.auth-card input{margin-top:12px}.auth-actions,.row{display:flex;gap:10px;margin-top:14px}button{border:0;background:linear-gradient(135deg,#34d399,#22d3ee);color:#05211d;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}button:disabled{opacity:.5;cursor:wait}.ghost{background:#0a1725;color:#bdcad9;border:1px solid #2d4159}.message{margin-top:12px;color:#ffcf80;font-size:13px}.empty{padding:28px 4px;color:#8092aa}.form{max-width:780px}.practice-tabs{display:flex;gap:9px;margin-bottom:18px}.practice-tabs button.active{box-shadow:0 0 0 2px #34d39933}.manual-practice{margin-top:0}.ro-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:18px;align-items:start}.ro-sidebar{padding:14px;position:sticky;top:94px}.ro-bank-count{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.ro-bank-count span{color:#7f91aa;font-size:12px}.ro-sidebar input,.ro-bank-empty input{width:100%;border:1px solid #2d4057;background:#07111d;color:#e9f1fa;padding:10px 12px;border-radius:10px;outline:none}.ro-question-list{display:grid;gap:5px;max-height:calc(100vh - 220px);overflow-y:auto;margin-top:10px;padding-right:3px}.ro-question-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:9px;color:#aebed2;background:transparent;text-align:left}.ro-question-list button:hover,.ro-question-list button.active{color:#eef7ff;background:#14283b}.ro-question-list button>span{color:#5cddbc;font-size:11px}.ro-question-list button b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ro-question-list button svg{color:#50ddb9}.ro-workspace{min-width:0}.ro-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.ro-heading h2{margin:12px 0 6px;font-size:26px}.ro-heading p{margin:0;color:#8799b0;font-size:13px}.shuffle-button{display:flex;align-items:center;gap:7px;white-space:nowrap}.ro-statements{display:grid;gap:10px}.ro-statement{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 12px;border:1px solid #2b4058;border-radius:13px;background:#091727;transition:border-color .12s,opacity .12s,transform .12s}.ro-statement:hover{border-color:#3e617d}.ro-statement.dragging{opacity:.45;transform:scale(.99)}.drag-handle{color:#60758f;cursor:grab}.order-number{display:grid;width:27px;height:27px;place-items:center;border-radius:8px;background:#193049;color:#6ce3c4;font-weight:800;font-size:12px}.ro-statement p{margin:0;color:#dce6f3;line-height:1.55}.move-buttons{display:grid;gap:4px}.move-buttons button{min-width:32px;padding:4px 8px;border:1px solid #304961;color:#aebfd2;background:#0c1a2a}.move-buttons button:disabled{cursor:default;opacity:.25}.ro-submit{width:100%;margin-top:18px;padding:13px}.ro-feedback{margin-top:18px;padding:18px;border:1px solid #315069;border-radius:14px;background:#07131f}.ro-feedback.correct{border-color:#25735e}.ro-feedback.incorrect{border-color:#7d4d40}.ro-score{display:flex;align-items:center;gap:11px}.ro-score svg{color:#51dfba}.ro-score strong,.ro-score span{display:block}.ro-score strong{font-size:20px}.ro-score span{margin-top:3px;color:#8ea1b8;font-size:12px}.ro-feedback h3{margin:20px 0 9px;font-size:14px}.ro-feedback ol{margin:0;padding-left:23px;color:#cbd8e7}.ro-feedback li{padding:5px 0;line-height:1.5}.ro-explanation{color:#9fafc3;line-height:1.65}.ro-explanation p{white-space:pre-wrap}.ro-bank-empty{max-width:560px}.weekly-bank{display:grid;gap:16px}.weekly-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 240px 220px;align-items:center;gap:12px}.weekly-toolbar b,.weekly-toolbar span{display:block}.weekly-toolbar span{margin-top:4px;color:#71839b;font-size:12px}.weekly-toolbar input,.weekly-toolbar select{width:100%;padding:11px 12px;border:1px solid #2d4057;border-radius:10px;background:#07111d;color:#e9f1fa}.weekly-layout{display:grid;grid-template-columns:270px minmax(0,1fr);align-items:start;gap:16px}.weekly-list{display:grid;gap:5px;max-height:720px;overflow-y:auto;padding:14px}.weekly-list-title{display:flex;justify-content:space-between;padding:4px 5px 9px}.weekly-list-title span{color:#71839b;font-size:12px}.weekly-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:9px;background:transparent;color:#aebed2;text-align:left}.weekly-list button:hover,.weekly-list button.active{background:#14283b;color:#eef7ff}.weekly-list button>span{color:#3ed4ad;font-size:11px}.weekly-list button b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.weekly-list button svg{color:#3ed4ad}.weekly-question-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.weekly-question-head h2{margin:12px 0 0;font-size:26px}.resource-badge{padding:7px 10px;border-radius:999px;background:#18283a;color:#a8bad0;white-space:nowrap;font-size:11px;font-weight:800}.resource-badge.ready{background:#0d2c25;color:#63e6be}.resource-badge.needs_audio,.resource-badge.needs_image,.resource-badge.incomplete{background:#301e15;color:#ffb083}.resource-notice{margin-top:18px;padding:12px 14px;border:1px solid #74432c;border-radius:11px;background:#301e15;color:#ffcf9d;font-size:13px}.weekly-content{margin-top:20px}.weekly-content h3{font-size:13px;color:#8291a8}.weekly-content p{max-height:460px;overflow-y:auto;margin:0;padding:16px;border:1px solid #263a51;border-radius:12px;background:#091727;color:#dce6f3;line-height:1.7;white-space:pre-wrap}.weekly-answer{display:block;margin-top:18px;color:#8291a8;font-size:13px}.weekly-answer textarea{display:block;width:100%;min-height:220px;margin-top:8px;padding:14px;resize:vertical;border:1px solid #2d4057;border-radius:12px;background:#07111d;color:#e9f1fa}.weekly-actions{display:flex;gap:9px;margin-top:18px}.form label{display:block;color:#a8b7ca;font-size:13px;margin-bottom:16px}.form textarea{min-height:90px;resize:vertical;margin-top:7px}.form select{margin-top:7px}.result{white-space:pre-wrap;background:#050d17;color:#a9eccc;padding:14px;border-radius:10px;overflow:auto}.filters{display:flex;gap:10px;margin-bottom:18px}.filters select{width:auto;min-width:150px}.wrong p{min-height:42px}.inline-form{display:grid;grid-template-columns:1.2fr 1.5fr repeat(5,1fr) auto;gap:8px;margin-bottom:18px}.table{border:1px solid #20324a;border-radius:16px;overflow:hidden}.tr{display:grid;grid-template-columns:1.1fr 1.5fr .8fr 1.4fr;gap:12px;padding:14px;background:#0a1624;border-top:1px solid #20324a}.tr:first-child{border-top:0}.th{font-size:12px;color:#8291a8;background:#0d1b2b}.chart-grid{height:260px;display:grid;grid-template-columns:repeat(7,1fr);gap:14px;border-bottom:1px solid #314056;padding:20px 10px 0}.daycol{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px}.bars{display:flex;align-items:end;justify-content:center;gap:4px;width:100%;height:210px}.bars i{width:18%;min-height:2px;border-radius:5px 5px 0 0;background:#34d399}.bars i:nth-child(2){background:#22d3ee}.bars i:nth-child(3){background:#a78bfa}.daycol small{color:#7889a0}.legend{display:flex;gap:22px;justify-content:center;margin-top:16px;color:#8da0b8;font-size:12px}.legend span:before{content:"■";color:#34d399;margin-right:5px}.legend span:nth-child(2):before{color:#22d3ee}.legend span:nth-child(3):before{color:#a78bfa}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.stat small,.stat strong{display:block}.settings-panel{margin-top:18px;display:grid;gap:16px;max-width:680px}.settings-panel label{color:#a8b7ca;font-size:13px}.settings-panel input{display:block;width:160px;margin-top:7px;border:1px solid #2d4057;background:#07111d;color:#e9f1fa;padding:12px 14px;border-radius:10px}.quick-days{display:flex;gap:8px;flex-wrap:wrap}.reset-button{justify-self:start}.success-message{color:#73e7c3;font-size:13px}.material-upload{margin-bottom:18px}.material-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.material-form label{color:#a8b7ca;font-size:12px}.material-form input,.material-form select{display:block;width:100%;margin-top:7px;border:1px solid #2d4057;background:#07111d;color:#e9f1fa;padding:11px 12px;border-radius:10px}.dropzone{position:relative;display:grid;gap:5px;margin:4px 0 14px;padding:24px;border:1px dashed #36516f;border-radius:14px;background:#081522;color:#dce7f5;cursor:pointer}.dropzone input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.dropzone span,.material-card small{color:#8295ad;font-size:12px}.material-list{display:grid;gap:10px;margin-bottom:26px}.material-card{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left;color:#dce7f5;background:linear-gradient(180deg,#0d1b2b,#0a1624)}.material-card>span:nth-child(2),.material-card b,.material-card small{display:block}.material-card small{margin-top:5px}.section-title{margin:0 0 14px;font-size:20px}.sync-score{color:#62e1bd;font-size:13px}.stat small{color:#8291a8}.stat strong{font-size:28px;margin-top:8px}@media(max-width:1000px){nav{position:absolute;top:70px;left:10px;right:10px;display:none;grid-template-columns:repeat(2,1fr);padding:10px;background:#081321;border:1px solid #24364c;border-radius:14px}nav.open{display:grid}.menu-btn{display:flex}header>.icon-btn{margin-left:0}.inline-form,.material-form{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.skills{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.readiness{width:100%}.hero h1,.page-head h1{font-size:34px}.cards,.ro-layout,.weekly-toolbar,.weekly-layout{grid-template-columns:1fr}.weekly-list{display:flex;max-height:none;overflow-x:auto}.weekly-list-title{min-width:90px;align-items:center}.weekly-list button{min-width:210px}.ro-sidebar{position:static}.ro-question-list{display:flex;max-height:none;overflow-x:auto}.ro-question-list button{min-width:210px}}@media(max-width:520px){main{padding:24px 14px 50px}.skills{grid-template-columns:1fr;gap:10px}.task{align-items:flex-start;flex-wrap:wrap}.task-main{min-width:150px}.counter{margin-left:40px}.inline-form,.stats-row,.material-form{grid-template-columns:1fr}.tr{grid-template-columns:1fr 1fr}.th{display:none}.chart-grid{gap:4px}.filters{flex-direction:column}.filters select{width:100%}header{padding:10px 14px}.brand span{display:none}.ro-heading{flex-direction:column}.practice-tabs{overflow-x:auto}.practice-tabs button{white-space:nowrap}.weekly-question-head{flex-direction:column}.ro-statement{grid-template-columns:auto minmax(0,1fr) auto}.drag-handle{display:none}.ro-statement p{font-size:14px}}:root{color:#183044;background:#f4f8fb}body{background:radial-gradient(circle at 8% 0%,#dff8f0 0,transparent 30%),radial-gradient(circle at 100% 18%,#e4f2ff 0,transparent 28%),#f4f8fb}header{border-bottom-color:#d9e5ec;background:#fffffff0;box-shadow:0 5px 22px #52708612}.brand span,nav button{color:#6d7f8f}nav button.active,nav button:hover{background:#e8f4f3;color:#163f45}.icon-btn,.menu-btn{border-color:#cfdee7;background:#fff;color:#587083}.hero p,.page-head p,.muted,.task-main small,.wrong small{color:#6e8192}.readiness,.skill-card,.panel{border-color:#d7e4eb;background:linear-gradient(180deg,#fff,#fbfdfe);box-shadow:0 12px 32px #43647b12}.skill-card.danger{border-color:#f2c6bd}.skill-head span,.skill-foot,.panel-title,.weekly-content h3,.weekly-answer,.form label,.material-form label,.settings-panel label{color:#6f8292}.panel-title b,.material-card,.dropzone,.ro-statement p,.weekly-content p{color:#20384a}.bar,.bigbar{background:#e6eef3}.task{border-top-color:#e4edf2}.check span,.table,.tr,.chart-grid{border-color:#d8e4eb}.counter button,.move-buttons button{border-color:#d2e0e7;background:#f5f9fb;color:#496274}.auth-card{border-color:#d5e3eb;background:#fffe;box-shadow:0 30px 90px #46647c24}.auth-card p{color:#6d8192}.auth-card input,.form input,.form textarea,.form select,.inline-form input,.inline-form select,.filters select,.settings-panel input,.material-form input,.material-form select,.weekly-toolbar input,.weekly-toolbar select,.weekly-answer textarea,.ro-sidebar input,.ro-bank-empty input{border-color:#cedee7;background:#fff;color:#1b3548}.ghost{border-color:#cadbe4;background:#f7fafc;color:#385468}.result{background:#eef8f5;color:#17624f}.tr{background:#fff}.th{background:#eef4f7;color:#647889}.dropzone{border-color:#9dbfc5;background:#f2faf8}.material-card{background:linear-gradient(180deg,#fff,#f7fbfc)}.ro-question-list button,.weekly-list button{color:#50697a}.ro-question-list button:hover,.ro-question-list button.active,.weekly-list button:hover,.weekly-list button.active{background:#e8f5f2;color:#183f46}.ro-statement{border-color:#d3e2e9;background:#fff}.ro-statement:hover{border-color:#82b8b3}.order-number{background:#e1f4ef;color:#14705b}.ro-feedback{border-color:#bfd8d2;background:#f7fcfa}.ro-feedback ol,.ro-explanation{color:#40596b}.weekly-content p{border-color:#d5e3ea;background:#f8fbfd}.resource-badge{background:#edf2f5;color:#5e7281}.resource-badge.ready,.pill{border-color:#a8d9cd;background:#e4f7f1;color:#13705a}.resource-badge.needs_audio,.resource-badge.needs_image,.resource-badge.incomplete,.risk,.resource-notice{border-color:#edcaa9;background:#fff5e9;color:#9a5523}.alert{border-color:#efb8b8;background:#fff0f0;color:#a63838}@media(max-width:1000px){nav{border-color:#d5e3ea;background:#fff}}
