:root{--bg: #fffaf4;--ink: #1f2b3a;--muted:#6a7b8a;--line:#e9eef3;--card:#ffffff;--primary:#7C83FF;--accent:#7FE3E3;--pink:#FFB8C6;--yellow:#FFD873;--shadow: 0 14px 30px rgba(31,43,58,.1);--radius: 18px}.avatar-placeholder{position:relative;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--primary));display:flex;align-items:center;justify-content:center;overflow:hidden;border:3px solid var(--card);box-shadow:var(--shadow)}.avatar-placeholder .avatar-icon{font-size:24px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.avatar-upload-btn{position:absolute;bottom:-2px;right:-2px;width:24px;height:24px;border-radius:50%;background:var(--primary);border:2px solid var(--card);display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #00000026}.avatar-upload-btn:hover{transform:scale(1.1);background:var(--accent)}.avatar-upload-btn:active{transform:scale(.95)}.user .avatar{width:50px;height:50px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid var(--line);box-shadow:var(--shadow)}.user-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--primary));display:flex;align-items:center;justify-content:center;overflow:hidden;border:2px solid var(--line);box-shadow:var(--shadow)}.user-avatar .avatar-face{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;background-repeat:no-repeat}.recommendation-btn.quiz-btn{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff;border:none;box-shadow:0 4px 15px #ff6b6b4d}.recommendation-btn.quiz-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66}.recommendation-btn.quiz-btn .btn-icon{font-size:1.2em}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}h1,h2,h3,p{margin:0}h2{font-size:1.15rem}button{font:inherit}.app{position:relative;display:grid;grid-template-columns:15% 1fr;gap:16px;min-height:100dvh;padding:16px;max-width:none;width:100%}.side{position:sticky;top:16px;align-self:start;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:14px;box-shadow:var(--shadow);width:100%;min-width:200px;max-width:300px;overflow:hidden}.brand{display:flex;align-items:center;gap:10px;margin-bottom:12px}.brand .logo{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:20px;background:linear-gradient(135deg,var(--accent),#bff8f0)}.brand span{font-weight:900;letter-spacing:.3px}.nav{display:grid;gap:6px;margin:10px 0 14px}.nav-item{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px 12px;cursor:pointer}.nav-item.is-active{box-shadow:inset 0 0 0 2px #7c83ff40;background:linear-gradient(180deg,#fff,#f7f9ff)}.helper{font-size:.9rem;color:#35505f;background:#f0fcff;border:1px dashed #c7ecf1;border-radius:14px;padding:10px}.currency-icon{width:20px;height:20px;-o-object-fit:contain;object-fit:contain;vertical-align:middle;margin:0 2px}.robux-large{width:96px;height:96px;-o-object-fit:contain;object-fit:contain}.robux-card-icon{width:60px;height:60px;-o-object-fit:contain;object-fit:contain;margin-bottom:12px}.nav-icon{width:22px;height:22px;-o-object-fit:contain;object-fit:contain;vertical-align:middle;display:inline-block}.main{position:relative;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:var(--shadow);overflow:hidden;width:100%;max-width:none}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;flex-wrap:wrap}.user{display:flex;align-items:center;gap:12px}.avatar{width:54px;height:54px;border-radius:50%;border:3px solid #fff;box-shadow:0 6px 18px #00000014}.subtitle{color:var(--muted);font-size:.95rem;margin-top:2px}.wave{display:inline-block;transform-origin:70% 70%;animation:wave 2.4s ease-in-out infinite}@keyframes wave{0%{transform:rotate(0)}15%{transform:rotate(14deg)}30%{transform:rotate(-8deg)}45%{transform:rotate(12deg)}60%{transform:rotate(-4deg)}to{transform:rotate(0)}}.hero-stats{display:flex;flex-wrap:wrap;gap:8px}.top-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.pill{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;box-shadow:0 8px 18px #0000000f;font-weight:900}.pill.streak{background:linear-gradient(135deg,#ffeec9,#ffd5d5)}.seg{display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 12px #0000000f}.seg-btn{border:0;background:transparent;padding:8px 14px;font-weight:900;cursor:pointer;transition:all .2s ease;color:var(--muted)}.seg-btn.is-active{background:linear-gradient(135deg,#f3f6ff,#fff);box-shadow:inset 0 0 0 2px #7c83ff40;color:var(--ink)}.seg-btn:hover:not(.is-active){background:#f9fafb}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0 6px}@media (max-width: 1200px){.summary{grid-template-columns:repeat(2,1fr)}}.card{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);overflow:hidden;isolation:isolate}.card:after{content:"";position:absolute;inset:auto -20% 0 -20%;height:38%;background:radial-gradient(closest-side,rgba(127,227,227,.35),transparent 65%);filter:blur(18px);z-index:-1}.card .icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:linear-gradient(135deg,#e9e6ff,#fff)}.card h3{font-size:1rem}.card p{color:var(--muted);font-size:.9rem}.card .big{font-weight:900;font-size:1.4rem}.section{margin-top:10px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.tabs{display:flex;gap:6px}.tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;font-weight:800;color:#355a64;cursor:pointer}.tab.is-active{box-shadow:inset 0 0 0 2px #7c83ff40}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.subject{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow);display:grid;gap:8px;position:relative}.subject .head{display:flex;align-items:center;justify-content:space-between}.subject-title{display:flex;align-items:center;gap:8px}.subject .badge{padding:6px 8px;border-radius:999px;background:#f4f6ff;border:1px solid #e3e8ff;font-weight:900}.subject .progress{height:10px;background:#f2f5f8;border-radius:999px;overflow:hidden}.subject .bar{height:100%;width:0;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:inherit;transition:width .6s cubic-bezier(.2,.8,.2,1)}.subject .meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.9rem}.subject .cta{display:flex;gap:8px}.subject .btn{border:0;border-radius:12px;padding:10px 12px;font-weight:900;cursor:pointer}.subject-icon{width:24px;height:24px;border-radius:6px;flex-shrink:0}.achievements{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(160px,1fr);gap:10px;overflow:auto;padding-bottom:6px}.badge-card{min-width:160px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:var(--shadow);text-align:center}.badge-card .emoji{font-size:28px}.badge-card h4{margin-top:6px;font-size:.98rem}.badge-card p{color:var(--muted);font-size:.88rem}.milestone{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow);text-align:center;min-width:180px;transition:transform .2s ease,box-shadow .2s ease}.milestone:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.milestone .emoji{font-size:32px;margin-bottom:8px;display:block}.milestone h4{font-size:1rem;margin-bottom:4px;font-weight:700}.milestone p{color:#6a7b8a;font-size:.88rem;line-height:1.4}.activity{display:grid;gap:8px;list-style:none;padding:0;margin:0}.activity li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;justify-content:space-between;align-items:center}.activity li span{color:var(--muted)}.foot{margin-top:10px;color:#7a8c98;text-align:center}.avatar-placeholder{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#f3f6ff,#fff);border:3px solid var(--line);box-shadow:0 6px 18px #00000014;position:relative;display:flex;align-items:center;justify-content:center;overflow:visible}.avatar-icon{font-size:32px}.avatar-upload-btn{position:absolute;bottom:-4px;right:-4px;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));border:2px solid #fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:0 4px 12px #00000026;transition:transform .2s ease}.avatar-upload-btn:hover{transform:scale(1.1)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.col-span-2{grid-column:span 2}.field{display:grid;gap:8px}.field label{font-weight:800;font-size:.95rem}input[type=text],input[type=number],textarea,select{border:1px solid var(--line);border-radius:14px;padding:10px 12px;font-size:1rem;outline:none;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #7c83ff33}textarea{resize:vertical;font-family:inherit}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236a7b8a' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.stepper{display:flex;align-items:center;gap:10px}.stepper input{flex:1;text-align:center;font-weight:800}.step{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 12px;font-weight:900;cursor:pointer;font-size:18px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.step:hover{background:linear-gradient(135deg,#f3f6ff,#fff);border-color:var(--primary)}.switch{position:relative;display:inline-block;width:48px;height:28px;flex-shrink:0}.switch input{display:none}.switch i{position:absolute;top:0;right:0;bottom:0;left:0;background:#e8eff4;border:1px solid var(--line);border-radius:999px;transition:.25s;cursor:pointer}.switch i:after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #0000001f;transition:.25s}.switch input:checked+i{background:linear-gradient(135deg,var(--primary),var(--accent))}.switch input:checked+i:after{transform:translate(20px)}.themes{display:flex;gap:10px;margin:8px 0 16px;flex-wrap:wrap}.chip{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer;transition:all .2s ease}.chip.is-active{box-shadow:inset 0 0 0 2px #7c83ff40;background:linear-gradient(135deg,#f3f6ff,#fff)}.chip:hover:not(.is-active){background:#f9fafb;transform:translateY(-1px)}.swatch{--c1:#7FE3E3;--c2:#7C83FF;width:28px;height:20px;border-radius:8px;background:linear-gradient(135deg,var(--c1),var(--c2));border:1px solid rgba(0,0,0,.05);box-shadow:0 2px 6px #00000014}.card-title{font-weight:900;margin-bottom:12px;font-size:1.05rem}.actions{display:flex;gap:10px;flex-wrap:wrap}.hint{color:#6a7b8a;margin:6px 0 12px;font-size:.9rem;line-height:1.4}.row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 0;font-size:.95rem}.card.danger:after{background:radial-gradient(closest-side,rgba(255,204,204,.5),transparent 65%)}.toast{position:fixed;left:50%;bottom:20px;transform:translate(-50%) translateY(20px);background:#111111f2;color:#fff;padding:12px 18px;border-radius:14px;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600;font-size:.95rem;box-shadow:0 8px 24px #0000004d;z-index:1000;min-width:200px;text-align:center}.toast.show{animation:toastSlide .9s ease}@keyframes toastSlide{0%{opacity:0;transform:translate(-50%) translateY(20px)}15%,85%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(10px)}}@media (max-width:1100px){.grid-2{grid-template-columns:1fr}}@media (max-width:820px){.stepper{flex-wrap:wrap}.themes{flex-direction:column}.chip{justify-content:center}}.trend .spark-wrap{height:160px;width:100%;position:relative}.trend svg{width:100%;height:100%}.progress-legend{display:flex;gap:16px;align-items:center;color:#5b7a88;font-size:.92rem;margin-top:8px;font-weight:600}.progress-legend .dot{width:12px;height:12px;border-radius:50%;display:inline-block;margin-right:4px}.progress-legend .dot.blue{background:#7c83ff}.progress-legend .dot.mint{background:#39c6cc}.heat{max-height:320px;overflow:hidden}.heat .head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.heat .head h3{font-size:1rem;font-weight:700}.heat .head span{font-size:.8rem;color:var(--muted)}.heat-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:8px}.heat-grid .cell{aspect-ratio:1/1;border-radius:5px;background:#e9f6f7;border:1px solid #d9ecee;transition:transform .2s ease;min-height:32px}.heat-grid .cell[data-i]{background:var(--c,#e9f6f7)}.heat-grid .cell:hover{transform:scale(1.1);z-index:1;box-shadow:0 4px 12px #0000001a}.heat-legend{display:flex;align-items:center;gap:5px;color:#5b7a88;font-size:.8rem;justify-content:center;flex-wrap:wrap}.heat-legend .scale{display:flex;gap:2px;margin:0 3px}.heat-legend .scale i{width:14px;height:9px;border-radius:3px;background:var(--c);border:1px solid rgba(0,0,0,.05)}.grid.subjects .subject-card{padding:12px;gap:10px}.subject-card .ring{width:60px;height:60px}.subject-card .ring span{width:46px;height:46px;font-size:1.1rem}.subject-card .meta h3{font-size:1rem;margin-bottom:2px}.subject-card .meta p{font-size:.85rem;line-height:1.4}.subject-card .mini-spark{width:120px;height:36px}.subject-card .mini-spark path{fill:none;stroke-width:2.5}.blob{position:fixed;z-index:-1;filter:blur(8px);opacity:.35;pointer-events:none}.b1{left:-120px;top:-80px;width:320px;height:320px;border-radius:45% 55% 60% 40%;background:radial-gradient(#ffd0da,#ffc6f3)}.b2{right:-140px;top:-40px;width:360px;height:360px;border-radius:50% 50% 40% 60%;background:radial-gradient(#d3e4ff,#b6f8f0)}.b3{right:-100px;bottom:-120px;width:320px;height:320px;border-radius:60% 40% 55% 45%;background:radial-gradient(#ffe49c,#ffc7c7)}@media (max-width: 1400px){.grid{grid-template-columns:repeat(3,1fr)}.side{padding:12px}#progress-page .split{grid-template-columns:1fr}}@media (max-width: 1100px){.summary{grid-template-columns:1fr 1fr}.grid{grid-template-columns:repeat(2,1fr)}.side{padding:10px}.nav-item{padding:8px 10px}.brand .logo{width:32px;height:32px;font-size:16px}.brand span{font-size:.9rem}#progress-page .grid.subjects{grid-template-columns:1fr}}@media (max-width: 820px){.app{grid-template-columns:1fr;padding:12px}.side{position:static;margin-bottom:16px;min-width:auto;max-width:none;width:100%;padding:14px}#hidden-pages>section{grid-column:1}.nav{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:10px 0}.nav-item{padding:10px 8px;text-align:center;flex-direction:column;gap:4px}.nav-item span:first-child{font-size:18px}.nav-item span:last-child{font-size:.75rem}.brand{text-align:center;margin-bottom:16px}.helper{text-align:center;margin-top:16px}.summary,.grid{grid-template-columns:1fr}.top{flex-direction:column;align-items:flex-start}.top-actions{width:100%}.seg{width:100%;justify-content:stretch}.seg-btn{flex:1}#progress-page .side-col{position:static;max-height:none}.carousel{grid-auto-columns:minmax(150px,1fr)}}@media (min-width: 1200px){.app{width:90%;max-width:none;margin:0 auto;padding:20px;gap:20px;grid-template-columns:15% 1fr}.side{padding:16px}.grid{grid-template-columns:repeat(4,1fr)}.summary{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1600px){.app{width:88%;padding:24px;gap:24px;grid-template-columns:15% 1fr}.side{padding:18px}.grid{grid-template-columns:repeat(5,1fr)}.summary{grid-template-columns:repeat(3,1fr)}}@media (min-width: 2000px){.app{width:85%;padding:32px;gap:32px;grid-template-columns:15% 1fr}.side{padding:20px}.grid{grid-template-columns:repeat(6,1fr)}.summary{grid-template-columns:repeat(3,1fr)}}.week{display:flex;gap:10px;overflow:auto;padding-bottom:4px}.day{min-width:70px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow);display:grid;justify-items:center;gap:6px}.day .ring{width:42px;height:42px;border-radius:50%;background:conic-gradient(var(--primary) calc(var(--p,0)*1%),#eef2f7 0);display:grid;place-items:center}.day .ring span{background:#fff;border:1px solid var(--line);border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-weight:900}.day .label{font-size:.9rem}.day.today{outline:2px solid rgba(124,131,255,.25)}.split{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.side-col{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto;display:flex;flex-direction:column;gap:14px}#progress-page .split{grid-template-columns:minmax(0,1fr) 380px}#progress-page .side-col{max-height:calc(100vh - 60px);gap:16px}#progress-page .side-col .card{padding:16px}#progress-page .heat,#progress-page .tiny-stats{flex-shrink:0}@media (max-width: 1400px){#subjects-page .split{grid-template-columns:1fr}#subjects-page .side-col{order:-1}}.grid.subjects{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-height:280px;overflow-y:auto}.subject-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.subject-card .ring{width:58px;height:58px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--p,0)*1%),#eef2f7 0);display:grid;place-items:center}.subject-card .ring span{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--line);display:grid;place-items:center;font-weight:900}.subject-card .ring img{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.subject-card .meta h3{font-size:1rem}.subject-card .meta p{color:var(--muted);font-size:.9rem}.subject-card .cta{display:grid;gap:6px}.btn{border:0;border-radius:12px;padding:10px 12px;font-weight:900;cursor:pointer}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--accent))}.btn-ghost{background:#fff;border:1px solid var(--line)}.carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);gap:8px;overflow:auto;padding-bottom:4px;max-width:100%}.rec{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow);min-width:180px}.rec h3{font-size:.95rem;margin:4px 0}.rec .tag{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);background:#f7fbff;border-radius:999px;padding:6px 10px;font-weight:800;margin-bottom:8px}.rec .tag .rec-subject-icon{width:24px;height:24px;border-radius:50%;-o-object-fit:contain;object-fit:contain}.tasks{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:180px;overflow-y:auto}.tasks li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 10px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.9rem}.tasks li strong{font-size:.9rem}.tasks .when{color:#6a7b8a}.badge{padding:6px 10px;border-radius:999px;font-weight:900;background:#fff0dc;border:1px solid #ffe1b9;color:#7a4b00}.card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow);overflow:hidden}.card:after{content:"";position:absolute;inset:auto -20% 0 -20%;height:36%;background:radial-gradient(closest-side,rgba(127,227,227,.35),transparent 65%);filter:blur(18px);z-index:-1}.mini-cal{max-height:420px;overflow:hidden}.mini-cal .head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.95rem}.mini-cal h3{font-size:1.05rem;font-weight:700}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar .cday{aspect-ratio:1/1;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;background:#fff;font-weight:800;font-size:.95rem;min-height:32px}.cday.done{background:linear-gradient(135deg,#eafff8,#f5fffe)}.cday.planned{background:#fff7ea}.legend{display:flex;align-items:center;gap:12px;margin-top:10px;color:#55737f;font-size:.9rem}.legend .dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.legend .dot.done{background:#5ad0a2}.legend .dot.planned{background:#ffb45a}.tiny-stats{max-height:220px;overflow:hidden}.tiny-stats h3{margin-bottom:6px;font-size:1rem;font-weight:700}.tiny-stats ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.tiny-stats li{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px dashed #e3eef1;border-radius:10px;padding:8px 10px;font-size:.85rem}.tiny-stats li span{font-size:.85rem;line-height:1.3}.tiny-stats b{font-size:1.1rem;font-weight:800}#subjects-page .section{margin-top:8px;margin-bottom:8px}#subjects-page .section-head{margin-bottom:6px}#subjects-page .section-head h2{font-size:1.1rem}.grid.subjects::-webkit-scrollbar,.tasks::-webkit-scrollbar,.side-col::-webkit-scrollbar{width:6px}.grid.subjects::-webkit-scrollbar-track,.tasks::-webkit-scrollbar-track,.side-col::-webkit-scrollbar-track{background:#f2f5f8;border-radius:10px}.grid.subjects::-webkit-scrollbar-thumb,.tasks::-webkit-scrollbar-thumb,.side-col::-webkit-scrollbar-thumb{background:#c5cfd9;border-radius:10px}.grid.subjects::-webkit-scrollbar-thumb:hover,.tasks::-webkit-scrollbar-thumb:hover,.side-col::-webkit-scrollbar-thumb:hover{background:#a8b4c0}@media (max-width:1100px){#subjects-page .grid.subjects{grid-template-columns:1fr;max-height:none}#subjects-page .split{grid-template-columns:1fr}.side-col{position:static;max-height:none}}#subjects-page{width:100%;max-width:none}#subjects-page .split,#subjects-page .section,#subjects-page .top{width:100%}@media (min-width: 1200px){#subjects-page .grid.subjects{grid-template-columns:repeat(2,1fr);max-height:300px}#subjects-page .split{grid-template-columns:minmax(0,1fr) 360px}#progress-page .split{grid-template-columns:minmax(0,1fr) 380px}}@media (min-width: 1600px){#subjects-page .grid.subjects{grid-template-columns:repeat(2,1fr);max-height:320px}#subjects-page .split{grid-template-columns:minmax(0,1fr) 360px}#progress-page .split{grid-template-columns:minmax(0,1fr) 400px}}@media (min-width: 2000px){#subjects-page .grid.subjects{grid-template-columns:repeat(2,1fr);max-height:340px}#subjects-page .split{grid-template-columns:minmax(0,1fr) 360px}#progress-page .split{grid-template-columns:minmax(0,1fr) 420px}}#rewards-page .banner{background:linear-gradient(135deg,#7c83ff,#7fe3e3);color:#fff;margin-bottom:10px}#rewards-page .banner .badge{display:inline-block;background:#ffffff1a;border:1px solid #ffffff3a;color:#fff;border-radius:999px;padding:6px 10px;font-weight:900;font-size:.85rem}#rewards-page .banner .big-num{display:flex;align-items:center;gap:8px;margin:10px 0 6px}#rewards-page .banner .big-num b{font-size:1.6rem}#rewards-page .banner .hex{filter:drop-shadow(0 6px 12px #0002);font-size:1.4rem}#rewards-page .banner .muted{opacity:.9;font-size:.9rem}#rewards-page .banner .progress{display:flex;align-items:center;gap:10px;margin-top:10px}#rewards-page .banner .bar{flex:1;height:12px;background:#fff3;border-radius:999px;overflow:hidden}#rewards-page .banner .bar i{display:block;height:100%;background:#fff;border-radius:inherit;transition:width .3s ease}#rewards-page .banner .progress-note{white-space:nowrap;font-size:.9rem}#rewards-page .tabs{display:flex;gap:6px;flex-wrap:wrap}#rewards-page .tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;font-weight:800;color:#355a64;cursor:pointer;font-size:.9rem;transition:all .2s ease}#rewards-page .tab.is-active{box-shadow:inset 0 0 0 2px #7c83ff40}#rewards-page .tab:hover:not(.is-active){background:#f9fafb}#rewards-page .grid.rewards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}#rewards-page .reward{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow);display:grid;gap:8px;transition:all .2s ease}#rewards-page .reward:hover{transform:translateY(-2px);box-shadow:0 16px 36px #1f2b3a1f}#rewards-page .reward .head{display:flex;gap:8px;align-items:center}#rewards-page .reward .emoji{font-size:24px}#rewards-page .reward h3{font-size:1rem;margin:0}#rewards-page .reward .meta{color:var(--muted);font-size:.92rem;margin:0}#rewards-page .cost{display:inline-flex;align-items:center;gap:6px;background:#f7f9ff;border:1px solid #e3e9ff;border-radius:999px;padding:6px 10px;font-weight:900;font-size:.9rem}#rewards-page .cost img{width:16px;height:16px;-o-object-fit:contain;object-fit:contain}#rewards-page .lock{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;border-radius:18px;z-index:1}#rewards-page .lock span{background:#fff;border:1px solid var(--line);padding:6px 10px;border-radius:999px;font-size:.85rem;font-weight:700}#rewards-page .btn{border:0;border-radius:12px;padding:10px 12px;font-weight:900;cursor:pointer;transition:all .2s ease}#rewards-page .btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--accent))}#rewards-page .btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #7c83ff4d}#rewards-page .btn-ghost{background:#fff;border:1px solid var(--line);color:var(--muted)}#rewards-page .btn:disabled{opacity:.5;cursor:not-allowed}#rewards-page .history{list-style:none;margin:0;padding:0;display:grid;gap:8px}#rewards-page .history li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;justify-content:space-between;align-items:center}#rewards-page .history .when{color:#6a7b8a;font-size:.9rem}#rewards-page .foot{margin-top:12px;color:#7a8c98;text-align:center;font-size:.9rem}@media (max-width: 1100px){#rewards-page .grid.rewards{grid-template-columns:1fr 1fr}}@media (max-width: 820px){#rewards-page .grid.rewards{grid-template-columns:1fr}#rewards-page .top{flex-direction:column;align-items:flex-start}#rewards-page .tabs{width:100%}#rewards-page .tab{flex:1;text-align:center}}.toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%) translateY(20px);background:#111b;color:#fff;padding:10px 14px;border-radius:12px;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;font-weight:600}.toast.show{animation:toast .9s ease}@keyframes toast{0%{opacity:0;transform:translate(-50%) translateY(20px)}15%,85%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(10px)}}.nav-item,.btn,button{pointer-events:auto!important;cursor:pointer!important;position:relative;z-index:1;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.nav-item{pointer-events:auto!important;cursor:pointer!important;z-index:10}.nav-item:hover{background:linear-gradient(180deg,#fff,#f7f9ff);transform:translateY(-1px)}#hidden-pages{width:100%;max-width:none;display:contents}#hidden-pages>section{width:100%!important;max-width:none!important;grid-column:2}#hidden-pages>section>div{max-width:none!important;width:100%!important;margin:0!important}.shigure-dance-container{position:fixed;bottom:20px;left:20px;width:200px;height:200px;z-index:1000;cursor:pointer;transition:transform .3s ease,opacity .3s ease}.shigure-dance-container:hover{transform:scale(1.05)}.shigure-dance-gif,.shigure-dance-canvas{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:none}.shigure-dance-canvas.static-frame{display:block}@media (max-width: 768px){.shigure-dance-container{width:150px;height:150px;bottom:15px;left:15px}}@media (max-width: 480px){.shigure-dance-container{width:120px;height:120px;bottom:10px;left:10px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}body{--tw-bg-opacity: 1;background-color:rgb(250 249 246 / var(--tw-bg-opacity, 1));font-family:Inter,system-ui,sans-serif;--tw-text-opacity: 1;color:rgb(58 58 58 / var(--tw-text-opacity, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Aaargh,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:"cv11","ss01";min-height:100vh;background:radial-gradient(1200px 800px at 20% 10%,#fff6e8 10%,#faf9f6 55%) no-repeat,#faf9f6;margin:0;overflow-x:hidden}*{scroll-behavior:smooth;box-sizing:border-box;font-family:Aaargh,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.focus-visible-ring:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(247 199 219 / var(--tw-ring-opacity, 1));--tw-ring-opacity: .5}@font-face{font-family:Aaargh;src:url(/fonts/Aaargh%20Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.right-1{right:.25rem}.right-4{right:1rem}.top-1{top:.25rem}.top-20{top:5rem}.z-50{z-index:50}.col-span-2{grid-column:span 2 / span 2}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mr-2{margin-right:.5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-12{height:3rem}.h-16{height:4rem}.h-3{height:.75rem}.h-40{height:10rem}.h-full{height:100%}.w-12{width:3rem}.w-16{width:4rem}.w-3{width:.75rem}.w-40{width:10rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-8{--tw-translate-y: 2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.bg-background{--tw-bg-opacity: 1;background-color:rgb(250 249 246 / var(--tw-bg-opacity, 1))}.bg-background\/30{background-color:#faf9f64d}.bg-background\/50{background-color:#faf9f680}.bg-background\/90{background-color:#faf9f6e6}.bg-black\/50{background-color:#00000080}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-primary{--tw-bg-opacity: 1;background-color:rgb(247 199 219 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity: 1;color:rgb(247 199 219 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-text{--tw-text-opacity: 1;color:rgb(58 58 58 / var(--tw-text-opacity, 1))}.text-text\/50{color:#3a3a3a80}.text-text\/60{color:#3a3a3a99}.text-text\/70{color:#3a3a3ab3}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-700{transition-duration:.7s}.clay-btn{position:relative;background:linear-gradient(135deg,#f7c7db,#e8b5d1);border-radius:24px;padding:16px 32px;font-weight:600;color:#3a3a3a;box-shadow:12px 12px 24px #f7c7db40,-12px -12px 24px #ffffffe6,inset 0 1px #fff9;transition:all .3s ease;border:none;cursor:pointer}.clay-btn:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:20px;background:linear-gradient(135deg,#fff6,#ffffff1a);pointer-events:none}.clay-btn:hover{transform:translateY(-3px);box-shadow:16px 16px 32px #f7c7db4d,-16px -16px 32px #fff,inset 0 1px #fffc}.clay-btn:active{transform:translateY(1px);box-shadow:6px 6px 12px #f7c7db33,-6px -6px 12px #ffffffb3,inset 0 1px #fff6}.clay-btn-accent{background:linear-gradient(135deg,#b7e4d4,#a3d7c4);box-shadow:8px 8px 16px #b7e4d44d,-8px -8px 16px #fffc;position:relative;border-radius:9999px;padding:1rem 2.5rem;font-weight:600;color:#3a3a3a;transition:all .3s ease}.clay-btn-accent:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:9999px;background:linear-gradient(135deg,#fff6,#ffffff1a);pointer-events:none}.clay-btn-accent:hover{transform:translateY(-2px);box-shadow:12px 12px 24px #b7e4d466,-12px -12px 24px #ffffffe6}.clay-btn-accent:active{transform:translateY(1px);box-shadow:4px 4px 8px #b7e4d433,-4px -4px 8px #fff9}.clay-card:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:1.5rem;background:linear-gradient(135deg,#ffffff80,#fff0);pointer-events:none}.clay-card:hover{transform:translateY(-4px);box-shadow:16px 16px 32px #00000014,-16px -16px 32px #fff}.clay-card-primary{background:linear-gradient(135deg,#f7c7db,#f4bdd5);box-shadow:12px 12px 24px #f7c7db4d,-12px -12px 24px #fffc}.clay-card-accent{background:linear-gradient(135deg,#b7e4d4,#aedecb);box-shadow:12px 12px 24px #b7e4d44d,-12px -12px 24px #fffc}.clay-inset{box-shadow:inset 6px 6px 12px #00000014,inset -6px -6px 12px #ffffffe6}*{font-family:Aaargh,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}:root{--bg: #FAF9F6;--panel: #FFFFFF;--text: #3A3A3A;--muted: #60656d;--accent: #F7C7DB;--accent-2: #ffd6a8;--shadow: rgba(39, 37, 34, .12);--inner: rgba(255, 255, 255, .75);--radius-xl: 32px;--radius-lg: 24px;--radius-pill: 999px;--transition: .22s cubic-bezier(.2,.7,.2,1)}.nav-wrapper{display:flex;align-items:flex-start;position:relative;z-index:10}.nav-panel{position:relative;width:280px;padding:24px;border-radius:var(--radius-xl);background:linear-gradient(180deg,#fff,#fff 60%,#f7f4ee);box-shadow:0 20px 50px var(--shadow),inset 0 1px 0 var(--inner);outline:1px solid rgba(0,0,0,.02);z-index:10}.logo-container{display:flex;justify-content:center;margin-bottom:24px}.logo-image{width:80px;height:80px;border-radius:50%;-o-object-fit:cover;object-fit:cover;box-shadow:0 8px 20px #0000001a,inset 0 1px #fffc}.nav-list{list-style:none;margin:0;padding:8px;display:flex;flex-direction:column;gap:16px}.nav-item{position:relative;display:grid;grid-template-columns:44px 1fr;align-items:center;gap:16px;padding:16px 20px;border-radius:var(--radius-lg);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform var(--transition),box-shadow var(--transition),background var(--transition);color:var(--muted)}.nav-item .icon{width:36px;height:36px;display:grid;place-items:center}.nav-item svg{width:28px;height:28px}.nav-item .label{font-size:18px;font-weight:500;letter-spacing:.2px}.nav-item:hover{background:#fff;box-shadow:0 8px 24px #00000014,inset 0 1px #fff;color:var(--text);transform:translateY(-2px)}.nav-item:focus-visible{outline:3px solid rgba(247,199,219,.6);outline-offset:2px}.nav-item.active{color:var(--text);background:radial-gradient(120% 180% at 15% 0%,#fff7ee 10%,#fff 55%) #fff;box-shadow:0 12px 32px #f7c7db4d,inset 0 0 0 1px #fff,inset 0 -2px 8px #f7c7db40;transform:translateY(-2px)}.nav-item.active:before{content:"";position:absolute;top:-4px;right:-6px;bottom:-4px;left:-6px;border-radius:var(--radius-pill);background:radial-gradient(120px 60px at 20% 10%,var(--accent-2),transparent 60%);filter:blur(8px);z-index:-1}.nav-item.active .icon{color:var(--text)}.content{flex:1;padding:12px;position:relative;z-index:5;overflow-x:hidden}@media (max-width: 768px){body{grid-template-columns:1fr;grid-template-rows:auto 1fr;padding:16px}.nav-wrapper{order:2}.nav-panel{width:100%;max-width:100%;margin:0;padding:16px}.nav-list{flex-direction:row;gap:8px;overflow-x:auto;padding:8px 0}.nav-item{min-width:120px;flex-shrink:0;grid-template-columns:1fr;text-align:center;padding:12px 8px}.nav-item .label{font-size:14px;margin-top:4px}.content{order:1;padding:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #f7c7db66}50%{box-shadow:0 0 40px #f7c7dbcc}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 6s ease-in-out infinite}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);background-size:1000px 100%;animation:shimmer 3s infinite}.animate-bounce-subtle{animation:bounce-subtle 2s ease-in-out infinite}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-8px)}.chat-interface{height:100vh;display:flex;flex-direction:column;background:var(--bg);max-width:1200px;margin:0 auto}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.1);position:sticky;top:0;z-index:10}.back-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#f7c7db,#e8b5d1);border:none;border-radius:2rem;color:var(--text);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:8px 8px 16px #f7c7db4d,-8px -8px 16px #fffc}.back-btn:hover{transform:translateY(-2px);box-shadow:12px 12px 24px #f7c7db66,-12px -12px 24px #ffffffe6}#chat-subject-title{font-size:1.5rem;font-weight:700;color:var(--text);margin:0}.chat-controls{display:flex;gap:.5rem}.control-btn{width:3rem;height:3rem;border:none;border-radius:50%;background:linear-gradient(135deg,#f7c7db,#e8b5d1);color:var(--text);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:6px 6px 12px #f7c7db4d,-6px -6px 12px #fffc}.control-btn:hover{transform:translateY(-2px);box-shadow:8px 8px 16px #f7c7db66,-8px -8px 16px #ffffffe6}.chat-messages{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:1.5rem;scroll-behavior:smooth}.message{max-width:80%;animation:messageSlideIn .3s ease-out}.user-message{align-self:flex-end}.assistant-message{align-self:flex-start}.message-content{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:1.5rem;padding:1rem 1.5rem;box-shadow:8px 8px 16px #00000014,-8px -8px 16px #fffc;position:relative}.user-message .message-content{background:linear-gradient(135deg,#f7c7db,#f4bdd5);color:var(--text)}.assistant-message .message-content{background:#fffffff2;color:var(--text)}.message-text{font-size:1rem;line-height:1.5;margin-bottom:.5rem}.message-time{font-size:.75rem;opacity:.6;text-align:right}.assistant-message .message-time{text-align:left}.chat-input-container{padding:1.5rem 2rem;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(0,0,0,.1)}.input-wrapper{display:flex;align-items:flex-end;gap:1rem;background:#fffc;border-radius:2rem;padding:.5rem;box-shadow:inset 4px 4px 8px #0000000d,inset -4px -4px 8px #ffffffe6,8px 8px 16px #0000000f,-8px -8px 16px #fffc}#chat-input{flex:1;border:none;background:transparent;outline:none;resize:none;font-size:1rem;line-height:1.5;padding:1rem 1.5rem;max-height:120px;min-height:24px;font-family:inherit}#chat-input::-moz-placeholder{color:#3a3a3a80}#chat-input::placeholder{color:#3a3a3a80}.input-controls{display:flex;gap:.5rem;align-items:center}.voice-btn,.send-btn{width:3rem;height:3rem;border:none;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.voice-btn{background:linear-gradient(135deg,#b7e4d4,#aedecb);box-shadow:6px 6px 12px #b7e4d44d,-6px -6px 12px #fffc}.voice-btn.recording{background:linear-gradient(135deg,#ffb3ba,#ff9aa2);animation:pulse 1s infinite}.send-btn{background:linear-gradient(135deg,#f7c7db,#e8b5d1);box-shadow:6px 6px 12px #f7c7db4d,-6px -6px 12px #fffc}.voice-btn:hover,.send-btn:hover{transform:translateY(-2px)}.voice-status{margin-top:1rem;text-align:center}.recording-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;color:#ff6b6b;font-weight:600}.pulse{width:12px;height:12px;background:#ff6b6b;border-radius:50%;animation:pulse 1s infinite}.typing-indicator{opacity:.7}.typing-dots{display:flex;gap:4px;align-items:center}.typing-dots span{width:8px;height:8px;background:#999;border-radius:50%;animation:typingDot 1.4s infinite ease-in-out}.typing-dots span:nth-child(1){animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}.hidden{display:none!important}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes typingDot{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-page-container{display:grid;grid-template-columns:300px 1fr 280px;height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f3ff);gap:0}.left-panel{background:linear-gradient(135deg,#f7c7db,#f4bdd5);padding:2rem 1.5rem;display:flex;flex-direction:column;gap:2rem;box-shadow:4px 0 20px #0000001a}.subject-header{display:flex;align-items:center;gap:1rem}.subject-icon{font-size:2.5rem;background:#ffffff4d;width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 2px 2px 8px #0000001a}.subject-info h2{font-size:1.5rem;font-weight:700;color:var(--text);margin:0}.subject-info p{font-size:1rem;color:var(--text);opacity:.8;margin:.25rem 0 0}.timer-section h3{font-size:1rem;color:var(--text);margin:0 0 1rem;font-weight:600}.timer-circle{position:relative;width:120px;height:120px;margin:0 auto}.timer-segments{position:absolute;width:100%;height:100%;border-radius:50%;background:conic-gradient(#ff6b9d,#ff6b9d 90deg,#ffb347 90deg,#ffb347 180deg,#4ecdc4 180deg,#4ecdc4 270deg,#a8e6cf 270deg,#a8e6cf 360deg);padding:8px}.timer-segments:before{content:"";position:absolute;width:calc(100% - 16px);height:calc(100% - 16px);background:#ffffffe6;border-radius:50%;top:8px;left:8px}.timer-display{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.5rem;font-weight:700;color:var(--text)}.action-buttons{display:flex;flex-direction:column;gap:1rem}.hint-btn,.complete-btn,.timer-control-btn{padding:1rem 1.5rem;border:none;border-radius:1.5rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:6px 6px 12px #0000001a,-6px -6px 12px #fffc}.hint-btn{background:linear-gradient(135deg,#f7c7db,#f4bdd5);color:var(--text)}.complete-btn{background:linear-gradient(135deg,#87ceeb,#b0e0e6);color:var(--text)}.timer-control-btn{background:linear-gradient(135deg,#ffb347,#ff8c42);color:var(--text)}.timer-control-btn.start{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.timer-control-btn.stop{background:linear-gradient(135deg,#ff6b6b,#ff5252)}.hint-btn:hover,.complete-btn:hover,.timer-control-btn:hover{transform:translateY(-2px);box-shadow:8px 8px 16px #00000026,-8px -8px 16px #ffffffe6}.middle-panel{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;position:relative;overflow:hidden}.chat-header{padding:2rem 2rem 1rem;border-bottom:1px solid rgba(0,0,0,.1)}.chat-header h1{font-size:1.5rem;font-weight:700;color:var(--text);margin:0}.chat-messages-container{flex:1;padding:2rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem}.chat-message{max-width:70%;animation:messageSlideIn .3s ease-out}.chat-message.user{align-self:flex-end}.chat-message.assistant{align-self:flex-start}.chat-message-content{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:1.5rem;padding:1rem 1.5rem;box-shadow:8px 8px 16px #00000014,-8px -8px 16px #fffc}.chat-message.user .chat-message-content{background:linear-gradient(135deg,#f7c7db,#f4bdd5);color:var(--text)}.chat-input-area{padding:1.5rem 2rem;border-top:1px solid rgba(0,0,0,.1)}.input-container{display:flex;gap:1rem;align-items:center;background:#fffc;border-radius:2rem;padding:.5rem;box-shadow:inset 4px 4px 8px #0000000d,inset -4px -4px 8px #ffffffe6}#chat-input-field{flex:1;border:none;background:transparent;outline:none;font-size:1rem;padding:1rem 1.5rem;font-family:inherit}#chat-input-field::-moz-placeholder{color:#3a3a3a80}#chat-input-field::placeholder{color:#3a3a3a80}.send-button{width:3rem;height:3rem;border:none;border-radius:50%;background:linear-gradient(135deg,#f7c7db,#e8b5d1);color:var(--text);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:6px 6px 12px #f7c7db4d,-6px -6px 12px #fffc}.send-button:hover{transform:translateY(-2px)}.voice-button{width:3rem;height:3rem;border:none;border-radius:50%;background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:6px 6px 12px #4ecdc44d,-6px -6px 12px #fffc}.voice-button:hover{transform:translateY(-2px)}.voice-button.recording{background:linear-gradient(135deg,#ff6b6b,#ff5252);animation:pulse 1s infinite}.ai-character{position:absolute;bottom:2rem;right:2rem;z-index:10}.character-avatar{width:80px;height:80px;position:relative;animation:characterFloat 3s ease-in-out infinite}.character-face{width:60px;height:60px;background:#ffe4b5;border-radius:50%;position:relative;box-shadow:4px 4px 8px #0000001a,-4px -4px 8px #fffc}.eyes{position:absolute;top:18px;left:50%;transform:translate(-50%);display:flex;gap:8px}.eye{width:6px;height:6px;background:#333;border-radius:50%}.mouth{position:absolute;bottom:15px;left:50%;transform:translate(-50%);width:12px;height:6px;border:2px solid #333;border-top:none;border-radius:0 0 12px 12px}.character-hair{position:absolute;top:-10px;left:50%;transform:translate(-50%);width:70px;height:25px;background:#8b4513;border-radius:50% 50% 30% 30%}.character-sprout{position:absolute;top:-5px;left:50%;transform:translate(-50%);width:8px;height:15px;background:#4caf50;border-radius:50% 50% 0 0}.character-body{position:absolute;top:50px;left:50%;transform:translate(-50%);width:50px;height:40px;background:#87ceeb;border-radius:20px 20px 0 0}.right-panel{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem 1.5rem;display:flex;flex-direction:column;gap:2rem;box-shadow:-4px 0 20px #0000001a}.user-profile{display:flex;align-items:center;gap:1rem}.user-avatar{width:4rem;height:4rem;position:relative}.avatar-face{width:100%;height:100%;background:#ffe4b5;border-radius:50%;position:relative;box-shadow:4px 4px 8px #0000001a,-4px -4px 8px #fffc}.avatar-eyes{position:absolute;top:30%;left:50%;transform:translate(-50%);display:flex;gap:6px}.avatar-eye{width:4px;height:4px;background:#333;border-radius:50%}.avatar-smile{position:absolute;bottom:25%;left:50%;transform:translate(-50%);width:8px;height:4px;border:1px solid #333;border-top:none;border-radius:0 0 8px 8px}.avatar-hair{position:absolute;top:-8px;left:50%;transform:translate(-50%);width:100%;height:20px;background:#8b4513;border-radius:50% 50% 30% 30%}.user-info h3{font-size:1.25rem;font-weight:700;color:var(--text);margin:0}.user-info p{font-size:.9rem;color:var(--text);opacity:.8;margin:.25rem 0 0}.progress-section{background:#fff9;border-radius:1rem;padding:1.5rem;box-shadow:inset 2px 2px 8px #0000000d,inset -2px -2px 8px #ffffffe6}.progress-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.progress-label{font-weight:600;color:var(--text)}.progress-icon{font-size:1.2rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4ecdc4,#44a08d);border-radius:4px;transition:width .3s ease}.recommendations h4{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 1rem}.recommendation-btn{width:100%;padding:1rem;border:none;border-radius:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;box-shadow:4px 4px 8px #0000001a,-4px -4px 8px #fffc}.recommendation-btn.primary,.recommendation-btn.secondary{background:linear-gradient(135deg,#f7c7db,#f4bdd5);color:var(--text)}.recommendation-btn.tertiary{background:linear-gradient(135deg,#b7e4d4,#aedecb);color:var(--text)}.recommendation-btn:hover{transform:translateY(-2px);box-shadow:6px 6px 12px #00000026,-6px -6px 12px #ffffffe6}.btn-icon{font-size:1.2rem}@keyframes characterFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width: 768px){.chat-page-container{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.left-panel,.right-panel,.chat-messages-container,.chat-input-area{padding:1rem}.chat-message{max-width:90%}.ai-character{bottom:1rem;right:1rem}.character-avatar{width:60px;height:60px}}@media (max-width: 1024px){.chat-page-container{grid-template-columns:250px 1fr 200px}.left-panel,.right-panel{padding:1.5rem 1rem}}.quiz-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.quiz-modal{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:2rem;box-shadow:20px 20px 40px #0000001a,-20px -20px 40px #fffc;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out;position:relative;z-index:10000}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem 2rem 1rem;border-bottom:1px solid rgba(0,0,0,.1)}.modal-header h2{font-size:1.5rem;font-weight:700;color:var(--text);margin:0}.close-btn{width:2.5rem;height:2.5rem;border:none;border-radius:50%;background:linear-gradient(135deg,#f7c7db,#e8b5d1);color:var(--text);font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:4px 4px 8px #0000001a,-4px -4px 8px #fffc}.close-btn:hover{transform:translateY(-2px)}.modal-content{padding:2rem}.topic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.topic-card{background:#fffc;border-radius:1.5rem;padding:2rem;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:8px 8px 16px #00000014,-8px -8px 16px #fffc;border:2px solid transparent}.topic-card:hover{transform:translateY(-5px);box-shadow:12px 12px 24px #0000001f,-12px -12px 24px #ffffffe6;border-color:#f7c7db80}.topic-card.custom-topic{background:linear-gradient(135deg,#b7e4d4,#aedecb)}.topic-icon{font-size:3rem;margin-bottom:1rem}.topic-card h3{font-size:1.2rem;font-weight:600;color:var(--text);margin:0 0 .5rem}.topic-card p{font-size:.9rem;color:var(--text);opacity:.7;margin:0}.input-group{display:flex;gap:1rem;margin-bottom:1rem}.topic-input{flex:1;padding:1rem 1.5rem;border:none;border-radius:1.5rem;background:#fffc;font-size:1rem;outline:none;box-shadow:inset 4px 4px 8px #0000000d,inset -4px -4px 8px #ffffffe6}.topic-input::-moz-placeholder{color:#3a3a3a80}.topic-input::placeholder{color:#3a3a3a80}.start-btn{padding:1rem 2rem;border:none;border-radius:1.5rem;background:linear-gradient(135deg,#f7c7db,#e8b5d1);color:var(--text);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:6px 6px 12px #f7c7db4d,-6px -6px 12px #fffc}.start-btn:hover{transform:translateY(-2px)}.help-text{text-align:center;color:var(--text);opacity:.7;font-size:.9rem;margin:0}.progress-info{flex:1;margin-right:2rem}.question-counter{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:.5rem;display:block}.progress-bar{width:100%;height:8px;background:#0000001a;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#f7c7db,#e8b5d1);border-radius:4px;transition:width .3s ease}.question-card{text-align:center}.question-text{font-size:1.4rem;font-weight:600;color:var(--text);margin:0 0 2rem;line-height:1.4}.options-container{display:grid;gap:1rem;margin-bottom:2rem}.option-btn{display:flex;align-items:center;gap:1rem;padding:1.5rem;border:none;border-radius:1.5rem;background:#fffc;cursor:pointer;transition:all .3s ease;text-align:left;box-shadow:6px 6px 12px #00000014,-6px -6px 12px #fffc;position:relative;z-index:10001;pointer-events:auto}.option-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:8px 8px 16px #0000001f,-8px -8px 16px #ffffffe6}.option-btn.selected{background:linear-gradient(135deg,#f7c7db,#e8b5d1);box-shadow:8px 8px 16px #f7c7db4d,-8px -8px 16px #ffffffe6}.option-btn.correct{background:linear-gradient(135deg,#b7e4d4,#aedecb)}.option-btn.incorrect{background:linear-gradient(135deg,#ffb3ba,#ff9aa2)}.option-btn:disabled{cursor:not-allowed;opacity:.7}.option-letter{width:2.5rem;height:2.5rem;border-radius:50%;background:#ffffffe6;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;color:var(--text);flex-shrink:0}.option-text{font-size:1.1rem;color:var(--text);flex:1}.submit-btn{padding:1rem 2rem;border:none;border-radius:1.5rem;background:linear-gradient(135deg,#87ceeb,#b0e0e6);color:var(--text);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:6px 6px 12px #87ceeb4d,-6px -6px 12px #fffc;position:relative;z-index:10001;pointer-events:auto}.submit-btn:hover:not(:disabled){transform:translateY(-2px)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.feedback-card{margin-top:2rem;padding:2rem;border-radius:1.5rem;background:#ffffffe6;box-shadow:8px 8px 16px #00000014,-8px -8px 16px #fffc}.feedback-header{text-align:center;margin-bottom:1.5rem}.feedback-header.correct{color:#4caf50}.feedback-header.incorrect{color:#f44336}.feedback-icon{font-size:3rem;margin-bottom:.5rem}.feedback-header h3{font-size:1.5rem;font-weight:600;margin:0}.feedback-explanation{margin-bottom:1.5rem}.feedback-explanation p{font-size:1.1rem;color:var(--text);line-height:1.5;margin:0}.feedback-stats{text-align:center;margin-bottom:1.5rem}.feedback-stats span{font-size:1.1rem;font-weight:600;color:var(--text)}.next-btn{width:100%;padding:1rem 2rem;border:none;border-radius:1.5rem;background:linear-gradient(135deg,#f7c7db,#e8b5d1);color:var(--text);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:6px 6px 12px #f7c7db4d,-6px -6px 12px #fffc}.next-btn:hover{transform:translateY(-2px)}.results-card{text-align:center}.score-display{margin-bottom:2rem}.score-circle{width:120px;height:120px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 1rem;box-shadow:8px 8px 16px #0000001a,-8px -8px 16px #fffc}.score-circle.excellent{background:linear-gradient(135deg,#b7e4d4,#aedecb)}.score-circle.good{background:linear-gradient(135deg,#87ceeb,#b0e0e6)}.score-circle.needs-improvement{background:linear-gradient(135deg,#ffb3ba,#ff9aa2)}.score-number{font-size:2.5rem;font-weight:700;color:var(--text)}.score-total{font-size:1.2rem;color:var(--text);opacity:.7}.score-percentage{font-size:1.5rem;font-weight:600;color:var(--text)}.stars-display{margin-bottom:2rem}.stars-display h3{font-size:1.3rem;color:var(--text);margin:0 0 1rem}.stars{font-size:2rem;margin-bottom:.5rem}.stars-display p{font-size:1.1rem;color:var(--text);margin:0}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.stat-item{padding:1rem;background:#fff9;border-radius:1rem;box-shadow:inset 2px 2px 8px #0000000d,inset -2px -2px 8px #ffffffe6}.stat-label{display:block;font-size:.9rem;color:var(--text);opacity:.7;margin-bottom:.25rem}.stat-value{display:block;font-size:1.1rem;font-weight:600;color:var(--text)}.weak-areas{margin-bottom:2rem;padding:1.5rem;background:#fff3cdcc;border-radius:1rem;text-align:left}.weak-areas h4{font-size:1.1rem;color:var(--text);margin:0 0 1rem}.weak-areas ul{margin:0;padding-left:1.5rem}.weak-areas li{color:var(--text);margin-bottom:.5rem}.results-actions{display:flex;gap:1rem}.retry-btn,.finish-btn{flex:1;padding:1rem 2rem;border:none;border-radius:1.5rem;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-btn{background:linear-gradient(135deg,#87ceeb,#b0e0e6);color:var(--text);box-shadow:6px 6px 12px #87ceeb4d,-6px -6px 12px #fffc}.finish-btn{background:linear-gradient(135deg,#f7c7db,#e8b5d1);color:var(--text);box-shadow:6px 6px 12px #f7c7db4d,-6px -6px 12px #fffc}.retry-btn:hover,.finish-btn:hover{transform:translateY(-2px)}.loading-content{text-align:center;padding:3rem}.loading-spinner{width:60px;height:60px;border:4px solid rgba(247,199,219,.3);border-top:4px solid #F7C7DB;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 2rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-content h3{font-size:1.3rem;color:var(--text);margin:0}.loading-content p{font-size:1rem;color:var(--text);opacity:.7;margin:1rem 0 0}.error-content{text-align:center;padding:2rem}.error-icon{font-size:3rem;margin-bottom:1rem}.error-content h3{font-size:1.5rem;color:var(--text);margin:0 0 1rem}.error-content p{font-size:1.1rem;color:var(--text);margin:0 0 2rem}@media (max-width: 768px){.quiz-modal{margin:1rem;max-width:none;width:calc(100% - 2rem)}.modal-header,.modal-content{padding:1.5rem}.topic-grid{grid-template-columns:1fr;gap:1rem}.input-group{flex-direction:column}.question-text{font-size:1.2rem}.option-btn{padding:1rem}.stats-grid{grid-template-columns:1fr}.results-actions{flex-direction:column}}.hover\:bg-background\/70:hover{background-color:#faf9f6b3}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/90:hover{background-color:#f7c7dbe6}.hover\:text-primary\/80:hover{color:#f7c7dbcc}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-primary:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(247 199 219 / var(--tw-ring-opacity, 1))}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@font-face{font-family:Aaargh;src:url(/fonts/Aaargh%20Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.rewards-container,.gift-card,.reward-card,.rewards-btn,.collection-badge,.price-display{font-family:Aaargh,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.gift-card{transition:all .3s ease;overflow:hidden}.gift-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.gift-card img{transition:transform .3s ease}.gift-card:hover img{transform:scale(1.05)}.reward-card{transition:all .3s ease}.reward-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.rarity-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.price-overlay{background:linear-gradient(135deg,#000c,#0009);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.loading-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:shimmer 1.5s infinite}@media (max-width: 640px){.gift-card img{height:120px}}@media (max-width: 480px){.gift-card img{height:100px}}.purchase-modal{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.success-animation{animation:successPulse .6s ease}@keyframes successPulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.clay-border{border:2px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff1a,0 1px 3px #0000001a}.gift-card:hover .clay-border,.reward-card:hover .clay-border{border-color:#fff3;box-shadow:inset 0 1px #fff3,0 4px 12px #00000026}.rewards-btn{position:relative;overflow:hidden}.rewards-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.rewards-btn:hover:before{left:100%}.collection-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.75rem;padding:.25rem .5rem;border-radius:.5rem;font-weight:600}.price-display{background:linear-gradient(135deg,gold,#ffed4e);color:#333;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1)}.rewards-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}@media (max-width: 768px){.rewards-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}}@media (max-width: 480px){.rewards-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}}.converter-card{position:relative;padding:2rem;border-radius:32px;background:linear-gradient(135deg,#fff5f8,#ffe8f0,#fff0f5);box-shadow:16px 16px 32px #ffb8c640,-16px -16px 32px #ffffffe6,inset 0 1px #fff9;transition:all .3s cubic-bezier(.4,0,.2,1)}.converter-card:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:30px;background:linear-gradient(135deg,#ffffff80,#ffffff1a);pointer-events:none;z-index:0}.converter-card:hover{transform:translateY(-4px);box-shadow:20px 20px 40px #ffb8c64d,-20px -20px 40px #fff,inset 0 1px #ffffffb3}.converter-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:1.5rem}.converter-input-group{display:flex;flex-direction:column;gap:.75rem}.converter-label-row{display:flex;justify-content:space-between;align-items:center}.converter-label{font-weight:600;color:#5a4a5f;font-size:.95rem;letter-spacing:.2px}.converter-balance-btn{padding:.5rem 1rem;font-size:.85rem;background:linear-gradient(135deg,#cdb4f5,#c4a8f0);color:#5a4a5f;border:none;border-radius:20px;cursor:pointer;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:6px 6px 12px #cdb4f54d,-6px -6px 12px #fffc,inset 0 1px #ffffff80;position:relative;overflow:hidden}.converter-balance-btn:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:18px;background:linear-gradient(135deg,#fff6,#ffffff1a);pointer-events:none}.converter-balance-btn:hover{transform:translateY(-2px);box-shadow:8px 8px 16px #cdb4f566,-8px -8px 16px #ffffffe6,inset 0 1px #fff9}.converter-balance-btn:active{transform:translateY(0);box-shadow:3px 3px 6px #cdb4f533,-3px -3px 6px #ffffffb3,inset 0 1px #fff6}.converter-input-wrapper{display:flex;align-items:center;gap:.75rem;position:relative}.converter-input{flex:1;padding:1rem 1.25rem;border:none;border-radius:24px;font-size:1rem;font-weight:500;color:#5a4a5f;background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);outline:none;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 6px 6px 12px #ffb8c626,inset -6px -6px 12px #ffffffe6,0 2px 4px #0000000d;font-family:Aaargh,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.converter-input::-moz-placeholder{color:#5a4a5f66}.converter-input::placeholder{color:#5a4a5f66}.converter-input:focus{background:#ffffffd9;box-shadow:inset 8px 8px 16px #ffb8c633,inset -8px -8px 16px #fff,0 4px 8px #ffb8c633;transform:translateY(-1px)}.converter-unit{color:#8b7a90;font-weight:600;font-size:.95rem;min-width:60px;text-align:right}.converter-result{text-align:center;padding:1.5rem;border-radius:28px;background:linear-gradient(135deg,#e8f5e9,#c8e6c9,#e1f5e1);box-shadow:inset 4px 4px 8px #b7e4d433,inset -4px -4px 8px #ffffffe6,0 4px 8px #b7e4d426;position:relative;overflow:hidden}.converter-result:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:26px;background:linear-gradient(135deg,#fff9,#fff3);pointer-events:none}.converter-result-label{font-size:.9rem;color:#5a7a5f;margin-bottom:.75rem;font-weight:500;position:relative;z-index:1}.converter-result-value{font-size:2.5rem;font-weight:700;color:#4a6a4f;display:flex;align-items:center;justify-content:center;gap:.5rem;position:relative;z-index:1;text-shadow:0 2px 4px rgba(255,255,255,.5)}.stars-icon{font-size:1.8rem;filter:drop-shadow(0 2px 4px rgba(255,215,0,.3));animation:starTwinkle 2s ease-in-out infinite}@keyframes starTwinkle{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}}.converter-info{text-align:center;font-size:.8rem;color:#8b7a90;padding-top:1rem;border-top:1px solid rgba(255,184,198,.3);font-weight:500;letter-spacing:.1px}@media (max-width: 640px){.converter-card{padding:1.5rem;border-radius:28px}.converter-label-row{flex-direction:column;align-items:flex-start;gap:.5rem}.converter-balance-btn{width:100%;text-align:center}.converter-result-value{font-size:2rem}.stars-icon{font-size:1.5rem}}
