/* Identité Smart : bleu, soleil jaune et illustration inspirée de Fécamp. */
body[data-smart-ui]{--smart-blue:#1469b4;--smart-navy:#102957;--smart-yellow:#ffda20;--smart-turquoise:#06b7c7;--smart-muted:#4d637f;--monitor-blue:#1469b4;--monitor-navy:#102957;--monitor-ink:#183354;--monitor-muted:#4d637f;--navy:#102957;--blue:#1469b4;--yellow:#ffda20;--soft:#f5faff;background:linear-gradient(140deg,#fff 20%,#edf8ff 70%,#f0fbfa);color:#183354;min-height:100vh;color-scheme:light}
body[data-smart-ui] :is(.monitor-header,.student-head){background:#ffffffed;border-bottom:1px solid #d7eaf7;box-shadow:0 5px 22px #1469b409;min-height:86px;height:auto;padding:14px 24px;gap:16px}
body[data-smart-ui] :is(.monitor-brand,.student-brand){color:#102957;gap:14px;text-transform:none;letter-spacing:-.025em}
body[data-smart-ui] :is(.monitor-brand,.student-brand) img{width:66px;height:66px;object-fit:contain;background:#fff;border-radius:50%;box-shadow:0 3px 12px #1469b414}
body[data-smart-ui] :is(.teacher-area-nav,.exam-console-tabs){background:#f2f9ff;border:1px solid #d4e9f8;border-radius:16px;padding:5px}
body[data-smart-ui] .teacher-area-nav a{color:#35516f;border-radius:12px;min-height:44px}
body[data-smart-ui] .teacher-area-nav a.is-active{background:#dff1ff;color:#1265b3;box-shadow:inset 0 -3px 0 #1265b3}
body[data-smart-ui] :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #1265b3;outline-offset:4px}
body[data-smart-ui] :is(input,select,textarea){font-size:16px;border-radius:12px;border-color:#b5d2e5;color:#183354;background:#fff;box-sizing:border-box;max-width:100%}
body[data-smart-ui] button:not(:disabled),body[data-smart-ui] summary{touch-action:manipulation}
body[data-smart-ui] :is(.teacher-login,.teacher-home-final,.exam-app,.moto-dashboard-app,.direction-app,.code-hub,.copilot-app,.booster-app){background:transparent}
body[data-smart-ui] .teacher-login-card{background:#fff;border:1px solid #d6e8f5;border-top:5px solid #ffda20;border-radius:26px;box-shadow:0 15px 45px #1469b412;overflow:hidden}
body[data-smart-ui] .teacher-login-card:before{content:"";display:block;height:110px;margin:-28px -28px 24px;background:var(--smart-scene) center 48%/cover}
body[data-smart-ui] :is(.teacher-login-submit,.teacher-demo-submit){min-height:50px;border-radius:14px;font-weight:800}
body[data-smart-ui] .teacher-login-submit{background:#ffda20;color:#102957;border:1px solid #edc717;box-shadow:0 5px 14px #e5b70018}
body[data-smart-ui] .teacher-demo-submit{background:#e6f5ff;color:#1265b3;border-color:#bbdff5}
/* Bandeaux : le paysage à droite, lecture et outils à gauche. */
body[data-smart-ui] :is(.code-hero,.direction-hero,.exam-heading,.teacher-home-final-header,.moto-dashboard-topbar,.gamer-topbar,.copilot-hero,.booster-toolbar){background:linear-gradient(90deg,#fff 0%,#fffffff5 42%,#ffffff8a 65%,#ffffff10 100%),var(--smart-scene) right center/cover;border:1px solid #d9ecf8;border-radius:26px;color:#102957;box-shadow:0 8px 25px #1469b40a;padding:26px;min-height:155px}
body[data-smart-ui] :is(.code-hero,.direction-hero,.exam-heading,.teacher-home-final-header,.moto-dashboard-topbar,.gamer-topbar,.copilot-hero,.booster-toolbar) :is(h1,h2,.monitor-kicker,.direction-kicker,.exam-eyebrow,.teacher-home-final-kicker,.moto-kicker,.gamer-label,.gamer-agency strong,.booster-kicker){color:#102957;text-shadow:none}
body[data-smart-ui] :is(.code-hero,.direction-hero,.exam-heading,.teacher-home-final-header,.moto-dashboard-topbar,.gamer-topbar,.copilot-hero,.booster-toolbar) :is(p,small,.gamer-agency span){color:#405d7b;font-size:15px;line-height:1.5}
body[data-smart-ui] :is(.direction-hero-note,.exam-private,.teacher-home-final-stat,.copilot-status){background:#ffffffe8;border:1px solid #d2e6f3;color:#183354;backdrop-filter:blur(8px);border-radius:14px}
body[data-smart-ui] .direction-hero-note :is(strong,span){color:#183354}
body[data-smart-ui] :is(.direction-panel,.exam-card,.moto-dashboard-panel,.moto-ready-table,.gamer-ready-list,.code-session,.copilot-qr,.copilot-room){background:#fff;border:1px solid #d5e8f5;border-radius:22px;box-shadow:0 7px 24px #1469b408}
body[data-smart-ui] :is(.direction-panel,.exam-card,.code-session) h2{color:#102957}
body[data-smart-ui] :is(.direction-metrics article,.secretariat-metric){border-color:#d1e7f5;border-radius:18px;background:#e8f5ff;box-shadow:none}
body[data-smart-ui] .direction-metrics article:nth-child(2){background:#e4f9f5}
body[data-smart-ui] .direction-metrics article:nth-child(3){background:#fff6cf}
body[data-smart-ui] :is(.direction-back,.exam-private,.monitor-back){min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;white-space:normal;text-decoration:none}
/* Accueil Code : quatre univers illustrés, un bouton identique par carte. */
body[data-smart-ui] .code-hub{max-width:1240px}
body[data-smart-ui] .code-formats{gap:20px}
body[data-smart-ui] .code-formats .code-tool{display:grid;grid-template-columns:145px minmax(0,1fr);grid-template-rows:auto auto auto;align-content:center;column-gap:18px;row-gap:8px;min-height:210px;padding:24px;border:1px solid #c9e8fc;border-radius:24px;background:linear-gradient(125deg,#e1f4ff,#eef9ff);box-shadow:0 8px 24px #1469b408;text-decoration:none;color:#102957}
body[data-smart-ui] .code-formats .code-tool:nth-child(2){background:linear-gradient(125deg,#ddf9f5,#ecfffc);border-color:#bdeee7}
body[data-smart-ui] .code-formats .code-tool:nth-child(3){background:linear-gradient(125deg,#fff4c8,#fffbed);border-color:#f0e2a5}
body[data-smart-ui] .code-formats .code-tool:nth-child(4){background:linear-gradient(125deg,#e9e9ff,#f4f3ff);border-color:#d7d7f7}
body[data-smart-ui] .smart-card-art{grid-row:1/4;width:145px;height:145px;object-fit:contain;align-self:center}
body[data-smart-ui] .code-formats .code-tool strong{font-size:clamp(21px,2.4vw,28px);line-height:1.15;letter-spacing:-.035em}
body[data-smart-ui] .code-formats .code-tool span{font-size:16px;line-height:1.4;color:#405d7b}
body[data-smart-ui] .smart-enter{justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 28px;margin-top:8px;border-radius:99px;background:#ffda20;color:#102957;font-size:17px;font-weight:800;box-shadow:0 5px 16px #ffcc0022}
body[data-smart-ui] .code-tool:hover{transform:translateY(-2px);box-shadow:0 12px 30px #1469b415;border-color:#1469b4}
/* Accueil enseignants et actions : couleurs utiles, informations bien contrastées. */
body[data-smart-ui] .teacher-day-tools>div>a{background:#e5f4ff;border:1px solid #cbe6f8;border-radius:20px;padding:20px;color:#102957;box-shadow:0 7px 20px #1469b408}
body[data-smart-ui] .teacher-day-tools>div>a:nth-child(2n){background:#e3f8f4}
body[data-smart-ui] .teacher-day-tools>div>a:nth-child(3n){background:#fff5d0}
body[data-smart-ui] .teacher-day-tools>div>a:nth-child(4n){background:#ececff}
body[data-smart-ui] .teacher-day-tools>div>a strong{font-size:19px;color:#102957}
body[data-smart-ui] .teacher-day-tools>div>a span{color:#405d7b;font-size:14px}
body[data-smart-ui] .teacher-home-final-exams{background:#e5f4ff;color:#102957;border-color:#c3e0f4}
body[data-smart-ui] .teacher-home-final-exams :is(strong,small,b){color:#102957}
body[data-smart-ui] .teacher-home-final-urgent{background:#def8f2;color:#135e66;border-color:#a8ddd2}
body[data-smart-ui] .teacher-home-final-urgent small{color:#285e65}
body[data-smart-ui] .teacher-home-final-harmobil{background:#fff1b8;color:#473a0f;border-color:#f0d477}
body[data-smart-ui] .teacher-home-final-success{background:linear-gradient(125deg,#fff6ca,#fffbe8);border-color:#f1d879}
body[data-smart-ui] .gamer-remote-voiture{background:transparent}
body[data-smart-ui] .gamer-topbar .gamer-agency{background:#ffffffd9;padding:12px;border-radius:14px}
body[data-smart-ui] .gamer-topbar .gamer-student-help{background:#ffffffbf;border-radius:6px;padding:4px}
body[data-smart-ui] .gamer-status-button{border-radius:20px}
body[data-smart-ui] .gamer-action-button{background:#e7f5ff;border-radius:18px}
body[data-smart-ui] :is(.exam-controls [data-exam-start],.exam-save,.workshop-primary){background:#ffda20;color:#102957;border-color:#edc717;border-radius:14px;font-weight:800}
body[data-smart-ui] .exam-console-tabs button[aria-selected=true]{background:#dff1ff;color:#1265b3;box-shadow:inset 0 -3px 0 #1265b3}
body[data-smart-ui] :is(.exam-remote button,.moto-action-card){border-radius:22px;box-shadow:0 6px 18px #1469b40a}
body[data-smart-ui] .exam-remote button{background:#e5f4ff;color:#1265b3;border-color:#bddff4}
body[data-smart-ui] .exam-remote button:nth-child(2){background:#fff5ce;color:#675214;border-color:#eedb8d}
body[data-smart-ui] .moto-action-card{background:#e6f5ff;border-color:#bddff4;color:#102957}
body[data-smart-ui] .moto-action-card:nth-child(2){background:#e3f8f4}
body[data-smart-ui] .moto-action-card :is(strong,span,small){color:#234d70}
body[data-smart-ui] .workshop-entry{background:#e6f5ff;color:#1265b3;border:1px solid #c4e1f4;border-radius:20px}
/* Élèves : même identité, navigation légère. */
body[data-smart-ui] #student-access{background:#fff;border:1px solid #cde5f6;border-top:5px solid #ffda20;border-radius:26px;box-shadow:0 15px 45px #1469b412;overflow:hidden;box-sizing:border-box}
body[data-smart-ui] #student-access:before{content:"";display:block;height:140px;margin:-24px -24px 22px;background:var(--smart-scene) right center/cover}
body[data-smart-ui] .student-login-brand{display:flex;align-items:center;gap:14px;font-weight:800;color:#102957}
body[data-smart-ui] .student-login-brand img{border-radius:50%;object-fit:contain}
body[data-smart-ui] #student-access .button.primary{background:#ffda20;color:#102957;border-radius:14px;min-height:50px;font-weight:800}
body[data-smart-ui] .side-nav{background:#edf7ff;color:#102957;border-right:1px solid #d4e9f8}
body[data-smart-ui] .side-nav>a{color:#385b7d;min-height:46px;border-radius:12px}
body[data-smart-ui] .side-nav>a span{color:#1469b4}
body[data-smart-ui] .side-nav>a.active{background:#ffdf45;color:#102957}
body[data-smart-ui] .side-nav>p{color:#506c87}
body[data-smart-ui] .welcome{padding:24px;border-radius:24px;border:1px solid #d5e9f7;background:linear-gradient(90deg,#fff 15%,#fffffff2 58%,#ffffff60),var(--smart-scene) right center/cover}
body[data-smart-ui] :is(.student-main .card,.exam-access-card,.zoom-card,.verification-feature){border-radius:20px;border-color:#cbe3f4;box-shadow:0 5px 18px #1469b407}
body[data-smart-ui] .student-main .button.primary{background:#ffda20;color:#102957;border-radius:99px}
/* Carnet : conserver la place des notes et la lisibilité. */
body[data-smart-ui] #smart-carnet{background:#f3faff;box-shadow:0 12px 35px #1469b40d}
body[data-smart-ui] #smart-carnet header{background:linear-gradient(90deg,#fff 10%,#fffffff2 55%,#ffffff70),var(--smart-scene) right center/cover;color:#102957;border:1px solid #d3e8f6;border-bottom:5px solid #ffda20}
body[data-smart-ui] #smart-carnet header small{color:#405d7b}
body[data-smart-ui] #smart-carnet header>span{background:#ffffffde;color:#102957}
body[data-smart-ui] #smart-carnet .yellow{background:#ffda20;box-shadow:none;border-radius:14px}
@media(max-width:900px){body[data-smart-ui] .code-formats .code-tool{grid-template-columns:100px minmax(0,1fr);padding:20px;column-gap:12px}body[data-smart-ui] .smart-card-art{width:100px;height:120px}}
@media(max-width:760px){body[data-smart-ui] :is(.monitor-header,.student-head){padding:12px 14px;flex-wrap:wrap}body[data-smart-ui] :is(.code-hero,.direction-hero,.exam-heading,.teacher-home-final-header,.moto-dashboard-topbar,.gamer-topbar,.copilot-hero,.booster-toolbar){padding:22px;background:linear-gradient(90deg,#fffffff5,#ffffffca),var(--smart-scene) right center/cover;min-height:140px}body[data-smart-ui] .code-formats{grid-template-columns:1fr}body[data-smart-ui] .code-formats .code-tool{grid-template-columns:115px minmax(0,1fr);min-height:180px;padding:20px}body[data-smart-ui] .smart-card-art{width:115px;height:130px}body[data-smart-ui] .code-formats .code-tool strong{font-size:23px}body[data-smart-ui] #student-access{margin:24px 12px!important}body[data-smart-ui] .welcome{padding:20px;background:linear-gradient(90deg,#fffffff5,#ffffffd0),var(--smart-scene) right center/cover}body[data-smart-ui] .direction-hero-note{min-width:0;max-width:100%}body[data-smart-ui] .teacher-login-card:before{height:90px}}
@media(max-width:360px){body[data-smart-ui] .code-formats .code-tool{grid-template-columns:80px minmax(0,1fr);padding:16px}body[data-smart-ui] .smart-card-art{width:80px}body[data-smart-ui] .smart-enter{padding:10px 22px}}
@media(prefers-reduced-motion:reduce){body[data-smart-ui] *,body[data-smart-ui] *:before,body[data-smart-ui] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body[data-smart-ui] .code-tool:hover{transform:none}}
/* Volume réel : illustrations 3D et hiérarchie proche de la maquette validée. */
body[data-smart-ui]{background:radial-gradient(ellipse at 95% 0,#d4eeff,transparent 40%),linear-gradient(145deg,#fff,#f4fbff 65%,#e9faff)}
body[data-smart-ui] .code-hub{max-width:1460px;padding:28px}
body[data-smart-ui] .code-hero{min-height:230px;padding:38px;border:0;background:linear-gradient(90deg,#fff 0%,#fffffff5 37%,#ffffffad 50%,#ffffff00 73%),var(--smart-scene) right center/cover;box-shadow:none}
body[data-smart-ui] .code-hero h1{font-size:clamp(38px,5.2vw,70px);font-weight:900;letter-spacing:-.05em;line-height:1.08;margin:10px 0;color:#102957}
body[data-smart-ui] .code-hero p{font-size:clamp(22px,2.5vw,32px);font-weight:600;color:#4c6488;margin:10px 0}
body[data-smart-ui] .code-hub>h2{font-size:19px;margin:24px 0 16px;color:#4d637f}
body[data-smart-ui] .code-formats{gap:24px;margin-top:18px}
body[data-smart-ui] .code-formats .code-tool{grid-template-columns:minmax(170px,.92fr) minmax(0,1.1fr);column-gap:20px;row-gap:12px;min-height:280px;padding:22px 26px 22px 12px;border:2px solid #fff;border-radius:28px;background:radial-gradient(ellipse at 12% 25%,#bee7ff,transparent 70%),linear-gradient(145deg,#e1f4ff,#d8f0ff);box-shadow:0 15px 32px #1d5fa418,inset 0 1px 0 #fff;transition:transform .18s ease,box-shadow .18s ease}
body[data-smart-ui] .code-formats .code-tool:nth-child(2){background:radial-gradient(ellipse at 18% 30%,#baf4ec,transparent 70%),linear-gradient(145deg,#ddfff9,#c9f5ef);border-color:#fff}
body[data-smart-ui] .code-formats .code-tool:nth-child(3){background:radial-gradient(ellipse at 12% 25%,#ffec9c,transparent 70%),linear-gradient(145deg,#fff8d8,#fff1b4);border-color:#fff}
body[data-smart-ui] .code-formats .code-tool:nth-child(4){background:radial-gradient(ellipse at 12% 25%,#d6d8ff,transparent 70%),linear-gradient(145deg,#f0f0ff,#e2e1ff);border-color:#fff}
body[data-smart-ui] .smart-card-art{display:block;width:100%;height:auto;aspect-ratio:1;max-height:260px;grid-row:1/4;align-self:center;background-image:url('assets/smart-univers-3d.png');background-size:200% 200%;background-repeat:no-repeat;filter:drop-shadow(0 9px 10px #1c65a411)}
body[data-smart-ui] .smart-art-rousseau{background-position:0 0}
body[data-smart-ui] .smart-art-booster{background-position:100% 0}
body[data-smart-ui] .smart-art-theme{background-position:0 100%}
body[data-smart-ui] .smart-art-salle{background-position:100% 100%}
body[data-smart-ui] .code-formats .code-tool strong{font-size:clamp(25px,2.8vw,38px);font-weight:900;letter-spacing:-.045em;line-height:1.12}
body[data-smart-ui] .code-formats .code-tool span:not(.smart-card-art){font-size:clamp(17px,1.6vw,22px);line-height:1.4;color:#405d7b}
body[data-smart-ui] .smart-enter{font-size:20px;min-height:56px;padding:13px 34px;background:linear-gradient(145deg,#ffe955,#ffcd00);border:1px solid #ffdf3c;box-shadow:0 6px 0 #e0b600,0 10px 22px #e4b70022;transition:transform .15s ease}
body[data-smart-ui] .code-tool:hover{transform:translateY(-4px);box-shadow:0 22px 38px #1d5fa425}
body[data-smart-ui] .code-tool:active .smart-enter{transform:translateY(3px);box-shadow:0 3px 0 #e0b600}
body[data-smart-ui] :is(.direction-panel,.exam-card,.gamer-ready-list,.code-session,.teacher-login-card){box-shadow:0 12px 30px #1469b414,inset 0 1px 0 #fff}
body[data-smart-ui] :is(.teacher-day-tools>div>a,.gamer-status-button,.moto-action-card){box-shadow:0 9px 0 #bed7e555,0 15px 28px #1469b413;border:2px solid #fff;border-radius:24px}
body[data-smart-ui] .teacher-day-tools>div>a strong{font-size:23px;font-weight:800}
body[data-smart-ui] :is(.gamer-action-icon,.teacher-home-final-exams-icon,.moto-action-icon){background:linear-gradient(145deg,#fff,#c7eaff);box-shadow:inset 0 2px 3px #fff,0 5px 10px #1469b422;border:1px solid #b4d9f4}
body[data-smart-ui] :is(.teacher-login-submit,.exam-save,.workshop-primary){background:linear-gradient(145deg,#ffe955,#ffcd00);box-shadow:0 5px 0 #dcb300,0 10px 18px #dcb30018;color:#102957}
@media(max-width:1050px){body[data-smart-ui] .code-formats .code-tool{grid-template-columns:minmax(125px,.85fr) minmax(0,1.15fr);padding:18px;min-height:240px;column-gap:12px}body[data-smart-ui] .code-formats .code-tool strong{font-size:29px}body[data-smart-ui] .code-formats .code-tool span:not(.smart-card-art){font-size:17px}body[data-smart-ui] .smart-enter{padding:12px 26px;font-size:18px}}
@media(max-width:760px){body[data-smart-ui] .code-hub{padding:14px}body[data-smart-ui] .code-hero{min-height:200px;padding:25px 20px;background:linear-gradient(90deg,#ffffffed,#ffffffb0),var(--smart-scene) right center/cover}body[data-smart-ui] .code-hero h1{font-size:42px}body[data-smart-ui] .code-hero p{font-size:23px}body[data-smart-ui] .code-formats{gap:20px}body[data-smart-ui] .code-formats .code-tool{grid-template-columns:minmax(120px,.85fr) minmax(0,1.15fr);min-height:230px;padding:18px 18px 18px 8px}body[data-smart-ui] .smart-card-art{width:100%;height:auto;max-height:none}body[data-smart-ui] .code-formats .code-tool strong{font-size:29px}}
@media(max-width:380px){body[data-smart-ui] .code-formats .code-tool{grid-template-columns:105px minmax(0,1fr);min-height:215px;column-gap:10px}body[data-smart-ui] .code-formats .code-tool strong{font-size:25px}body[data-smart-ui] .code-formats .code-tool span:not(.smart-card-art){font-size:15px}body[data-smart-ui] .smart-enter{padding:11px 22px;min-height:48px;font-size:17px}}
@media(prefers-reduced-motion:reduce){body[data-smart-ui] .code-tool:hover,body[data-smart-ui] .code-tool:active .smart-enter{transform:none}}

/* Vues distinctes, illustrées à partir des références de Fécamp fournies. */
body[data-smart-ui]{--smart-scene:url('assets/fecamp-cap-reference.webp')}
body[data-smart-ui][data-smart-scene=port]{--smart-scene:url('assets/fecamp-port-reference.webp')}
body[data-smart-ui][data-smart-scene=promenade]{--smart-scene:url('assets/fecamp-promenade-reference.webp')}
