@import"https://fonts.bunny.net/css?family=inter:400,500,600,700,800&display=swap";:root{--hassou-navy-950: #00122f;--hassou-navy-900: #001a45;--hassou-navy-850: #002157;--hassou-navy-800: #002b6b;--hassou-blue-700: #004fc4;--hassou-blue-600: #0068f0;--hassou-blue-500: #008cff;--hassou-cyan-500: #00d9f5;--hassou-cyan-400: #20e8f7;--hassou-white: #ffffff;--hassou-background: #f5f9ff;--hassou-background-soft: #edf5ff;--hassou-border: #d6e3f1;--hassou-text: #081526;--hassou-muted: #617086;--hassou-danger: #c83f49;--hassou-success: #138765;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--hassou-text);background:var(--hassou-background);font-synthesis:none}*{box-sizing:border-box}html{min-height:100%}body{margin:0;min-height:100vh;background:radial-gradient(circle at 85% 0%,rgba(0,217,245,.07),transparent 28rem),var(--hassou-background);color:var(--hassou-text)}a{color:inherit}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(214,227,241,.9);background:#fffffff0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.header-inner{width:min(1440px,calc(100% - 2.5rem));min-height:78px;margin:0 auto;display:flex;align-items:center;gap:28px}.brand{flex-shrink:0;display:inline-flex;align-items:center;gap:11px;text-decoration:none}.brand-mark{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(135deg,var(--hassou-navy-900),var(--hassou-blue-600));color:var(--hassou-cyan-400);font-size:21px;font-weight:800;box-shadow:0 8px 24px #002b6b29}.brand-copy{display:flex;flex-direction:column;line-height:1.15}.brand-name{color:var(--hassou-navy-950);font-size:15px;font-weight:800}.brand-name strong{color:var(--hassou-blue-600)}.brand-subtitle{margin-top:4px;color:var(--hassou-muted);font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}.main-nav a{padding:9px 12px;border-radius:9px;color:var(--hassou-muted);text-decoration:none;font-size:14px;font-weight:700;transition:color .18s ease,background .18s ease}.main-nav a:hover{color:var(--hassou-blue-600);background:var(--hassou-background-soft)}.main-nav a.active{color:var(--hassou-blue-600);background:#eaf3ff}.header-account{display:flex;align-items:center;gap:12px}.mode-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #cfe0f3;border-radius:999px;background:#f4f9ff;color:var(--hassou-blue-700);text-decoration:none;font-size:12px;font-weight:800}.mode-indicator{width:7px;height:7px;border-radius:50%;background:var(--hassou-cyan-500);box-shadow:0 0 0 3px #00d9f524}.user-summary{display:inline-flex;align-items:center;gap:10px;padding:5px;border-radius:10px;color:var(--hassou-text);text-decoration:none;transition:background-color .2s ease}.user-summary:hover{background:#edf5ff;text-decoration:none}.user-summary:focus-visible{outline:2px solid var(--hassou-blue-600);outline-offset:3px}.header-avatar{width:36px;height:36px;flex-shrink:0;border-radius:50%;object-fit:cover}.header-avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;background:var(--hassou-blue-600);color:#fff;font-size:15px;font-weight:800}.user-summary-copy{display:flex;flex-direction:column;min-width:0;line-height:1.2}.user-summary-copy strong{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.user-summary-copy span{margin-top:3px;color:var(--hassou-muted);font-size:10px}.user-summary strong{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.user-summary span{margin-top:3px;color:var(--hassou-muted);font-size:10px}.sign-out-button,.header-login{border:0;background:transparent;color:var(--hassou-muted);font:inherit;font-size:12px;font-weight:700;text-decoration:none;cursor:pointer}.sign-out-button:hover,.header-login:hover{color:var(--hassou-blue-600)}.header-register{padding:9px 14px;border-radius:9px;background:linear-gradient(90deg,var(--hassou-blue-600),#00bfe5);color:#fff;text-decoration:none;font-size:12px;font-weight:800}.page-shell{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:54px 0 80px}.global-status{margin-bottom:24px;padding:14px 17px;border:1px solid #b8e5db;border-radius:12px;background:#effbf7;color:#12664f;font-size:14px}.eyebrow{margin:0 0 10px;color:var(--hassou-blue-600);font-size:.75rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}h1{margin:0;color:var(--hassou-navy-950);font-size:clamp(2.25rem,5vw,4.8rem);line-height:1.02;letter-spacing:-.045em}h2,h3{margin-top:0;color:var(--hassou-navy-950)}.lead{max-width:760px;margin:1.25rem 0 0;color:var(--hassou-muted);font-size:1.05rem;line-height:1.75}.muted{color:var(--hassou-muted)}.hero{max-width:860px;padding:68px 0 80px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border:1px solid var(--hassou-border);border-radius:10px;background:#fff;color:var(--hassou-text);font-weight:700;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-1px);border-color:#a8caef;box-shadow:0 8px 24px #00337814}.button.primary{border-color:transparent;background:linear-gradient(90deg,var(--hassou-blue-600),#00c9e9);color:#fff;box-shadow:0 10px 30px #0068f02e}.card{display:block;padding:1.35rem;border:1px solid var(--hassou-border);border-radius:16px;background:#fffffff5;box-shadow:0 10px 35px #00245a0b}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}.stat-card strong{display:block;color:var(--hassou-navy-950);font-size:2rem}.stat-card span{color:var(--hassou-muted)}.section-block{margin-top:3rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-heading a{color:var(--hassou-blue-600);font-weight:700}.stack{display:grid;gap:1rem}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}.course-card{min-height:230px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;transition:transform .18s ease,border-color .18s ease}.course-card:hover{transform:translateY(-2px);border-color:#8ec5ff}.pill{display:inline-block;margin-bottom:1rem;padding:.34rem .62rem;border-radius:999px;background:#eaf5ff;color:var(--hassou-blue-700);font-size:.72rem;font-weight:800;text-transform:uppercase}.module-list{margin-top:1rem;border-top:1px solid #e4edf6}.module-row{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid #e4edf6}.empty-state{border-style:dashed}.back-link{display:inline-block;margin-bottom:1.5rem;color:var(--hassou-blue-600);font-weight:700;text-decoration:none}code{padding:.15rem .35rem;border-radius:.35rem;background:#eaf2fb}.site-footer{border-top:1px solid var(--hassou-border);background:#fff}.footer-inner{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:28px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--hassou-muted)}.footer-inner>div{display:flex;flex-direction:column;gap:5px}.footer-inner strong{color:var(--hassou-navy-950);font-size:13px}.footer-inner span,.footer-inner p{margin:0;font-size:11px}@media(max-width:980px){.header-inner{flex-wrap:wrap;gap:12px;padding:12px 0}.main-nav{order:3;width:100%;margin-left:0}.header-account{margin-left:auto}}@media(max-width:760px){.header-inner{width:min(100% - 1.4rem,1180px)}.brand-subtitle{display:none}.user-summary{display:inline-flex}.main-nav{overflow-x:auto}.page-shell{padding-top:34px}.stat-grid,.course-grid{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.header-account{gap:8px}.user-summary{padding:4px;flex-shrink:0}.user-summary-copy{display:none}.header-avatar{width:34px;height:34px}.mode-chip{display:none}.brand-mark{width:36px;height:36px}.brand-name{font-size:13px}}
