@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--bg:#f7f7f4;--card:#fff;--ink:#171717;--muted:#7b7b76;--line:#e7e7e2;--red:#b20b13;--radius:13px}
*{box-sizing:border-box}html[lang=en] body{font-family:Manrope,Arial,sans-serif}html[lang=ar] body{font-family:"IBM Plex Sans Arabic",Tahoma,sans-serif}
body{margin:0;background:var(--bg);color:var(--ink)}a{color:inherit}.container{max-width:980px;margin:auto;padding:34px 16px 60px}
.site-header{height:64px;padding:0 max(16px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;background:#fffc;border-bottom:1px solid var(--line);backdrop-filter:blur(12px);position:sticky;top:0;z-index:30}
.brand{text-decoration:none;font:700 18px Manrope}.brand span{color:var(--red)}.header-actions{display:flex;align-items:center;gap:14px;font-size:12px}.header-actions>a{text-decoration:none;color:#555}.badge{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:20px;background:var(--red);color:#fff;font-size:8px;margin-inline-start:4px}
.language{position:relative}.language-button{width:48px;height:34px;border:1px solid var(--line);background:#fff;border-radius:9px;cursor:pointer}.language-menu{display:none;position:absolute;top:40px;inset-inline-end:0;width:140px;padding:5px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 35px #0001}.language-menu.open{display:block}.language-menu a{display:block;text-decoration:none;padding:8px;border-radius:7px;font-size:11px}.language-menu a:hover{background:var(--bg)}
.page-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:22px}.page-head h1{font-size:26px;margin:0}.page-head p{margin:5px 0 0;color:var(--muted);font-size:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:0;border-radius:9px;padding:0 14px;background:#171717;color:#fff;text-decoration:none;font:600 11px inherit;cursor:pointer}.btn.secondary{background:#fff;color:#222;border:1px solid var(--line)}.btn.danger{background:#8d1f24}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:17px}.notice{margin-bottom:16px;padding:10px 12px;border-radius:9px;background:#eef6ee;font-size:12px}
.training-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 16px}.day-card{text-decoration:none}.thumb{aspect-ratio:16/9;border-radius:12px;background:#242424 center/cover no-repeat;position:relative;display:grid;place-items:center;overflow:hidden}.day-label{position:absolute;top:10px;inset-inline-start:10px;background:#fffffff2;padding:5px 7px;border-radius:7px;font:700 9px Manrope;color:#222}.play{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#111}.day-card h3{font-size:13px;margin:9px 2px 3px}.day-card small{font-size:10px;color:var(--muted)}.day-card.locked{cursor:default}.day-card.locked .thumb{background-color:#e9e9e6}.day-card.locked .thumb:after{content:'';position:absolute;inset:0;background:#7778;z-index:1}.day-card.locked .day-label,.day-card.locked .lock{z-index:2}.lock{font-size:17px;background:#fff;border:1px solid var(--line);width:38px;height:38px;border-radius:50%;display:grid;place-items:center}.unlock{display:inline-block;margin-top:5px;padding:5px 7px;background:#ededeb;border-radius:7px}
.player-page{max-width:860px;margin:auto}.player-page h1{font-size:22px;margin:0 0 15px}.player{aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden}.player iframe{width:100%;height:100%;border:0}.lesson-actions{display:flex;gap:8px;justify-content:center;margin-top:12px}.equipment{min-width:210px}
.ask-chef{margin-top:22px;border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden}.ask-toggle{width:100%;height:44px;padding:0 12px;border:0;background:#fff;display:flex;align-items:center;gap:8px;font:600 12px inherit;cursor:pointer}.ask-toggle .arrow{margin-inline-start:auto}.chat-body{display:none;padding:10px;border-top:1px solid var(--line)}.ask-chef.open .chat-body{display:block}.thread{display:flex;flex-direction:column;gap:7px;margin-bottom:8px}.bubble{max-width:76%;padding:8px 10px;border-radius:10px;font-size:11px}.bubble.student{margin-inline-start:auto;background:#171717;color:#fff}.bubble.admin{background:#f0f0ed}.chat-form{display:flex;gap:7px}.chat-form textarea{flex:1;min-height:40px;max-height:110px;resize:vertical;border:1px solid var(--line);border-radius:9px;padding:9px;font:inherit;font-size:11px}.chat-form .btn{align-self:end}
.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat strong{display:block;font-size:28px;margin:7px 0}.stat span{font-size:11px;color:var(--muted)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:11px;color:#555}.field input,.field select,.field textarea{width:100%;border:1px solid #dcdcd7;border-radius:8px;padding:10px;background:#fff;font:inherit;font-size:12px}.field textarea{min-height:90px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:11px}.table th,.table td{padding:11px 8px;border-top:1px solid #eee;text-align:start;white-space:nowrap}.actions{display:flex;gap:6px}
.filters{display:flex;gap:5px;margin-bottom:12px}.filter{padding:6px 10px;border:0;border-radius:20px;background:transparent;font:500 10px inherit;text-decoration:none}.filter.active{background:#171717;color:#fff}.inbox{padding:0}.message-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:12px 14px;border-top:1px solid #eee;text-decoration:none}.message-row:first-child{border-top:0}.message-row.unread{background:#fafaf7}.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#171717;color:#fff;font-size:11px}.message-copy{min-width:0}.message-copy b{font-size:11px}.message-copy small{font-size:9px;color:#999;margin-inline-start:7px}.message-copy p{margin:3px 0 0;color:#777;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:7px;height:7px;border-radius:50%;background:var(--red)}
.login{max-width:390px;margin:9vh auto;padding:24px;background:#fff;border:1px solid var(--line);border-radius:16px}.login h1{font-size:22px}.login .field{margin-bottom:12px}
@media(max-width:720px){.header-actions>a:not(:last-child){display:none}.training-grid{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}
@media(max-width:480px){.container{padding-top:24px}.training-grid{grid-template-columns:1fr}.page-head h1{font-size:22px}.bubble{max-width:88%}}

.intro-block{max-width:700px;margin:0 auto 42px}.intro-block h2{font-size:18px;margin:0 0 12px}.start-label{max-width:900px;margin:0 auto 24px;text-align:center;font-size:10px;letter-spacing:.12em;color:#999}

/* Branding & login */
.brand img{display:block;max-width:118px;max-height:34px;object-fit:contain}
.branding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.upload-card{display:block;border:1px solid var(--line);border-radius:12px;padding:12px;cursor:pointer}.upload-card input{display:none}.upload-card strong,.upload-card small{display:block}.upload-card strong{font-size:12px;margin-top:9px}.upload-card small{font-size:10px;color:var(--muted);margin-top:2px}.upload-preview{height:150px;border-radius:9px;background:#f2f2ef;display:grid;place-items:center;overflow:hidden}.upload-preview img{width:100%;height:100%;object-fit:cover}.upload-preview.logo-preview img{object-fit:contain;padding:24px}.upload-preview b{font-size:24px;font-weight:400;color:#aaa}.branding-save{grid-column:1/-1;padding-top:4px}
.login-page{min-height:100vh;background:#fff}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr)}.login-visual{padding:18px;background:#f2f1ed}.login-visual picture,.login-visual picture img{display:block;width:100%;height:100%}.login-visual picture img{object-fit:cover;border-radius:18px}.login-fallback{height:100%;min-height:520px;border-radius:18px;background:linear-gradient(145deg,#16080a,#b20b13);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:52px}.login-fallback span{font:700 12px Manrope;letter-spacing:.16em}.login-fallback h2{max-width:520px;font-size:36px;line-height:1.2;margin:12px 0 0}.login-panel{padding:30px clamp(28px,5vw,76px);display:flex;flex-direction:column}.login-top{display:flex;align-items:center;justify-content:space-between;min-height:44px}.login-logo{max-width:145px;max-height:44px;object-fit:contain}.login-wordmark{font:700 19px Manrope}.login-wordmark span{color:var(--red)}.login-language .language-menu{z-index:10}.login-form-wrap{width:100%;max-width:410px;margin:auto}.login-heading{margin-bottom:27px}.login-heading h1{font-size:29px;line-height:1.2;margin:0 0 7px}.login-heading p{font-size:12px;color:var(--muted);margin:0}.login-form .field{margin-bottom:14px}.login-form .field label{font-size:11px;font-weight:600;color:#383838}.login-form .field input{height:47px;border-radius:10px;padding:0 13px;font-size:13px}.login-submit{width:100%;height:47px;margin-top:3px;border-radius:10px;background:var(--red);font-size:12px}.support-link{display:block;width:100%;margin-top:20px;border:0;background:none;color:#777;font:500 10px inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.error-notice{background:#fff0f0;color:#8c1d24}.login-page .language-button{background:#fff}
@media(max-width:820px){.login-shell{grid-template-columns:1fr 1fr}.login-panel{padding:26px}.login-fallback h2{font-size:28px}.branding-grid{grid-template-columns:1fr}}
@media(max-width:720px){.login-shell{display:flex;min-height:100vh;flex-direction:column}.login-visual{padding:12px 12px 0;background:#fff}.login-visual picture,.login-visual picture img{height:auto}.login-visual picture img{aspect-ratio:1/1;max-height:340px;object-fit:cover;border-radius:15px}.login-fallback{min-height:260px;padding:26px}.login-fallback h2{font-size:25px}.login-panel{flex:1;padding:20px 20px 28px}.login-top{order:0}.login-form-wrap{margin:28px auto 0}.login-heading{margin-bottom:20px}.login-heading h1{font-size:25px}}

/* V4 login — approved full-bleed layout */
.login-page{height:100vh;min-height:100vh;overflow:hidden;background:#fff}
.login-shell{height:100vh;min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);background:#fff}
.login-visual{padding:0!important;margin:0;background:#111;min-width:0;min-height:0;overflow:hidden}
.login-visual picture{display:block;width:100%;height:100%}
.login-visual picture img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0!important}
.login-fallback{height:100%;min-height:100%;border-radius:0;padding:0;background:linear-gradient(145deg,#16080a,#b20b13)}
.login-fallback>*{display:none}
.login-panel{min-height:100vh;padding:clamp(28px,4vw,68px) clamp(34px,6vw,96px);display:flex;flex-direction:column;background:#fff}
.login-top{min-height:58px}.login-logo{max-width:180px;max-height:64px}.login-wordmark{font-size:28px}
.login-form-wrap{max-width:430px;margin:auto;width:100%}.login-form .field{margin-bottom:15px}.login-form .field input{height:50px;border-radius:9px}.login-submit{height:48px;border-radius:8px;font-size:13px}
.support-link{margin:18px auto 0;width:auto;max-width:100%;display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;color:#555;font-size:10px}.support-link:hover{color:var(--red)}.support-icon{width:20px;height:20px;border:1.5px solid var(--red);color:var(--red);border-radius:50%;display:inline-grid;place-items:center;font-size:0}.support-icon:after{content:'···';font-size:10px;line-height:1;transform:translateY(-2px)}
@media(max-width:720px){
  .login-page{height:100dvh;min-height:100dvh;overflow:hidden;background:#111}
  .login-shell{display:block;position:relative;width:100%;height:100dvh;min-height:100dvh;background:#111;overflow:hidden}
  .login-visual{position:absolute;inset:0;width:100%;height:100%;z-index:0}
  .login-visual picture,.login-visual picture img{width:100%;height:100%;min-height:100%;object-fit:cover}
  .login-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,#0000000a 30%,#00000028 100%);pointer-events:none}
  .login-panel{position:absolute;z-index:2;inset:0;min-height:100%;height:100%;padding:16px;display:flex;flex-direction:column;justify-content:flex-end;background:transparent}
  .login-top{position:absolute;top:14px;inset-inline:14px;min-height:38px;display:flex;justify-content:flex-end;pointer-events:none}
  .login-top>.login-logo,.login-top>.login-wordmark{display:none}
  .login-language{pointer-events:auto}.login-page .language-button{background:#fffffff2;backdrop-filter:blur(8px)}
  .login-form-wrap{width:100%;max-width:390px;margin:0 auto 14px;padding:24px 20px 18px;background:#fffffff5;border:1px solid #ffffff90;border-radius:18px;box-shadow:0 18px 55px #0004;backdrop-filter:blur(12px)}
  .login-form-wrap:before{content:'BIG CHEF';display:block;text-align:center;margin:0 auto 20px;font:800 25px Manrope;color:#111;letter-spacing:-.05em}
  html[lang=ar] .login-form-wrap:before{content:'BIG CHEF'}
  .login-form .field{margin-bottom:11px}.login-form .field label{font-size:10px}.login-form .field input{height:45px;background:#fff}
  .login-submit{height:45px}.support-link{margin-top:14px;font-size:9px;line-height:1.4}
}
.login-logo-mobile,.login-wordmark-mobile{display:none}
@media(max-width:720px){
 .login-form-wrap:before{display:none!important}
 .login-logo-mobile{display:block;max-width:155px;max-height:56px;object-fit:contain;margin:0 auto 19px}
 .login-wordmark-mobile{display:block;text-align:center;font:800 25px Manrope;margin:0 auto 19px}.login-wordmark-mobile span{color:var(--red)}
}

.actions{flex-wrap:wrap}.actions form{margin:0}.password-row{display:flex;gap:7px;align-items:center}.password-row input{flex:1}.password-reset-box small{display:block;margin-top:6px;color:#777;font-size:10px}@media(max-width:720px){.password-row{align-items:stretch;flex-direction:column}}


/* Admin V6 — approved layout */
.admin-page{background:#f6f6f4}.admin-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;height:100vh;background:#101010;color:#fff;padding:25px 15px;display:flex;flex-direction:column}.admin-brand{font:900 25px Manrope;text-decoration:none;margin-bottom:28px}.admin-brand span{color:var(--red)}.admin-nav{display:flex;flex-direction:column;gap:3px}.admin-nav a{position:relative;color:#aaa;text-decoration:none;padding:12px;border-radius:9px;font-size:12px}.admin-nav a:hover{background:#1b1b1b;color:#fff}.admin-nav .badge{position:absolute;inset-inline-end:10px;background:#fff;color:var(--red)}.admin-side-bottom{margin-top:auto;display:flex;flex-direction:column;gap:9px}.admin-logout{color:#aaa;text-decoration:none;font-size:11px;padding:8px 2px}.admin-main{padding:35px;min-width:0;max-width:1400px;width:100%;margin:0 auto}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.dashboard-stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px}.dashboard-stat small{display:block;color:#777}.dashboard-stat strong{display:block;font-size:27px;margin-top:7px}.dashboard-stat span,.dashboard-stat a{display:inline-block;margin-top:4px;color:#29955b;font-size:10px}.dashboard-panels{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}.dashboard-panels h3{margin:0 0 8px;font-size:13px}.quick-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid #eee;font-size:12px}.quick-row:last-child{border-bottom:0}.quick-row a{color:var(--red);text-decoration:none;font-size:10px}
.modern-language{width:auto!important;min-width:116px;padding:0 8px!important;display:flex;align-items:center;gap:7px}.language-icon{margin-inline-start:auto;width:21px;height:21px;border-radius:7px;background:#f2f2ef;color:#777;display:grid;place-items:center}.flag-icon{display:inline-block;width:22px;height:15px;border-radius:3px;box-shadow:0 0 0 1px #0002;flex:none;position:relative;overflow:hidden}.flag-us{background:repeating-linear-gradient(to bottom,#b22234 0 1.15px,#fff 1.15px 2.3px)}.flag-us:after{content:'';position:absolute;left:0;top:0;width:9px;height:8px;background:#3c3b6e}.flag-sa{background:#0a8f47}.flag-sa:after{content:'';position:absolute;left:5px;right:5px;top:7px;height:1px;background:#fff}.language-menu a{display:flex;align-items:center;gap:7px}
.conversation-card{padding:0;margin-top:12px;overflow:hidden}.conversation-head{padding:16px;border-bottom:1px solid #eee}.conversation-head small{display:block;color:#888;margin-top:3px}.conversation-body{height:470px;overflow:auto;padding:18px;background:#fcfcfa;display:flex;flex-direction:column;gap:8px}.message-composer{padding:12px;border-top:1px solid #eee;display:flex;gap:7px;align-items:flex-end;background:#fff}.message-composer textarea{flex:1;min-height:43px;max-height:110px;resize:vertical;border:1px solid #ddd;border-radius:10px;padding:10px;font:inherit;font-size:11px}.attach-button{width:43px;height:43px;display:grid;place-items:center;border:1px solid #ddd;background:#fff;border-radius:10px;cursor:pointer;font-size:17px}.attach-button.has-file{border-color:var(--red);background:#fff7f7}.attach-button input{display:none}.chat-attachment{margin-top:7px;border:1px solid #ddd;border-radius:9px;padding:8px;background:#fff;color:#222;text-decoration:none;display:flex;align-items:center;gap:8px;max-width:300px}.chat-attachment.image{display:block}.chat-attachment.image img{display:block;width:100%;max-height:190px;object-fit:cover;border-radius:6px;margin-bottom:6px}.chat-attachment.video{display:block}.chat-attachment.video video{display:block;width:100%;max-height:220px;border-radius:6px;background:#000;margin-bottom:6px}.file-icon{font-size:20px}.empty-state{padding:20px;text-align:center;color:#888;font-size:12px}.student-composer{padding:8px 0 0;border-top:0}.student-composer .attach-button{height:40px;width:40px}.student-composer textarea{min-height:40px}
@media(max-width:850px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto;display:block;padding:14px}.admin-brand{display:block;margin-bottom:10px}.admin-nav{flex-direction:row;overflow:auto}.admin-nav a{white-space:nowrap}.admin-side-bottom{display:none}.admin-main{padding:18px}.dashboard-stats{grid-template-columns:1fr 1fr}.dashboard-panels{grid-template-columns:1fr}.conversation-body{height:430px}}
@media(max-width:520px){.dashboard-stats{grid-template-columns:1fr}.message-composer{align-items:stretch;flex-wrap:wrap}.message-composer textarea{order:0;flex:1 1 calc(100% - 50px)}.message-composer .btn{width:100%}}

.admin-image-preview{display:block;width:150px;aspect-ratio:16/9;object-fit:cover;border-radius:9px;border:1px solid var(--line);margin-bottom:7px}.field textarea[name^=video_],.field textarea[name^=intro_video_]{min-height:120px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;direction:ltr;text-align:left}

/* V8 usability refinements */
.brand-image,.admin-brand-image{display:flex;align-items:center;min-width:44px;min-height:32px}
.brand-image img{display:block;max-width:130px;max-height:38px;object-fit:contain}
.admin-brand-image img{display:block;max-width:150px;max-height:52px;object-fit:contain}
.flag-svg{display:block;width:24px;height:16px;border-radius:3px;box-shadow:0 0 0 1px #0002;flex:none}
.selected-attachment{height:43px;max-width:210px;padding:0 8px;display:flex;align-items:center;gap:6px;border:1px solid #e4b8bb;background:#fff8f8;border-radius:10px;color:#333;font-size:10px;min-width:0}
.selected-attachment[hidden]{display:none!important}.selected-attachment [data-file-name]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-attachment button{border:0;background:transparent;color:#888;font-size:16px;cursor:pointer;margin-inline-start:auto}
.password-input-wrap{position:relative;display:flex;align-items:center;flex:1}.password-input-wrap input{width:100%;padding-inline-end:42px!important}.password-eye{position:absolute;inset-inline-end:6px;width:32px;height:32px;border:0;border-radius:7px;background:#f2f2ef;cursor:pointer;display:grid;place-items:center;opacity:.72}.password-eye.active{background:#fff0f0;opacity:1}
.home-support{display:flex;justify-content:center;margin:28px 0 0}.home-contact-button{min-width:150px;background:#fff!important;color:#222!important}
@media(max-width:720px){.selected-attachment{order:1;max-width:100%;flex:1 1 100%}.message-composer textarea{order:2}.message-composer>.btn{order:3}.home-support{margin-top:20px}}

.login-form-wrap:before{display:none!important}.login-wordmark,.login-wordmark-mobile{display:none!important}
