:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}li{list-style:none}a{text-decoration:none}:root{--bg:#11121a;--surface:#1d1f2e;--accent:#8b63ff;--accent-bg:#8b63ff2e;--accent-border:#8b63ff52;--text-h:#f7f7ff;--text:#d7d8f0;--border:#2c2f4a;--shadow:0 24px 60px #00000059}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--text);background:radial-gradient(circle at 0 0,#8b63ff2e,#0000 24%),linear-gradient(#12131e 0%,#0d1018 100%);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}section{max-width:1180px;margin:0 auto;padding:30px}.menu-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;width:100%;max-width:1200px;padding:20px;display:grid}@media (width<=768px){.menu-list{grid-template-columns:1fr;gap:15px;padding:15px}}@media (width<=480px){.menu-list{gap:12px;padding:12px}}.header-bar{background:linear-gradient(135deg, var(--accent-bg), #aa3bff0d);border-bottom:2px solid var(--accent-border);justify-content:flex-end;align-items:center;width:100vw;padding-top:16px;padding-bottom:16px;display:flex}.user-info{align-items:center;gap:16px;margin:0;display:flex}.user-info h3{color:var(--accent);margin:0;font-size:18px}.logout-btn{border:2px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:6px;padding:8px 16px;font-weight:600;transition:all .3s}.logout-btn:hover{background:var(--accent);color:#fff}.auth-buttons{gap:12px;display:flex}.signup-btn{background:var(--accent);color:#fff;border-radius:6px;padding:10px 20px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.signup-btn:hover{opacity:.9;box-shadow:var(--shadow);transform:translateY(-2px)}@media (width<=768px){.header-bar{padding:12px 15px}.user-info{gap:10px}.user-info h3{font-size:16px}.logout-btn{padding:6px 12px;font-size:14px}.auth-buttons{flex-direction:column;gap:8px;width:100%}.signup-btn{text-align:center;width:100%;padding:10px 16px;font-size:14px}}.signup-container{background:linear-gradient(135deg, var(--accent-bg), #aa3bff0d);justify-content:center;align-items:center;height:90vh;padding-top:20px;display:flex}.signup-card{background:var(--bg);border:2px solid var(--accent-border);width:100%;max-width:400px;box-shadow:var(--shadow);border-radius:12px;padding:40px}.signup-card h1{text-align:center;color:var(--accent);margin-bottom:30px;font-size:28px}.signup-form{flex-direction:column;gap:16px;margin-bottom:20px;display:flex}.signup-form input{border:2px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:12px 16px;font-size:16px;transition:all .2s}.signup-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.signup-submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 20px;font-size:16px;font-weight:600;text-decoration:none;transition:all .3s}.signup-submit-btn:hover{opacity:.9;box-shadow:var(--shadow);transform:translateY(-2px)}.signup-submit-btn:active{transform:translateY(0)}.signup-submit-btn:disabled{opacity:.6;cursor:not-allowed}.signin-link{text-align:center;color:var(--text);margin:0}.course-page{justify-content:center;width:90vw;padding:40px 20px;display:flex}.course-card{background:var(--bg);border:2px solid var(--accent-border);width:min(100%,720px);box-shadow:var(--shadow);border-radius:24px;padding:36px}.course-card h2{color:var(--text-h);margin:0 0 24px;font-size:28px}.course-form{flex-direction:column;gap:20px;display:flex}.course-form label{color:var(--text);margin-bottom:10px;font-weight:600;display:block}.course-form textarea,.course-form input{border:2px solid var(--border);width:100%;color:var(--text);background:#ffffff08;border-radius:14px;padding:16px 18px;transition:border-color .2s,box-shadow .2s}.course-form textarea{resize:vertical;min-height:160px}.course-form textarea:focus,.course-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #8b63ff2e}.submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:14px;width:fit-content;padding:14px 22px;font-size:16px;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s}.submit-btn:hover:not(:disabled){box-shadow:var(--shadow);transform:translateY(-1px)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.message-text{margin-top:18px;font-weight:600}.message-text.error{color:#fca5a5}.message-text.success{color:#8fd19e}.signup-card{border-radius:10px;padding:30px 20px}.signup-card h1{margin-bottom:20px;font-size:24px}.signup-form{gap:12px;margin-bottom:16px}.signup-form input{border-radius:6px;padding:11px 14px;font-size:16px}.signup-submit-btn{padding:11px 16px;font-size:15px}.signin-link{font-size:14px}.error-message{color:#991b1b;text-align:center;background:#fee2e2;border:2px solid #fca5a5;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-weight:600}@media (prefers-color-scheme:dark){.error-message{color:#fca5a5;background:#7f1d1d33;border-color:#7f1d1d}}.menu-item{border:2px solid var(--border);background:var(--bg);box-shadow:var(--shadow);border-radius:12px;height:fit-content;padding:20px;transition:all .3s}.menu-item:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.menu-item h2{color:var(--text-h);margin:0 0 12px;font-size:22px}.menu-item p{color:var(--text);margin:8px 0;font-size:16px}@media (width<=768px){.menu-list{grid-template-columns:1fr;gap:15px;padding:15px}.menu-item{border-radius:10px;padding:15px}.menu-item h2{margin-bottom:10px;font-size:18px}.menu-item p{margin:6px 0;font-size:14px}}@media (width<=480px){.menu-list{gap:12px;padding:12px}.menu-item{padding:12px}.menu-item h2{font-size:16px}.menu-item p{font-size:13px}}.amount-controls{justify-content:center;align-items:center;gap:10px;margin:15px 0;display:flex}.amount-controls p{color:var(--text-h);min-width:60px;font-weight:600}.amount-controls button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-weight:600;transition:all .2s}@media (width<=768px){.amount-controls{gap:8px;margin:12px 0}.amount-controls p{min-width:55px;font-size:14px}.amount-controls button{padding:6px 12px;font-size:14px}}@media (width<=480px){.amount-controls{gap:6px}.amount-controls p{min-width:50px;font-size:13px}.amount-controls button{padding:5px 10px;font-size:13px}}.amount-controls button:hover{opacity:.9;transform:translateY(-2px)}.amount-controls button:active{transform:translateY(0)}.menu-item input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:var(--accent)}.delete-btn{color:#dc2626;cursor:pointer;background:0 0;border:2px solid #dc2626;border-radius:6px;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;padding:0;font-size:20px;font-weight:700;transition:all .3s;display:flex}.delete-btn:hover{color:#fff;background:#dc2626;transform:scale(1.1)}.delete-btn:active{transform:scale(.95)}@media (width<=768px){.delete-btn{width:28px;min-width:28px;height:28px;font-size:18px}}@media (width<=480px){.delete-btn{width:24px;min-width:24px;height:24px;font-size:16px}}form{border:2px solid var(--border);background:var(--accent-bg);border-radius:12px;flex-direction:column;gap:12px;max-width:500px;margin:20px auto;padding:20px;display:flex}form input{border:2px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:12px 16px;font-size:16px;transition:all .2s}form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 20px;font-size:16px;font-weight:600;transition:all .3s}form button:hover{opacity:.9;box-shadow:var(--shadow);transform:translateY(-3px)}form button:active{transform:translateY(0)}@media (width<=768px){form{gap:10px;max-width:100%;margin:15px;padding:16px}form input{padding:10px 14px;font-size:15px}form button{padding:10px 16px;font-size:14px}}@media (width<=480px){form{margin:12px;padding:12px}form input{padding:9px 12px;font-size:14px}form button{padding:9px 14px;font-size:13px}}hr{background:linear-gradient(90deg, transparent, var(--border), transparent);border:none;height:2px;margin:30px 0}@media (width<=768px){hr{margin:20px 0}}@media (width<=480px){hr{margin:15px 0}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=768px){.counter{margin-bottom:16px;padding:4px 8px;font-size:14px}}@media (width<=480px){.counter{margin-bottom:12px;font-size:13px}}.cart-container{border:2px solid var(--accent-border);background:var(--accent-bg);border-radius:12px;width:100%;max-width:1200px;margin:0 auto;padding:24px}.cart-container h2{color:var(--accent);margin-top:0;font-size:28px}.cart-empty{text-align:center;color:var(--text);padding:40px 20px;font-size:18px}.cart-items{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;margin-bottom:24px;display:grid}.cart-item{border:2px solid var(--accent-border)!important;background:var(--bg)!important;padding:15px!important}.cart-total{color:var(--text-h);text-align:right;background:var(--bg);border-radius:8px;margin-bottom:16px;padding:16px;font-size:24px;font-weight:700}.cart-clear-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:14px 20px;font-size:16px;font-weight:700;transition:all .3s}.cart-clear-btn:hover{opacity:.85;box-shadow:var(--shadow);transform:translateY(-2px)}.cart-clear-btn:active{transform:translateY(0)}@media (width<=768px){.cart-container{border-radius:10px;margin:0 15px;padding:16px}.cart-container h2{margin-bottom:16px;font-size:22px}.cart-empty{padding:30px 16px;font-size:16px}.cart-items{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:16px}.cart-item{padding:12px!important}.cart-total{margin-bottom:12px;padding:12px;font-size:20px}.cart-clear-btn{padding:11px 16px;font-size:14px}}@media (width<=480px){.cart-container{margin:0 10px;padding:12px}.cart-container h2{margin-bottom:12px;font-size:18px}.cart-empty{padding:20px 12px;font-size:14px}.cart-items{grid-template-columns:1fr;gap:10px}.cart-item{padding:10px!important}.cart-total{padding:10px;font-size:18px}.cart-clear-btn{padding:10px 14px;font-size:13px}}.range{width:100%}.sideBar{background:linear-gradient(135deg, var(--accent-bg), #aa3bff0d);flex-direction:column;gap:.5vh;width:8vw;height:90vh;padding:10px;display:flex}.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 20px;font-size:16px;font-weight:600;transition:all .3s}.btn:hover{opacity:.9;box-shadow:var(--shadow);transform:translateY(-3px)}.btn:active{transform:translateY(0)}.account-center{background:linear-gradient(#11121aeb,#11121afa);justify-content:center;align-items:center;min-height:calc(100vh - 60px);padding:40px 20px;display:flex}.profile-card{background:#1c1f30eb;border:1px solid #8b63ff40;border-radius:28px;grid-template-columns:180px 1fr;align-items:center;gap:32px;width:min(100%,860px);padding:36px;display:grid;box-shadow:0 24px 68px #00000059}.profile-avatar{background:linear-gradient(#8b63ff29,#11121acc);border:1px solid #ffffff14;border-radius:28px;justify-content:center;align-items:center;width:180px;height:180px;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-info{flex-direction:column;gap:24px;display:flex}.profile-heading{flex-direction:column;gap:8px;display:flex}.profile-heading h2{color:var(--text-h);margin:0;font-size:32px}.profile-title{color:var(--accent);letter-spacing:.5px;margin:0;font-size:16px;font-weight:600}.profile-fields{gap:16px;display:grid}.profile-fields label{color:var(--text);text-transform:uppercase;letter-spacing:.08em;font-size:14px;font-weight:600;display:block}.profile-fields input{width:100%;color:var(--text-h);background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;padding:14px 18px;font-size:15px}.profile-fields input:focus{border-color:#8b63ff73;outline:none;box-shadow:0 0 0 4px #8b63ff1f}.password-button{width:fit-content;color:var(--text-h);background:#8b63ff2e;border:1px solid #8b63ff59;border-radius:12px;padding:12px 18px;transition:all .25s}.password-button:hover{background:#8b63ff4d}.modal-backdrop{z-index:50;background:#0009;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-card{background:#11121afa;border:1px solid #8b63ff38;border-radius:24px;width:min(100%,520px);padding:32px;box-shadow:0 30px 90px #00000080}.modal-card h3{color:var(--text-h);margin:0 0 20px;font-size:24px}.modal-card label{color:var(--text);letter-spacing:.08em;text-transform:uppercase;margin:16px 0 8px;font-size:14px;display:block}.modal-card input{width:100%;color:var(--text-h);background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;padding:14px 16px;font-size:15px}.modal-message{color:var(--accent);margin:14px 0 0;font-size:14px}.modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.btn.secondary{color:var(--text);background:0 0;border:1px solid #ffffff1f}@media (width<=760px){.profile-card{grid-template-columns:1fr;padding:28px}.profile-avatar{width:140px;height:140px;margin:0 auto}.profile-heading h2{font-size:28px}}input{border:2px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:12px 16px;font-size:16px;transition:all .2s}input:focus{border-color:var(--accent);outline:none}
