:root{--bg:#100e0d;--card:rgba(26,21,20,.91);--line:rgba(255,140,44,.42);--text:#f8f4f1;--muted:#b9aaa3;--orange:#ff7919;--gold:#ffbe55;--shadow:0 0 28px rgba(255,98,8,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;min-height:100vh}body.light{--bg:#f9f1e9;--card:rgba(255,249,242,.93);--line:rgba(220,98,24,.38);--text:#29180e;--muted:#765c4d;--shadow:0 5px 28px rgba(191,80,16,.12)}.bg-glow{position:fixed;inset:0;z-index:-3;background:radial-gradient(ellipse at 70% 6%,rgba(187,55,8,.17),transparent 45%),radial-gradient(ellipse at 85% 85%,rgba(219,85,14,.10),transparent 50%),linear-gradient(145deg,#100f11,#180e0b 65%,#090b0d)}body.light .bg-glow{background:linear-gradient(135deg,#f9ede1,#fdfaf6)}.sidebar{position:fixed;z-index:15;top:18px;bottom:18px;left:14px;width:86px;border:1px solid var(--line);background:rgba(19,15,15,.87);backdrop-filter:blur(25px);border-radius:24px;display:flex;flex-direction:column;align-items:center;gap:30px;padding:18px 8px;transition:width .3s;box-shadow:var(--shadow)}.sidebar:hover{width:195px;align-items:stretch}.leaf{font-size:36px;text-align:center;filter:drop-shadow(0 0 12px #ff831a)}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar button{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:10px;border:0;border-radius:13px;background:none;color:#eee0d8;padding:12px 18px;font-size:19px;cursor:pointer;white-space:nowrap}.sidebar button span{font-size:13px;display:none}.sidebar:hover button span{display:inline}.sidebar button:hover,.sidebar button.active{background:linear-gradient(90deg,#ed5d0b,#7c2b13);box-shadow:0 0 18px #fb670866}.sidebar-foot{margin-top:auto;font-size:10px;color:#ffc07d;white-space:nowrap}.sidebar-foot small{display:none}.sidebar:hover .sidebar-foot small{display:block}.hero-art{position:fixed;z-index:-1;left:100px;top:0;bottom:0;width:30vw;max-width:450px;background:url('assets/naruto-hero.webp') center top/cover no-repeat;opacity:.9;mask-image:linear-gradient(to right,#000 35%,transparent 100%)}.shell{margin-left:clamp(270px,29vw,470px);padding:20px 34px 25px 12px;max-width:1800px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:28px;min-height:100px}.wordmark{display:flex;align-items:center;gap:12px}.leafmark{font-size:32px}.brand{font-size:clamp(28px,3.4vw,55px);font-weight:900;font-style:italic;letter-spacing:-2px;text-shadow:0 0 16px #ff5e094d;white-space:nowrap}.brand em{color:var(--orange)}.subbrand{text-align:center;font-size:10px;letter-spacing:8px;font-weight:700}.top-actions{display:flex;align-items:center;gap:12px}.save-status{font-size:11px;color:#a9e3a1;white-space:nowrap}.iconbtn{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:50%;padding:10px;cursor:pointer}.userbadge{display:flex;align-items:center;gap:9px;font-size:12px;white-space:nowrap}.userbadge img{height:44px;width:44px;object-fit:cover;border-radius:50%;border:2px solid var(--orange)}.userbadge small{display:block;color:var(--muted);margin-top:4px}.page{display:none}.page.active{display:block}.welcome{margin-bottom:22px}.welcome h1{font-size:clamp(23px,2.6vw,35px);margin:5px 0}.welcome h1 span{color:var(--orange)}.welcome p,.page-head p{color:var(--muted);margin:7px 0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:3px;color:var(--gold)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.08);position:relative;overflow:hidden;min-width:0}.panel:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.035),transparent 45%)}.panel:hover{border-color:#ff9e52;box-shadow:0 0 32px #ff771a28}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel h2{font-size:17px;margin:0}.panel h3{font-size:23px;margin:8px 0}.muted{color:var(--muted)}.small{font-size:11px}.chip,.textlink{border:1px solid var(--line);background:rgba(255,121,25,.11);color:var(--text);border-radius:20px;padding:7px 12px;font-size:11px;cursor:pointer}.textlink{border:0;background:none;color:var(--gold)}button{font-family:inherit;cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.ring-wrap{width:min(260px,100%);aspect-ratio:1;margin:12px auto 16px;position:relative}.ring{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.ring circle{fill:none;stroke-width:8}.ring .track{stroke:rgba(255,143,67,.16)}.ring .fill{stroke:#ff841b;stroke-linecap:round;stroke-dasharray:590.619;stroke-dashoffset:0;filter:drop-shadow(0 0 5px #ff6d00);transition:stroke-dashoffset .3s linear}.ring-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none}.ring-center strong{font-size:clamp(30px,4vw,48px);letter-spacing:-1px}.ring-center span{font-size:11px;letter-spacing:1px;color:var(--muted)}.controls{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:16px 0}.controls button,.task-form button,.import-label{background:linear-gradient(180deg,#3b2b26,#1b1513);color:white;border:1px solid #76513d;padding:11px 16px;border-radius:12px;font-weight:700;font-size:12px}.controls .primary,.primary,.task-form .primary{background:linear-gradient(180deg,#ff9c30,#d94a04)!important;color:white!important;border:1px solid #ffad57!important;box-shadow:0 0 15px #ff701a52}.timer-inputs{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.timer-inputs label{font-size:12px;color:var(--muted)}input{color:var(--text);background:rgba(103,66,41,.19);border:1px solid var(--line);border-radius:10px;padding:11px 12px;min-width:0}input::placeholder{color:#a58f81}.timer-inputs input{width:65px;padding:7px;text-align:center}.ramen-panel{background:radial-gradient(ellipse at 50% 50%,rgba(194,66,14,.24),transparent 70%),var(--card)}.level-pill{padding:6px 13px;background:#8e380d;border:1px solid #fa872e;border-radius:15px;color:white;font-size:12px;font-weight:800}.ramen-illustration{text-align:center;min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center}.ramen-steam{color:#e8bda3;opacity:.6;animation:float 4s ease-in-out infinite}.ramen-ingredients{font-size:75px;line-height:1.4;filter:drop-shadow(0 0 18px #f57117a8);animation:float 5s ease-in-out infinite}.ramen-caption{font-size:13px;color:var(--gold);font-weight:800}.ramen-panel p{font-size:12px}.xp-head{display:flex;justify-content:space-between;margin-top:15px;font-size:12px}.meter{height:10px;background:#4a3329;border-radius:15px;overflow:hidden;margin:10px 0}.meter>div{height:100%;width:0;background:linear-gradient(90deg,#ff6a00,#ffd078);border-radius:inherit;transition:width .4s}.ingredient-list{display:flex;gap:6px;flex-wrap:wrap}.ingredient{padding:7px;background:rgba(255,115,30,.12);border:1px solid var(--line);border-radius:9px;font-size:20px}.ingredient.locked{filter:grayscale(1);opacity:.35}.countdown-panel,.next-panel{min-height:175px}.count-blocks{display:flex;gap:8px;flex-wrap:wrap}.count-block{background:rgba(240,99,13,.14);border:1px solid var(--line);border-radius:10px;min-width:64px;padding:10px;text-align:center}.count-block strong{display:block;font-size:24px}.count-block span{font-size:10px;color:var(--muted)}.sunset{position:absolute;right:22px;bottom:0;font-size:72px;opacity:.2;color:var(--orange)}.big-orange{color:var(--gold);font-size:22px;font-weight:800}.task-form{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap}.task-form input:first-child{flex:1;min-width:140px}.task-form input[type=number]{width:80px}.task-list{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto}.task-row{display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;background:rgba(100,76,61,.18)}.task-row input{accent-color:#ff7d1e;width:17px;height:17px}.task-row .task-name{flex:1;overflow-wrap:anywhere;font-size:13px}.task-row.done .task-name{text-decoration:line-through;opacity:.5}.task-row small{color:var(--muted);white-space:nowrap}.task-row button{border:0;background:none;color:#d4a89a;font-size:18px}.chart{height:190px;display:flex;align-items:end;justify-content:space-around;gap:8px;padding:15px 0 0}.chart-day{flex:1;display:flex;align-items:center;flex-direction:column;justify-content:end;height:100%;gap:6px}.chart-bar{width:70%;max-width:45px;min-height:3px;background:linear-gradient(#ffb14e,#f35b08);border-radius:7px 7px 2px 2px;box-shadow:0 0 15px #fa680c33}.chart-day span{font-size:10px;color:var(--muted)}.stat-pills{display:flex;gap:8px;margin-top:12px}.stat-pills>div{flex:1;background:rgba(255,122,35,.08);border:1px solid var(--line);padding:10px;border-radius:10px;text-align:center}.stat-pills strong{display:block}.stat-pills span{font-size:10px;color:var(--muted)}.page-head{margin:18px 0 25px}.page-head h1{font-size:35px;margin:6px 0}.wide{max-width:1100px}.exam-grid,.progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.exam-card h2{margin:0 0 7px}.exam-count{font-size:22px;color:var(--gold);font-weight:800;margin:14px 0}.exam-card input{max-width:100%;font-size:12px}.exam-card.passed{opacity:.62}.video-frame{aspect-ratio:16/9;background:#0c0909;border:1px solid var(--line);border-radius:16px;overflow:hidden;display:grid;place-items:center}.video-frame iframe{width:100%;height:100%;border:0}.video-placeholder{color:var(--muted)}.settings p{color:var(--muted)}.green{color:#99d991;font-size:13px}.danger{background:#651d1d!important;border-color:#ad3b3b!important}.import-label{cursor:pointer}.fullscreen{position:fixed;inset:0;z-index:100;background:radial-gradient(ellipse at center,#391b0f,#0d0c10 70%);display:flex;align-items:center;justify-content:center;text-align:center;padding:30px}.fullscreen[hidden]{display:none}.exit{position:absolute;right:30px;top:24px;background:rgba(255,130,30,.16);border:1px solid var(--line);color:white;border-radius:14px;padding:12px 20px}.fullscreen-content h1{font-size:clamp(25px,4vw,45px)}.full-ring{width:min(390px,70vh,75vw)}.full-ring .ring-center strong{font-size:clamp(45px,6vw,70px)}footer{text-align:center;font-size:10px;letter-spacing:2px;color:var(--muted);padding:35px 0}@keyframes float{50%{transform:translateY(-7px)}}@media(max-width:1250px){.shell{margin-left:270px;padding-right:18px}.hero-art{width:280px}.topbar{flex-wrap:wrap}.brand{font-size:30px}}@media(max-width:850px){.sidebar{top:auto;bottom:8px;left:8px;right:8px;width:auto;height:66px;flex-direction:row;justify-content:center;padding:5px 8px;border-radius:18px}.sidebar:hover{width:auto;align-items:center}.sidebar .leaf,.sidebar-foot{display:none}.sidebar nav{width:100%;flex-direction:row;justify-content:space-around;gap:1px}.sidebar button{width:auto;padding:12px;font-size:19px}.sidebar button span,.sidebar:hover button span{display:none}.hero-art{left:0;width:100%;max-width:none;height:400px;bottom:auto;opacity:.22;mask-image:linear-gradient(#000,transparent)}.shell{margin-left:0;padding:15px 16px 90px}.topbar{min-height:75px}.dashboard-grid{gap:12px}.panel{padding:15px}}@media(max-width:620px){.dashboard-grid,.exam-grid,.progress-grid{grid-template-columns:1fr}.brand{font-size:25px}.subbrand{font-size:8px;letter-spacing:4px}.top-actions{gap:6px}.save-status{display:none}.userbadge span{display:none}.userbadge img{width:37px;height:37px}.page-head h1{font-size:27px}.count-block{min-width:60px}.panel{border-radius:17px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
