:root { --ink:#292d25; --paper:#f5f5ed; --raspberry:#a32b62; --lime:#a4be39; }
body { background:radial-gradient(ellipse at top right,#e9efd6,transparent 50%),var(--paper); color:var(--ink); margin:0; }
.client-header {display:flex;align-items:center;gap:24px;padding:20px 5%;border-bottom:4px solid var(--lime);background:#fff;}
.client-logo img {width:270px;height:44px;object-fit:contain;background:#959595;border-radius:5px;}
.client-tag {letter-spacing:.13em;font-size:11px;font-weight:750;color:#69734b;}
.client-user {margin-left:auto;font-size:13px;}.client-user a{margin-left:16px;color:var(--raspberry);}
.client-nav {display:flex;gap:25px;padding:16px 5%;background:#fff;flex-wrap:wrap;border-bottom:1px solid #e1e5d5;}.client-nav a{font-size:14px;font-weight:650;color:var(--ink);}.client-nav a:hover{color:var(--raspberry);}
.agency-switch {padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#edf0e1;font-size:12px;}.agency-switch form{display:flex;gap:12px;align-items:center;}.agency-switch select{max-width:400px;width:auto;background:white;padding:8px;}.agency-switch span{color:#687353;}
.client-main {max-width:1240px;margin:0 auto;padding:32px 24px;min-height:65vh;}.client-main h1{font-size:clamp(28px,3.5vw,44px);letter-spacing:-.04em;line-height:1.15;}.eyebrow{font-size:11px;letter-spacing:.17em;color:#69734b;font-weight:800;}.lead{color:#68705e;max-width:680px;margin:12px 0 28px;line-height:1.6;}.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;}
.agency-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}.agency-card{background:#fff;border:1px solid #e2e5d8;border-radius:16px;overflow:hidden;box-shadow:0 8px 20px #30391905;}.agency-card img{width:100%;height:180px;object-fit:cover;}.agency-info{padding:22px;}.agency-info h2{font-size:18px;min-height:44px;}.agency-info p{font-size:13px;color:#606653;margin:10px 0;}.agency-info a{overflow-wrap:anywhere;}.agency-info button{margin-top:15px;}
.wall-photo{position:relative;height:360px;border-radius:20px;overflow:hidden;margin-bottom:26px;background:#69734b;}.wall-photo>img{width:100%;height:100%;object-fit:cover;}.wall-caption{position:absolute;inset:0;background:linear-gradient(transparent 15%,#172019db);display:flex;flex-direction:column;justify-content:flex-end;padding:34px;color:white;}.wall-caption h1{color:white;max-width:820px;}.wall-caption .eyebrow{color:#dceca5;}.wall-caption p{margin-top:12px;}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0;}.tile{padding:26px;border-radius:15px;background:#fff;border:1px solid #e2e5d8;color:var(--ink);}.tile strong{font-size:38px;display:block;color:var(--raspberry);}.tile p{margin-top:9px;color:#667058;font-size:13px;}.panel{background:white;padding:25px;border-radius:16px;border:1px solid #e2e5d8;margin:20px 0;}.panel h2{font-size:21px;margin-bottom:16px;}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;}.form-grid label,.field{display:block;font-size:13px;font-weight:650;}.form-grid input,.form-grid select,.field input,.field select{margin:6px 0 12px;width:100%;}.notice{padding:17px 20px;border-left:4px solid var(--lime);background:#eef3df;border-radius:6px;color:#4b5a36;font-size:13px;line-height:1.65;}.badge{background:#eef3df;color:#50651f;}.table-wrap{overflow-x:auto;}.client-main td{font-size:14px;}.client-main th{font-size:11px;letter-spacing:.08em;}.empty{padding:35px;color:#69735c;text-align:center;}.row-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}.record-line{border-bottom:1px solid #ecefe3;padding:17px 0;display:flex;gap:18px;justify-content:space-between;align-items:center;}.record-line small{display:block;color:#657151;margin-top:5px;}.client-footer{padding:25px;text-align:center;font-size:12px;color:#68735b;}.btn-primary{background:var(--raspberry)!important;}.btn{white-space:normal;}.client-main details summary{cursor:pointer;color:var(--raspberry);font-weight:700;}.client-main input[type=checkbox]{width:auto;margin-right:10px;}.key-form{margin-top:20px;}.search{display:flex;gap:10px;margin:20px 0;}.search input{max-width:400px;}
@media(max-width:850px){.agency-grid{grid-template-columns:1fr 1fr;}.two-col{grid-template-columns:1fr;}.client-tag{display:none;}.agency-switch{align-items:flex-start;}.agency-switch span{display:none;}.tiles{grid-template-columns:1fr 1fr;}}
@media(max-width:540px){.agency-grid,.tiles,.form-grid{grid-template-columns:1fr;}.client-header{padding:15px;gap:12px;flex-wrap:wrap;}.client-logo img{width:215px;height:35px;}.client-user{margin-left:0;}.client-nav{padding:12px 16px;gap:14px;}.client-main{padding:22px 15px;}.agency-switch form{display:block;width:100%;}.agency-switch select{width:100%;max-width:100%;margin-top:5px;}.wall-photo{height:320px;}.wall-caption{padding:22px;}.page-head{align-items:flex-start;flex-direction:column;}.record-line{align-items:flex-start;flex-direction:column;}}
/* Operations and quick star navigation */
.week-board{display:grid;grid-template-columns:repeat(7,minmax(170px,1fr));gap:10px;overflow-x:auto;margin:25px 0;padding-bottom:15px}.day-column{background:#eef1e5;border-radius:12px;padding:12px;min-height:240px}.day-column h2{font-size:15px}.day-column h2 small{display:block;color:#687354}.booking{border-left:4px solid #a4be39;background:white;padding:13px;margin-top:13px;border-radius:6px;font-size:12px}.booking strong{font-size:14px}.booking p{margin:6px 0;overflow-wrap:anywhere}.booking-conge{border-color:#a32b62}.booking-entretien{border-color:#b57423}.booking select{max-width:100%;font-size:12px}.ops-launcher{position:fixed;right:22px;bottom:22px;z-index:50;background:#a32b62;color:#fff;border:0;border-radius:35px;padding:14px 20px;box-shadow:0 8px 24px #30132630;font-size:24px;cursor:pointer}.ops-launcher span{font-size:14px}.ops-star{border:0;border-radius:22px;width:min(96vw,540px);max-height:95vh;padding:30px;background:#f8faef;color:#292d25}.ops-star::backdrop{background:#15201999;backdrop-filter:blur(5px)}.ops-star h2{font-size:19px;max-width:85%}.ops-close{position:absolute;right:15px;top:15px;border:0;background:none;font-size:28px;cursor:pointer}.star-orbit{position:relative;height:390px;margin-top:15px}.star-orbit a{position:absolute;top:50%;left:50%;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y)));width:115px;min-height:65px;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px;border-radius:16px;background:white;border:1px solid #dce5c7;font-size:13px;font-weight:700;color:#385021}.star-orbit a:hover{background:#b2cd40}.star-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:65px;color:#a32b62}.wall-post{padding:20px;background:white;border:1px solid #e2e5d8;border-radius:12px;margin-top:14px}.wall-post p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:12px}.wall-post small{color:#657151}.room-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:15px}.chat-layout{min-height:65vh}.chat-main{min-width:0}.client-main{padding-bottom:95px}@media(max-width:450px){.star-orbit{height:320px}.star-orbit a{transform:translate(calc(-50% + var(--x)*.72),calc(-50% + var(--y)*.78));width:90px;min-height:55px;font-size:12px}.ops-star{padding:22px 10px}.ops-star h2{font-size:16px}.chat-sidebar{display:none}.chat-layout{display:block}.chat-main{width:100%}}

/* Restore the centered Skhole launcher and dialog, above the agency ticker. */
#petal-launcher.petal-launcher{left:50%;right:auto;transform:translateX(-50%);bottom:calc(60px + env(safe-area-inset-bottom))!important;background:#a32b62;z-index:270}
#petal-menu.client-petal{position:fixed;inset:0;margin:auto;width:min(460px,calc(100vw - 20px));max-height:calc(100dvh - 24px);padding:22px 12px;overflow:auto;background:#f8faeff5;border-radius:30px}
#petal-menu.client-petal[open]{display:block}#petal-menu h2{text-align:center;font-size:19px;margin:4px 30px 0}.client-petal .star-orbit{height:370px;margin-top:10px}.client-petal .star-orbit a{width:106px;min-height:60px;font-size:12px}.client-petal::backdrop{background:#17291f66;backdrop-filter:blur(5px)}
.student-avatar{width:48px;height:48px;object-fit:cover;border-radius:14px;max-width:none}.avatar-empty{display:grid;place-items:center;background:#eef1e5;color:#657151;font-size:12px}.student-portrait{width:110px;height:130px;object-fit:cover;border-radius:18px;margin-top:14px}.monitor-picker{margin:20px 0;padding:18px;border:1px solid #dce5c7;border-radius:12px}.monitor-picker label{display:inline-flex;align-items:center;gap:8px;margin:8px 18px 8px 0}.monitor-picker input[type=checkbox]{width:18px;height:18px}.table-wrap td small{display:block}.client-main{padding-bottom:130px}.ticker-viewport:hover .ticker-track{animation-play-state:paused}
@media(max-width:450px){.client-petal .star-orbit{height:315px}.client-petal .star-orbit a{width:86px;min-height:54px;transform:translate(calc(-50% + var(--x)*.73),calc(-50% + var(--y)*.80))}}

/* Student workspace: a quiet summary rail and clearly separated work areas. */
.pupil-page{--pupil-ink:#27382e;--pupil-muted:#68766b;--pupil-line:#e0e6dc;max-width:1280px;margin:auto;color:var(--pupil-ink)}.pupil-page *{box-sizing:border-box}.pupil-back{display:inline-block;font-size:13px;color:var(--pupil-muted);margin:0 0 22px}.pupil-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:linear-gradient(120deg,#fff 50%,#eef3dd);border:1px solid var(--pupil-line);border-radius:22px}.pupil-identity{display:flex;align-items:center;gap:22px;min-width:0}.pupil-photo{width:88px;height:104px;object-fit:cover;border-radius:18px;flex-shrink:0}.pupil-initial{display:grid;place-items:center;background:#dce7c4;color:#426044;font:40px Georgia,serif}.pupil-kicker{font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--pupil-muted);margin:0 0 12px;line-height:1.6}.pupil-hero h1{font-family:Georgia,serif;font-size:clamp(27px,3vw,40px);font-weight:400;letter-spacing:-.035em;line-height:1.15;margin:0 0 14px;overflow-wrap:anywhere}.pupil-tags{display:flex;flex-wrap:wrap;gap:7px}.pupil-tags span,.pupil-count{background:#eef3e6;color:#45613e;border-radius:30px;padding:6px 11px;font-size:12px}.pupil-tags .pupil-pending{background:#f8eaf0;color:#96305e}.pupil-primary,.pupil-secondary{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:8px;border:0;border-radius:11px;padding:12px 17px;font:600 13px 'Trebuchet MS',sans-serif;cursor:pointer;line-height:1.4;text-decoration:none}.pupil-primary{background:#a32b62;color:white}.pupil-secondary{background:#f0f3ea;color:#344d36;border:1px solid #d9e2d2}.pupil-primary:hover{background:#86214f;color:#fff}.pupil-tabs{display:flex;gap:6px;border-bottom:1px solid var(--pupil-line);margin:16px 0 25px;overflow-x:auto;padding:0 0 8px}.pupil-tabs a{white-space:nowrap;font-size:13px;padding:12px 15px;color:var(--pupil-muted);border-radius:9px}.pupil-tabs a:first-child{color:#a32b62;background:#f7eaf0;font-weight:700}.pupil-tabs a:hover{background:#edf2e6}.pupil-tabs span{font-size:10px;margin-left:5px}.pupil-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start}.pupil-sidebar,.pupil-body{display:grid;gap:20px;min-width:0}.pupil-card{background:#fff;border:1px solid var(--pupil-line);border-radius:18px;padding:25px;min-width:0;scroll-margin-top:30px}.pupil-card h2{font-size:21px;font-weight:600;letter-spacing:-.03em;line-height:1.3;margin:0 0 14px}.pupil-card h3{font-size:17px;margin:9px 0}.pupil-facts{margin:0;display:grid;gap:18px}.pupil-facts dt,.pupil-readonly dt{font-size:11px;color:var(--pupil-muted);margin-bottom:5px}.pupil-facts dd,.pupil-readonly dd{margin:0;font-size:13px;overflow-wrap:anywhere;line-height:1.6}.pupil-number{font-variant-numeric:tabular-nums;letter-spacing:.08em}.pupil-person{display:flex;gap:11px;align-items:center;margin:15px 0}.pupil-person>span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#eef3e3;color:#527345;flex-shrink:0}.pupil-person strong{display:block;font-size:13px}.pupil-person small{display:block;font-size:11px;color:var(--pupil-muted);margin-top:4px}.pupil-text-link{font-size:12px;color:#a32b62;text-decoration:underline;text-underline-offset:4px}.pupil-next{padding:25px;border-radius:18px;background:#eaf0d7;border:1px solid #dae5bd}.pupil-next>p:last-child{font:italic 19px/1.55 Georgia,serif;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.pupil-section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:8px}.pupil-section-head h2{margin-bottom:6px}.pupil-count{white-space:nowrap;font-size:11px}.pupil-muted{font-size:13px;line-height:1.7;color:var(--pupil-muted);margin:8px 0 18px}.pupil-skills{display:grid;grid-template-columns:1fr 1fr;gap:23px 26px;margin-top:25px}.pupil-skill>div:first-child{display:flex;justify-content:space-between;align-items:start;gap:9px}.pupil-skill strong{font-size:12px;font-weight:600;line-height:1.5}.pupil-level{font-size:10px;white-space:nowrap;color:#6c796b;background:#f1f4ed;padding:3px 6px;border-radius:5px}.pupil-level.level-3{background:#e7f0d7;color:#45692c}.pupil-segments{display:flex;gap:5px;margin-top:10px}.pupil-segments span{height:5px;border-radius:4px;flex:1;background:#edf1e9}.pupil-segments span.filled{background:#aac44f}.pupil-empty{padding:17px 20px;background:#f8faf4;color:var(--pupil-muted);font-size:13px;line-height:1.7;border:1px dashed #dce4d2;border-radius:10px;margin:22px 0 0}.pupil-editor>summary{font-size:15px;font-weight:600;cursor:pointer;padding:5px 0;line-height:1.6}.pupil-editor[open]>summary{margin-bottom:18px}.pupil-form{display:grid;gap:18px;margin-top:18px}.pupil-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pupil-form label{display:grid;gap:7px;font-size:12px;font-weight:600;color:#52614f;min-width:0}.pupil-form input:not([type=checkbox]),.pupil-form select,.pupil-form textarea{width:100%;max-width:none;min-width:0;border:1px solid #d9e1d4;background:#fafbf8;color:#2d3c2f;border-radius:9px;padding:11px 12px;font:14px/1.5 'Trebuchet MS',sans-serif;box-shadow:none}.pupil-form input[type=file]{font-size:11px;padding:9px;white-space:normal}.pupil-form textarea{resize:vertical}.pupil-form :is(input,textarea,select):focus{outline:2px solid #b3c876;outline-offset:2px}.pupil-wide{grid-column:1/-1}.pupil-assessment{border:1px solid #e1e7db;border-radius:12px;padding:18px;margin:0;min-width:0}.pupil-assessment legend{padding:0 6px;font-size:12px;color:#64735d}.pupil-form-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #edf0e8;padding-top:18px}.pupil-form-footer>span{font-size:11px;color:var(--pupil-muted)}.pupil-form .pupil-check{display:flex;align-items:center;font-weight:400}.pupil-form input[type=checkbox]{width:17px;height:17px;accent-color:#a32b62}.pupil-form .monitor-picker{margin:0;border-color:var(--pupil-line)}.pupil-form .monitor-picker label{display:inline-flex}.pupil-timeline{margin-top:18px}.pupil-session{border-left:2px solid #dfe7d1;padding:0 0 28px 22px;position:relative}.pupil-session:before{content:'';width:10px;height:10px;border-radius:50%;background:#a9be57;position:absolute;left:-6px;top:3px}.pupil-session:last-child{padding-bottom:0}.pupil-session-meta{display:flex;gap:14px;font-size:11px;color:var(--pupil-muted)}.pupil-session-meta time{font-weight:bold;color:#547241}.pupil-note{font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.pupil-session-objective{font-size:12px;line-height:1.7;padding:12px 15px;background:#f4f7ee;border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere}.pupil-session-objective strong{display:block;margin-bottom:5px}.pupil-session footer{font-size:10px;color:#7c8577;margin-top:16px}.pupil-session-details summary{font-size:11px;color:#a32b62;cursor:pointer}.pupil-session-details dl>div{display:flex;justify-content:space-between;gap:10px;padding:6px 0;font-size:11px}.pupil-session-details dd{margin:0}.pupil-document{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--pupil-line);padding:16px 0;flex-wrap:wrap}.pupil-document>div{flex:1}.pupil-document strong{font-size:13px}.pupil-document small,.pupil-audit small{display:block;color:var(--pupil-muted);font-size:11px;margin-top:6px}.pupil-document form{margin:0}.pupil-readonly{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pupil-audit{padding:12px 0;border-bottom:1px solid var(--pupil-line);font-size:12px}#transfert .pupil-editor{margin-top:20px}.pupil-page :is(a,button,summary):focus-visible{outline:2px solid #a32b62;outline-offset:4px}
@media(min-width:1000px){.pupil-sidebar{position:sticky;top:20px}}@media(max-width:950px){.pupil-layout{grid-template-columns:220px minmax(0,1fr);gap:16px}.pupil-card{padding:20px}.pupil-skills{grid-template-columns:1fr}.pupil-hero{padding:22px}.pupil-form-grid{grid-template-columns:1fr}.pupil-wide{grid-column:auto}}@media(max-width:680px){.pupil-hero{align-items:stretch;flex-direction:column;gap:20px;padding:20px}.pupil-identity{gap:15px}.pupil-photo{width:64px;height:80px;border-radius:12px}.pupil-hero h1{font-size:28px}.pupil-kicker{font-size:9px;letter-spacing:.1em}.pupil-layout{grid-template-columns:1fr}.pupil-sidebar{grid-template-columns:1fr}.pupil-card{padding:20px}.pupil-tabs a{padding:10px;font-size:12px}.pupil-section-head{align-items:flex-start;flex-direction:column}.pupil-form-footer{align-items:stretch;flex-direction:column}.pupil-primary{width:100%}.pupil-session{padding-left:16px}.pupil-document{gap:12px}.pupil-readonly{grid-template-columns:1fr}.pupil-next>p:last-child{font-size:18px}.pupil-sidebar .pupil-facts{grid-template-columns:1fr}.pupil-page{padding-bottom:15px}}
