.dash{min-height:100vh;padding-bottom:4rem}.dash-in{width:min(1000px,100% - 2rem);margin-inline:auto}.dash-bar{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:rgba(246,248,255,.93);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.dash-bar .dash-in{justify-content:space-between;padding-block:.7rem}.bar-right,.dash-bar .dash-in{display:flex;align-items:center}.bar-right{gap:.6rem;position:relative}.icon-btn{width:2.6rem;height:2.6rem;border-radius:50%;display:grid;place-items:center;background:var(--white);border:1px solid var(--line);color:var(--ink);cursor:pointer;text-decoration:none;padding:0;font:inherit}.icon-btn:hover{border-color:var(--ink)}.avatar{background:var(--blue);border-color:var(--blue);color:var(--white);font-family:var(--font-display);font-weight:800;font-size:1rem}.avatar:hover{background:var(--blue-deep);border-color:var(--blue-deep)}.menu{position:absolute;right:0;top:3.3rem;width:min(270px,82vw);background:var(--white);border:1px solid var(--line);border-radius:16px;padding:.5rem;box-shadow:0 14px 34px rgba(16,22,54,.14)}.menu-who{padding:.6rem .7rem .8rem;border-bottom:1px solid var(--line);margin-bottom:.3rem}.menu-who strong{display:block;font-family:var(--font-display)}.menu-who span{color:var(--muted);font-size:.88rem;word-break:break-all}.menu a,.menu button{display:block;width:100%;text-align:left;background:none;border:0;font:inherit;padding:.65rem .7rem;border-radius:10px;cursor:pointer;color:var(--ink);text-decoration:none}.menu a:hover,.menu button:hover{background:var(--paper)}.hello{padding-block:1.6rem 1.1rem}.hello h1{font-size:clamp(1.6rem,5vw,2.2rem);margin:0}.hello p{margin:.2rem 0 0;color:var(--muted)}.balance{background:var(--ink);color:var(--white);border-radius:24px;padding:clamp(1.3rem,4vw,2rem)}.balance-label{color:#aeb7e0;font-size:.95rem;margin:0}.balance-amt{font-family:var(--font-display);font-weight:800;font-size:clamp(2.6rem,9vw,4rem);line-height:1.05;color:var(--mint);margin:.2rem 0 1.2rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.balance-row{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:flex-end;justify-content:space-between}.balance-stats{display:flex;gap:2rem}.balance-stats div span{display:block;color:#aeb7e0;font-size:.85rem}.balance-stats div strong{font-family:var(--font-display);font-size:1.25rem}.balance .btn{cursor:pointer;font:inherit;font-weight:700}.panels{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-top:1rem}.panel{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:1.3rem;min-width:0}.panel h2{font-size:1.15rem;margin:0 0 .3rem}.panel p{margin:0 0 .8rem;color:var(--muted);font-size:.95rem}.copy-row{display:flex;align-items:center;gap:.6rem;background:var(--paper);border:1.5px solid var(--line);border-radius:12px;padding:.55rem .6rem .55rem .9rem;margin-bottom:.6rem}.copy-row span{font-weight:700;word-break:break-all;min-width:0;flex:1 1;font-size:.97rem}.copy-row .btn{padding:.4rem .9rem;font-size:.9rem;flex-shrink:0;cursor:pointer;font-family:inherit}.big-code{font-family:var(--font-display);letter-spacing:.08em;font-size:1.15rem!important}.activity{list-style:none;margin:0;padding:0}.activity li{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.activity li:last-child{border-bottom:0}.activity small{display:block;color:var(--muted);font-size:.82rem}.amt{font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.amt.pos{color:#0b7a47}.chip{display:inline-block;font-size:.72rem;font-weight:700;padding:.1rem .5rem;border-radius:999px;margin-left:.4rem;vertical-align:middle}.chip.pending{background:var(--sun);color:var(--ink)}.chip.paid{background:var(--mint);color:var(--ink)}.chip.rejected{background:#f9d6d3;color:#8a1c14}.empty{color:var(--muted);margin:0}.courses-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:2.2rem 0 1rem}.courses-head h2{margin:0;font-size:1.5rem}.courses-head .btn{cursor:pointer;font:inherit;font-weight:700;padding:.55rem 1.2rem}.courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.8rem;gap:.8rem}.course{background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.course-cover{height:84px;display:grid;place-items:center;color:rgba(255,255,255,.95);font-family:var(--font-display);font-weight:800;font-size:2.2rem;position:relative}.course-del{position:absolute;top:.4rem;right:.4rem;width:2rem;height:2rem;border-radius:50%;border:0;background:rgba(16,22,54,.55);color:var(--white);cursor:pointer;display:grid;place-items:center;padding:0}.course-body{padding:.8rem;display:flex;flex-direction:column;gap:.35rem;flex:1 1}.course-body h3{font-size:1rem;line-height:1.25}.course-body h3,.course-body p{margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-body p{color:var(--muted);font-size:.85rem;line-height:1.4;max-width:none}.course-foot{margin-top:auto;padding-top:.5rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.course-price{font-weight:800;font-family:var(--font-display)}.course-foot a{font-size:.85rem;font-weight:700;color:var(--blue);text-decoration:none;white-space:nowrap}.course-foot a:hover{text-decoration:underline}.more{text-align:center;margin:1.4rem 0 0}.more .btn{cursor:pointer;font:inherit;font-weight:700}.more p{color:var(--muted);font-size:.9rem;margin:.6rem auto 0}.sentinel{height:1px}.skeleton{background:linear-gradient(90deg,#e8ecfa 25%,#f3f5ff 50%,#e8ecfa 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:18px;height:190px}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.modal-back{position:fixed;inset:0;background:rgba(16,22,54,.55);display:grid;place-items:end center;z-index:50}.modal{width:min(520px,100%);background:var(--white);border-radius:24px 24px 0 0;padding:1.3rem 1.3rem 1.8rem;max-height:92vh;overflow-y:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.4rem}.modal-head h2{margin:0;font-size:1.4rem}.modal textarea{font:inherit;padding:.8rem .9rem;border:1.5px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);width:100%;resize:vertical;min-height:5.5rem}.modal textarea:focus{outline:3px solid var(--blue);outline-offset:1px;border-color:var(--blue)}@media (min-width:600px){.modal-back{place-items:center}.modal{border-radius:24px}}.toast{position:fixed;left:50%;bottom:1.4rem;transform:translateX(-50%);background:var(--ink);color:var(--white);padding:.7rem 1.2rem;border-radius:999px;font-weight:600;z-index:60;max-width:90vw;text-align:center}.settings{width:min(640px,100% - 2rem);margin:1.6rem auto 0;display:grid;grid-gap:1rem;gap:1rem}.settings .panel h2{margin-bottom:.8rem}.settings .auth-form{margin-top:0}.ro{background:var(--paper);border:1.5px solid var(--line);border-radius:12px;padding:.8rem .9rem;word-break:break-all;font-weight:600}.back{display:inline-flex;align-items:center;gap:.4rem;color:var(--ink);text-decoration:none;font-weight:700}@media (max-width:760px){.panels{grid-template-columns:1fr}}