main.container{padding:26px 0 40px;padding-bottom:calc(var(--bottom-h) + 12px)}.card{border-radius:var(--radius);background:linear-gradient(#1b2026eb,#171c21eb);border:1px solid #2a343e;padding:22px 20px;box-shadow:0 6px 22px #00000047}.bottom-nav{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-height:var(--bottom-min);background:#14181cf2;border-top:1px solid #26303a;border-radius:0;align-items:center;margin:0;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav--phone{background:linear-gradient(#0a10171f,#0a1017eb 24%),#14181cf5;border-top:0;box-shadow:0 -14px 32px #0000002e}.bottom-nav__inner{min-height:var(--bottom-min);align-items:center;gap:8px;width:min(1100px,92%);margin-inline:auto;padding:8px 12px;display:flex}.bottom-nav__link{min-width:0;color:var(--muted);white-space:nowrap;border-radius:12px;flex:1 1 0;justify-content:center;align-items:center;gap:8px;padding:10px 12px;text-decoration:none;transition:background .12s,color .12s;display:inline-flex;position:relative}.bottom-nav__link:hover{color:var(--text);background:#1c2228}.bottom-nav__link.is-active{color:var(--text);background:#212730;outline:1px solid #2a343e}.bottom-nav__link.is-locked{opacity:.65}.bottom-nav__link.is-disabled{color:#707986;opacity:.42;cursor:not-allowed;background:#1c222873}.bottom-nav__link.is-disabled:hover{color:#707986;background:#1c222873}.bottom-nav__link.is-onboarding-target{color:#f8fafc;background:linear-gradient(#2b7fff,#1d4ed8);outline:1px solid #bfdbfecc;animation:1.5s ease-in-out infinite bottom-nav-target-pulse;box-shadow:0 0 #3b82f673}.bottom-nav__link.is-onboarding-target:hover{color:#f8fafc;background:linear-gradient(#2b7fff,#1d4ed8)}.bottom-nav__link.is-onboarding-target .bottom-nav__icon{animation:1.1s ease-in-out infinite bottom-nav-target-icon}.bottom-nav__lock{font-size:14px;line-height:1}@keyframes bottom-nav-target-pulse{0%,to{transform:translateY(0)scale(1);box-shadow:0 0 #3b82f633}50%{transform:translateY(-2px)scale(1.04);box-shadow:0 0 0 10px #3b82f600}}@keyframes bottom-nav-target-icon{0%,to{transform:rotate(0)scale(1)}35%{transform:rotate(-8deg)scale(1.08)}65%{transform:rotate(8deg)scale(1.08)}}.bottom-nav__icon{justify-content:center;align-items:center;font-size:clamp(18px,2.4vw,24px);line-height:1;display:inline-flex}.bottom-nav__icon-image{object-fit:contain;width:clamp(22px,2.8vw,28px);height:clamp(22px,2.8vw,28px);display:block}.bottom-nav__label{font-size:clamp(12px,1.6vw,15px);line-height:1}.bottom-nav__floating-settings{right:14px;bottom:calc(var(--bottom-h) + env(safe-area-inset-bottom) + 12px);z-index:55;width:54px;height:54px;color:var(--text);background:linear-gradient(#19242ef5,#121a22f5);border:1px solid #9dc1d63d;border-radius:999px;justify-content:center;align-items:center;text-decoration:none;transition:transform .14s,background .14s,box-shadow .14s;display:inline-flex;position:fixed;box-shadow:0 12px 24px #00000052,0 0 0 1px #ffffff08}.bottom-nav__floating-settings:hover{background:linear-gradient(#212d39fa,#141d26fa);transform:translateY(-1px)}.bottom-nav__floating-settings.is-active{background:linear-gradient(#2b7fff,#1d4ed8);outline:1px solid #bfdbfebf}.bottom-nav__floating-settings.is-disabled{opacity:.42;cursor:not-allowed;color:#707986;background:#1c2228c7}.bottom-nav__floating-settings.is-onboarding-target{animation:1.5s ease-in-out infinite bottom-nav-target-pulse}.bottom-nav--phone .bottom-nav__inner{gap:6px;width:100%;padding:10px 12px}.bottom-nav--phone .bottom-nav__link{border-radius:16px;flex-direction:column;gap:4px;min-height:56px;padding:8px 4px}.bottom-nav--phone .bottom-nav__label{text-overflow:ellipsis;text-align:center;white-space:normal;max-width:72px;font-size:11px;line-height:1.1;display:block;overflow:hidden}.bottom-nav--phone .bottom-nav__icon,.bottom-nav--phone .bottom-nav__icon-image{width:22px;height:22px;font-size:22px}@media (max-width:400px){.bottom-nav__inner{gap:6px}.bottom-nav__link{gap:6px;padding:8px 10px}.bottom-nav__floating-settings{width:50px;height:50px;right:12px}}@media (max-width:640px){.bottom-nav__inner{gap:4px;width:96%;padding:6px 8px}.bottom-nav__link{gap:0;min-height:44px;padding:10px 6px}.bottom-nav__label{display:none}.bottom-nav__icon{font-size:24px}.bottom-nav__icon-image{width:24px;height:24px}.bottom-nav__link.is-onboarding-target{animation-duration:2.2s}.bottom-nav__lock{font-size:11px;position:absolute;top:4px;right:4px}}:root{--bg:#121417;--surface:#1a1f24;--muted:#aab2bd;--text:#e9eef5;--primary:#7cc88a;--ring:#91d8a0;--radius:14px;--app-bg:none;--dvh:100dvh;--header-h:56px;--bottom-h:64px;--gap-rows:8px;--header-vh:10dvh;--main-vh:70dvh;--bottom-vh:10dvh;--header-min:48px;--bottom-min:56px;--page-width:95vw;--page-height:80dvh;--page-height-effective:min(var(--page-height),calc(var(--dvh) - var(--header-h) - var(--bottom-h) - 24px))}.app-shell--phone{--header-h:0px;--bottom-h:84px;--bottom-min:74px;--page-width:100vw;--page-height:auto;--page-height-effective:calc(var(--dvh) - var(--header-h) - var(--bottom-h) - 24px);--radius:22px}.header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1a1f24d9;border-bottom:1px solid #26303a;position:sticky;top:0}.header__inner{justify-content:space-between;align-items:center;padding:14px 0;display:flex}.brand{align-items:center;gap:10px;font-weight:700;display:flex}.nav{gap:14px;display:flex}.nav__link{color:var(--muted);border-radius:10px;padding:8px 10px;text-decoration:none}.nav__link:hover{color:var(--text);background:#222a31}.header--phone{z-index:60;background:linear-gradient(#0a1218f5,#0e1922e0);border-bottom:1px solid #9dc1d62e;position:fixed;top:0;left:0;right:0}.header__inner--phone{gap:8px;padding:12px 14px 10px;display:grid}.header__phone-topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.brand__pill{color:#d7f4dd;letter-spacing:.04em;text-transform:uppercase;background:#7cc88a29;border:1px solid #7cc88a52;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.header__phone-mode{color:#aabed0;font-size:11px}.header__phone-titleblock{gap:2px;display:grid}.header__phone-title{color:#f8fbff;font-size:20px;line-height:1.1}.header__phone-caption{color:#aabed0;font-size:12px}.container{width:100%;max-width:100%;margin:0}.app-shell{min-height:var(--dvh);flex-direction:column;display:flex}.app-shell>main{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:var(--header-h)0 calc(var(--bottom-h) + 24px);flex:1;justify-content:center;display:flex;overflow:hidden auto}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%}body{color:var(--text);background-image:url(./background-DoWtfcJC.png);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:fixed;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,Apple Color Emoji,Segoe UI Emoji;overflow:hidden;padding-top:0!important}@supports (padding:max(0px)){.bottom-nav{padding-bottom:max(0px,env(safe-area-inset-bottom))}}.app-shell main.container{min-height:100%;display:flex}.viewport-center{min-height:calc(var(--dvh) - var(--header-h) - var(--bottom-h) - 24px);flex:1;justify-content:center;align-items:center;width:100%;min-width:0;padding:12px 0 20px;display:flex}.app-shell--phone>main{padding:calc(var(--header-h) + 10px)0 calc(var(--bottom-h) + 16px);overscroll-behavior-y:auto;overflow-y:auto}.app-shell--phone main.container{min-height:auto}.app-shell--phone .viewport-center{align-items:flex-start;min-height:auto;padding:0 12px 18px}.app-shell--phone .sheet{width:calc(100vw - 24px);max-width:calc(100vw - 24px);min-height:max(520px,var(--page-height-effective));border-radius:24px;height:auto;max-height:none;padding:18px 16px 20px;box-shadow:0 18px 34px #080f192e}.app-shell--phone .sheet--bounded{height:auto;max-height:none}.app-shell--phone .sheet__body--scroll{overflow:visible}.app-shell--phone .home-tips-panel{border-radius:24px;width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:none;padding:18px 16px 20px}.app-shell--phone .home-tips-panel__title{font-size:22px}.app-shell--phone .home-tips-panel__tip-title{font-size:20px}.sheet{width:min(var(--page-width),95vw);max-width:min(var(--page-width),95vw);min-width:0;height:var(--page-height-effective);min-height:var(--page-height-effective);max-height:var(--page-height-effective);color:#1b2938;border-radius:var(--radius);background:#ffffffe6;border:1px solid #2a343e;margin:0 auto;padding:20px;overflow:auto;box-shadow:0 10px 30px #00000040}.sheet__header{margin-bottom:10px}.sheet--bounded{height:var(--page-height-effective);max-height:var(--page-height-effective)}.sheet__body--scroll{-webkit-overflow-scrolling:touch;flex:auto;width:100%;min-height:0;padding-bottom:12px;overflow:auto}.home-tips-panel{-webkit-overflow-scrolling:touch;background:#ffffffeb;border:1px solid #11182726;border-radius:20px;flex-direction:column;gap:14px;width:min(560px,100vw - 32px);max-width:min(560px,100vw - 32px);min-height:0;max-height:min(360px,100vh - 120px);padding:20px 22px;display:flex;overflow-y:auto;box-shadow:0 14px 32px #0f172a29}.home-tips-panel__title{font-size:24px}.home-tips-panel__intro{font-size:14px}.home-tips-panel__card{background:linear-gradient(135deg,#f8fafcf2,#ffffffe6);border:1px solid #0f172a1a;border-radius:16px;gap:8px;min-height:0;padding:18px 18px 20px;display:grid}.home-tips-panel__counter{letter-spacing:.08em;text-transform:uppercase;color:#5f6c86;margin:0;font-size:12px}.home-tips-panel__tip-title{color:#1f2a44;margin:0;font-size:22px}.home-tips-panel__tip-detail{color:#42526b;margin:0;line-height:1.55}.schools-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.schools-list__item{background:#ffffffa6;border:1px solid #d9dee5;border-radius:10px;grid-template-columns:auto 1fr;gap:12px;padding:10px 12px;display:grid}.schools-list__logo{object-fit:cover;background:#fff;border:1px solid #d1d9e2;border-radius:8px;width:40px;height:40px}.schools-list__name{font-weight:700}.schools-list__meta{opacity:.9;font-size:12px}.empty{text-align:center;opacity:.8;padding:24px;font-weight:600}.btn-animated{--btn-bg:#fff;--btn-stroke:#2a343e;--btn-stroke-w:2px;--btn-radius:12px;--btn-pad:8px;--btn-gap:4px;--btn-img-h:80px;--btn-maxw:none;max-width:var(--btn-maxw);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;padding:0;display:inline-flex}.btn-animated__content{align-items:center;gap:var(--btn-gap);padding:var(--btn-pad);background:var(--btn-bg);border-radius:var(--btn-radius);border:var(--btn-stroke-w)solid var(--btn-stroke);flex-direction:column;transition:transform .14s,box-shadow .14s;display:inline-flex;box-shadow:0 2px 8px #0000001f}.btn-animated__img{height:var(--btn-img-h);width:auto;transition:transform .2s;display:block;transform:translateZ(0)}.btn-animated__label{white-space:pre-line;text-align:center;word-break:break-word;line-height:1.15;display:block}.btn-animated:hover .btn-animated__content{box-shadow:0 6px 18px #0000002e}.btn-animated:hover .btn-animated__img{transform:scale(1.06)}.btn-animated:active .btn-animated__content,.btn-animated[aria-pressed=true] .btn-animated__content{transform:scale(.97)}.btn-animated:focus-visible .btn-animated__content{outline:3px solid var(--ring,#91d8a0);outline-offset:2px}.form{gap:16px;display:grid}.form__field{gap:6px;display:grid}.form__label{font-weight:600}.input{font:inherit;background:#fff;border:2px solid #2a343e;border-radius:10px;padding:10px 12px}.input::placeholder{color:#334155}.input:focus{outline-offset:1px;border-color:#1f2937;outline:3px solid #1f293747}.appreciation-input{background:#eef2f6;border-color:#2a343e}.appreciation-input:focus{background:#e2e8f0;border-color:#1f2937}.evaluation-form__select-field{width:95%;max-width:95%;margin-inline:auto}.evaluation-form__select{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;width:100%;min-width:0;max-width:100%;height:auto;line-height:1.25}.evaluation-form__select option{white-space:normal}.evaluation-form-page__header{gap:10px}.evaluation-form-page__title{margin:0}.evaluation-form-page__form{gap:0;display:grid}.evaluation-form-page__block-title{margin-bottom:10px}.evaluation-form-page__classes-list{margin:0}.form__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:12px;display:flex}.btn{font:inherit;cursor:pointer;background:#fff;border:1px solid #2a343e;border-radius:10px;padding:10px 14px}.btn--primary{color:#fff;background:#2a343e;border-color:#2a343e}.btn:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.btn-animated__content,.btn-animated__img{transition:none}}.form__row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:720px){.form__row{grid-template-columns:1fr}}.hint{opacity:.8;font-size:12px}.hint.error{color:#b00020}.logo-preview{margin-top:8px}.logo-preview img{background:#fff;border:1px solid #d1d9e2;border-radius:8px;width:auto;height:56px}.school-details{gap:16px;display:grid}.school-details__top{grid-template-columns:auto 1fr;gap:12px;display:grid}.schools-list__link{color:inherit;grid-template-columns:auto 1fr;align-items:center;gap:12px;text-decoration:none;display:grid}.schools-list__item:hover .schools-list__name{text-decoration:underline}.modal-backdrop{z-index:40;background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.modal{color:#1b2938;background:#fff;border:1px solid #2a343e;border-radius:14px;width:min(560px,92vw);padding:18px;box-shadow:0 10px 30px #00000040}.modal h2{margin:0 0 8px}.modal p{margin:8px 0}.modal code{background:#eef2f6;border-radius:6px;padding:0 6px}.modal .form__field{width:100%;min-width:0}.modal .input{width:100%;min-width:0;max-width:100%}.startup-required-backdrop{z-index:39}.startup-required{gap:12px;display:grid}.startup-required__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.startup-required__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0;font-size:12px;font-weight:700}@media (max-width:640px){.startup-required__grid{grid-template-columns:1fr}}.paywall{flex-direction:column;gap:12px;display:flex}.paywall__header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.paywall__close{cursor:pointer;background:#fff;border:1px solid #d1d9e2;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.paywall__eyebrow{text-transform:uppercase;letter-spacing:.08em;opacity:.75;margin:0;font-size:12px}.paywall__hint{margin:4px 0 0}.paywall__body{gap:12px;display:grid}.paywall__perks{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.paywall__perks li{color:#0f172a;background:#f5f8fb;border:1px solid #d9e2ed;border-radius:10px;padding:8px 10px;font-weight:600}.paywall__plans{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.paywall__card{background:linear-gradient(#fdfefe,#f6f9fb);border:1px solid #d9e2ed;border-radius:12px;gap:10px;padding:14px;display:grid;box-shadow:0 6px 18px #0000000f}.paywall__card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.paywall__plan-name{color:#0f172a;font-size:16px;font-weight:800}.paywall__pitch{color:#1f2937;margin:0}.paywall__sku{color:#475569;margin:0;font-size:12px}.paywall__actions{flex-wrap:wrap;gap:8px;display:flex}.paywall__disclaimer{color:#475569;margin:0;font-size:12px}.auth-required{max-width:min(460px,100vw - 24px)}.auth-required__body{gap:14px;display:grid}.auth-required__eyebrow{text-transform:uppercase;letter-spacing:.08em;opacity:.75;margin:0;font-size:12px}.auth-required__actions{justify-content:center;display:flex}.settings-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.settings-cards--single{grid-template-columns:minmax(280px,560px)}.settings-card{background:linear-gradient(#fdfefe,#f6f9fb);border:1px solid #d9e2ed;border-radius:12px;gap:10px;padding:14px;display:grid;box-shadow:0 6px 18px #0000000f}.settings-card__head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.settings-card__title{margin:0;font-size:16px}.settings-card__pitch{color:#1f2937;margin:0}.settings-card__actions{flex-wrap:wrap;gap:8px;display:flex}.settings-card__details{gap:10px;display:grid}.settings-card__detail{background:#ffffffd1;border:1px solid #dbe4ee;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.settings-card__detail strong{color:#0f172a}.settings-card__value{color:#334155;text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.settings-sections-locked{opacity:.38;filter:grayscale();pointer-events:none;-webkit-user-select:none;user-select:none}.settings-card--needs-attention{animation:1.8s ease-in-out infinite settings-card-attention;box-shadow:0 0 #f973162e}@keyframes settings-card-attention{0%,to{transform:translateY(0);box-shadow:0 0 #f973161f}50%{transform:translateY(-2px);box-shadow:0 0 0 10px #f9731600}}.status-pill{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.status-pill--ok{color:#0d5a2d;background:#e4f6ea;border:1px solid #bde6c8}.status-pill--off{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0}@media (max-width:640px){.settings-card__detail{flex-direction:column;align-items:flex-start}.settings-card__value{text-align:left}}@media (prefers-reduced-motion:reduce){.settings-card--needs-attention{animation:none}}@media (max-width:720px){.schools-toolbar{gap:8px}.evaluations-toolbar{justify-content:flex-start;gap:10px;width:100%}.schools-toolbar__action{padding:0}.evaluations-toolbar__action{padding:6px 8px}.schools-toolbar__icon,.evaluations-toolbar__icon{width:52px;height:52px}.evaluations-toolbar__label{display:none}.evaluations-filters{width:100%}.evaluations-filter-field--status,.evaluations-filter-field--domain,.evaluations-filter-field--subdomain,.evaluations-filter-field--school,.evaluations-filter-field--class,.evaluations-filter-field--date{display:none}.evaluations-filter-field--keywords{width:100%;margin-top:0!important}:root{--mobile-header-gap:10px;--mobile-bottom-gap:5px;--page-height-effective:calc(var(--dvh) - var(--header-h) - var(--bottom-h) - var(--mobile-header-gap) - var(--mobile-bottom-gap))}html,body,#root{height:auto;min-height:100%}body{background-attachment:scroll;overflow:hidden auto}.app-shell{min-height:auto}.app-shell>main{overscroll-behavior-y:auto;-webkit-overflow-scrolling:auto;min-height:auto;padding:calc(var(--header-h) + var(--mobile-header-gap))0 calc(var(--bottom-h) + var(--mobile-bottom-gap));overflow:visible}.app-shell main.container{min-height:auto}.viewport-center{min-height:var(--page-height-effective);align-items:flex-start;padding:0 10px}.sheet{width:min(var(--page-width),calc(100vw - 20px));max-width:min(var(--page-width),calc(100vw - 20px));min-width:0;height:var(--page-height-effective);min-height:var(--page-height-effective);max-height:var(--page-height-effective);border-radius:18px;padding:16px 14px;overflow:auto}.sheet--bounded{height:var(--page-height-effective);max-height:var(--page-height-effective);width:min(var(--page-width),calc(100vw - 20px))!important}.sheet__body--scroll{overflow:hidden auto}.sheet .form__field{min-width:0!important}.modal{width:min(560px,100vw - 20px);padding:16px 14px}.modal .form__label{white-space:normal;overflow-wrap:anywhere}.modal select.input{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;height:auto;line-height:1.25}.home-tips-panel{border-radius:18px;width:min(100%,100vw - 20px);max-width:min(100%,100vw - 20px);max-height:min(340px,100vh - 96px);padding:16px 14px;overflow:auto}.home-tips-panel__title{font-size:24px}.home-tips-panel__intro{font-size:14px}.home-tips-panel__card{padding:16px 14px 18px}.schools-list--wrap,.students-list,.classform-schools,.classes-list,.eval-list{grid-template-columns:minmax(0,1fr)}.eval-list{justify-items:start}.schools-list__item,.students-list__item,.classes-list__item,.eval-list__item{min-width:0}.vignette-ecole,.vignette-eleve,.vignette-eval,.vignette-evalstat{width:100%;min-width:0;max-width:100%}.vignette-ecole,.vignette-eleve,.vignette-eval{height:auto}.vignette-eval{box-sizing:border-box;width:min(285px,100%);min-height:0;max-width:min(285px,100%)!important}.vignette-eval__header-text,.vignette-eval__meta,.vignette-eval__stats,.vignette-eval__xy,.vignette-eval__dots{min-width:0}.vignette-eval__xy{overflow-wrap:anywhere}.vignette-eval__meta .chip{max-width:100%}.evalgroup-list{justify-content:stretch}.evalgroup-list__item{flex:100%;min-width:0}.vignette-evalstat{min-height:0}}.settings-grid{gap:16px;display:grid}@media (min-width:800px){.settings-grid{grid-template-columns:1fr 1fr}}.settings-sheet{flex-direction:column;gap:16px;width:100%;height:100%;display:flex}.settings-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-header h1{margin:0}.settings-scroll{overscroll-behavior:contain;flex:auto;padding-bottom:12px;padding-right:4px;overflow-y:auto}.legal-links{flex-wrap:wrap;gap:10px;display:flex}.legal-link{text-align:center;white-space:normal;justify-content:center;align-items:center;max-width:min(100%,320px);min-height:52px;line-height:1.3;text-decoration:none;display:inline-flex}@media (max-width:720px){.settings-sheet{height:auto}.settings-scroll{padding-bottom:0;padding-right:0;overflow:visible}.legal-links{flex-direction:column}.legal-link{width:100%;max-width:none}}.app-shell--phone .settings-page{padding:12px 10px 14px}.app-shell--phone .settings-page__sheet{border-radius:18px;padding:14px 12px 16px}.app-shell--phone .settings-header{align-items:flex-start;gap:8px;margin-bottom:6px}.app-shell--phone .settings-header h1{font-size:22px;line-height:1.1}.app-shell--phone .settings-header .hint{font-size:11px}.app-shell--phone .settings-page__close{min-height:34px;padding:6px 10px;font-size:12px}.app-shell--phone .settings-page__scroll{gap:0}.app-shell--phone .settings-page .danger-zone,.app-shell--phone .settings-page .settings-card{border-radius:10px!important;padding:12px!important}.app-shell--phone .settings-page .danger-zone{margin-top:18px!important;margin-bottom:18px!important}.app-shell--phone .settings-page h2{margin:0 0 6px;font-size:17px;line-height:1.15}.app-shell--phone .settings-page h3,.app-shell--phone .settings-page .settings-card__title{font-size:15px;line-height:1.15}.app-shell--phone .settings-page .hint,.app-shell--phone .settings-page .settings-card__pitch,.app-shell--phone .settings-page .settings-card__detail,.app-shell--phone .settings-page .paywall__sku,.app-shell--phone .settings-page .mono{font-size:12px;line-height:1.35}.app-shell--phone .settings-page .settings-card__head{gap:6px}.app-shell--phone .settings-page .settings-card__details{gap:8px}.app-shell--phone .settings-page .settings-card__detail{border-radius:8px;padding:8px 10px}.app-shell--phone .settings-page .settings-card__value{font-size:11px}.app-shell--phone .settings-page .status-pill{padding:3px 8px;font-size:11px}.app-shell--phone .settings-page .settings-cards,.app-shell--phone .settings-page .settings-cards--single{grid-template-columns:1fr;gap:10px}.app-shell--phone .settings-page .form__field{gap:4px}.app-shell--phone .settings-page .form__label{font-size:11px;line-height:1.15}.app-shell--phone .settings-page .input{border-radius:8px;padding:8px 10px;font-size:12px}.app-shell--phone .settings-page .form__actions{justify-content:flex-start;gap:8px;margin-top:8px}.app-shell--phone .settings-page .btn{min-height:34px;padding:7px 10px;font-size:12px}.app-shell--phone .settings-page .legal-links{gap:8px}.app-shell--phone .settings-page .legal-link{min-height:40px;font-size:12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.banner{border-radius:10px;margin-top:12px;padding:10px 12px}.banner.ok{color:#0d5a2d;background:#e4f6ea;border:1px solid #bde6c8}.banner.err{color:#8a1f1c;background:#fdeeee;border:1px solid #f2b8b5}.list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.list__item{align-items:center;gap:10px;display:flex}.muted{opacity:.7}.schools-list--wrap{grid-template-columns:repeat(auto-fill,300px);justify-content:center;gap:10px;margin:0;padding:0;list-style:none;display:grid}.schools-list--wrap .schools-list__item{background:0 0;border:0;padding:0}.schools-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.schools-page__header{gap:10px}.schools-page__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.schools-page__actions{gap:12px}.schools-page__title{margin:10px 0 0}.schools-toolbar__action{cursor:pointer;background:#fffffff0;border:1px solid #0f172a1f;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:10px 16px;transition:transform .14s,filter .14s,box-shadow .14s,opacity .14s;display:inline-flex;box-shadow:0 4px 14px #0f172a14}.schools-toolbar__action:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 8px 18px #0f172a1f}.schools-toolbar__action:active{transform:translateY(0)}.schools-toolbar__action:focus-visible{outline-offset:2px;outline:3px solid #3658d63d}.schools-toolbar__action:disabled{opacity:.48;cursor:not-allowed;filter:none;box-shadow:0 4px 14px #0f172a0f}.schools-toolbar__action:disabled:hover{filter:none;transform:none;box-shadow:0 4px 14px #0f172a0f}.schools-toolbar__action--cta{background:linear-gradient(#fffffffa,#f0f7fffa);border-color:#2563eb61;animation:1.9s ease-in-out infinite schools-toolbar-cta-pulse;box-shadow:0 0 #3b82f638,0 10px 22px #2563eb24}.schools-toolbar__action--cta:hover{box-shadow:0 0 #3b82f600,0 14px 28px #2563eb2e}.schools-toolbar__action--cta:disabled{animation:none}.schools-toolbar__action--cta .schools-toolbar__icon{animation:1.2s ease-in-out infinite schools-toolbar-cta-icon}.schools-toolbar__icon{background:0 0;border:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:24px;line-height:1;display:inline-flex}.schools-toolbar__label{color:#1f2937;white-space:nowrap;font-size:15px;font-weight:700}@keyframes schools-toolbar-cta-pulse{0%,to{transform:translateY(0)scale(1);box-shadow:0 0 #3b82f638,0 10px 22px #2563eb24}50%{transform:translateY(-2px)scale(1.035);box-shadow:0 0 0 13px #3b82f600,0 15px 30px #2563eb33}}@keyframes schools-toolbar-cta-icon{0%,to{transform:scale(1)}50%{transform:scale(1.09)}}.evaluations-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.evaluations-page__header{gap:10px}.evaluations-page__toolbar{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.evaluations-page__actions{gap:12px}.evaluations-page__filters{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin-top:6px;display:flex}.evaluations-page__filter-field--status{min-width:160px}.evaluations-page__filter-field--domain{min-width:200px}.evaluations-page__filter-field--subdomain{min-width:220px}.evaluations-page__filter-field--school{min-width:200px}.evaluations-page__filter-field--class{min-width:180px}.evaluations-page__filter-field--date{min-width:160px}.evaluations-page__filter-field--keywords{margin-top:6px}.evaluations-toolbar__action{cursor:pointer;background:#fffffff0;border:1px solid #0f172a1f;border-radius:18px;align-items:center;gap:10px;padding:6px 10px;transition:transform .14s,box-shadow .14s,border-color .14s;display:inline-flex;box-shadow:0 4px 14px #0f172a14}.evaluations-toolbar__action:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f172a1f}.evaluations-toolbar__action:active{transform:translateY(0)}.evaluations-toolbar__action:focus-visible{outline-offset:2px;outline:3px solid #3658d63d}.evaluations-toolbar__action.is-active{border-color:#2563eb59;box-shadow:0 0 0 3px #2563eb1f,0 10px 22px #2563eb1f}.evaluations-toolbar__action--primary{border-color:#2563eb61;animation:1.9s ease-in-out infinite evaluations-primary-pulse;box-shadow:0 0 #3b82f647,0 8px 18px #2563eb1f}.evaluations-toolbar__action--primary:hover{box-shadow:0 0 #3b82f600,0 12px 24px #2563eb2e}.evaluations-toolbar__action--primary .evaluations-toolbar__icon{animation:1.2s ease-in-out infinite evaluations-primary-icon}@keyframes evaluations-primary-pulse{0%,to{transform:translateY(0)scale(1);box-shadow:0 0 #3b82f642,0 8px 18px #2563eb1f}50%{transform:translateY(-2px)scale(1.03);box-shadow:0 0 0 12px #3b82f600,0 14px 28px #2563eb2e}}@keyframes evaluations-primary-icon{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.evaluations-toolbar__icon{flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:20px;line-height:1;display:inline-flex}.evaluations-toolbar__label{color:#1f2937;white-space:nowrap;font-size:14px;font-weight:600}.vignette-ecole{background:#ffffffe6;border:1px solid #d9dee5;border-radius:14px;grid-template-rows:auto auto 1fr;gap:10px;width:300px;height:260px;padding:14px;display:grid;box-shadow:0 2px 10px #0000000f}.vignette-ecole:hover{transform:translateY(-1px);box-shadow:0 6px 22px #0000001f}.vignette-ecole__media{place-items:center;display:grid}.vignette-ecole__media img{object-fit:contain;object-position:center;background:#fff;border:1px solid #d1d9e2;border-radius:12px;width:72px;height:72px}.vignette-ecole__content{gap:6px;min-width:0;display:grid}.vignette-ecole__title,.vignette-ecole__subtitle{text-overflow:ellipsis;white-space:normal;word-break:break-word;overflow:hidden}.vignette-ecole__meta{color:#3c4a58;grid-template-columns:auto 1fr;gap:4px 10px;margin:0;font-size:13px;display:grid;overflow:hidden}.vignette-ecole__meta dd{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vignette-ecole__meta a{border-bottom:1px dotted #00000040;text-decoration:none}.vignette-ecole__meta a:hover{border-bottom-style:solid}.vignette-ecole__classes{color:#334155;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:13px;display:-webkit-box;overflow:hidden}.app-shell--phone .schools-page{padding:14px 12px 16px}.app-shell--phone .schools-page__header{gap:6px}.app-shell--phone .schools-page__toolbar,.app-shell--phone .schools-page__actions{gap:8px}.app-shell--phone .schools-page__new-button{border-radius:999px;gap:8px;min-height:42px;padding:7px 10px}.app-shell--phone .schools-page__new-button .schools-toolbar__icon{width:20px;height:20px;font-size:18px}.app-shell--phone .schools-page__new-button .schools-toolbar__label{white-space:nowrap;font-size:12px;line-height:1.1}.app-shell--phone .schools-page__close{width:28px;height:28px;font-size:15px;line-height:15px}.app-shell--phone .schools-page__title{margin-top:6px;font-size:20px}.app-shell--phone .schools-page .empty{font-size:12px;line-height:1.35}.app-shell--phone .schools-page .schools-list--wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.app-shell--phone .schools-page .vignette-ecole{gap:6px;width:100%;border-radius:10px!important;height:214px!important;padding:8px!important}.app-shell--phone .schools-page .vignette-ecole__delete{border-radius:7px!important;width:24px!important;height:24px!important;padding:3px!important;top:6px!important;right:6px!important}.app-shell--phone .schools-page .vignette-ecole>div:first-of-type{padding:8px!important}.app-shell--phone .schools-page .vignette-ecole__media{height:60px!important}.app-shell--phone .schools-page .vignette-ecole__media img{border-radius:10px;width:52px;height:52px}.app-shell--phone .schools-page .vignette-ecole__content{gap:4px;padding:4px 8px 6px!important}.app-shell--phone .schools-page .vignette-ecole__title{margin-bottom:2px!important;font-size:13px!important;line-height:1.2!important}.app-shell--phone .schools-page .vignette-ecole__direction{font-size:11px;margin:0 0 4px!important}.app-shell--phone .schools-page .vignette-ecole__meta{gap:2px 6px;font-size:10px;line-height:1.2}.app-shell--phone .schools-page .vignette-ecole__meta dt{margin-top:2px!important}.app-shell--phone .schools-page .vignette-ecole__footer{line-height:1.25;padding:6px 8px!important;font-size:10px!important}.vignette-ecole__titleline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.badge{border:1px solid #d1d9e2;border-radius:999px;padding:4px 8px;font-size:12px;line-height:1;display:inline-block}.badge--soft{color:#1b2938;background:#f5f8fb}.vignette-ecole__quickadd{cursor:pointer;opacity:0;background:#ffffffd9;border:none;border-radius:10px;place-items:center;padding:6px;transition:opacity .12s,transform .12s;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 2px 10px #00000014}.vignette-ecole:hover .vignette-ecole__quickadd{opacity:1}.vignette-ecole__quickadd img{width:20px;height:20px;display:block}.sheet__footer{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:20px;display:flex}.students-list{grid-template-columns:repeat(auto-fill,220px);gap:10px;margin:0;padding:0;list-style:none;display:grid}.students-list__item{background:0 0;border:0;padding:0}.classform-schools{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.classform-school{cursor:pointer;background:#ffffffe6;border:1px solid #fff6;border-radius:12px;flex-direction:column;align-items:center;gap:8px;width:100%;min-height:120px;padding:12px;transition:border-color .12s,transform .12s,background .12s;display:flex;box-shadow:0 2px 10px #0f172a14}.classform-school.is-selected{background:#60a5fa1a;border-color:#60a5fa;transform:translateY(-2px)}.classform-school__logo{background:#fff;border:1px solid #0f172a14;border-radius:12px;place-items:center;width:56px;height:56px;display:grid;overflow:hidden}.classform-school__logo img{object-fit:contain;object-position:center;width:100%;height:100%}.classform-school__name{text-align:center;color:#0f172a;font-size:14px;font-weight:600}.classform-school__classes{flex-wrap:wrap;justify-content:center;gap:6px;width:100%;display:flex}.classform-school__class-pill{color:#1f2937;text-align:center;background:#0f172a0f;border-radius:999px;justify-content:center;align-items:center;max-width:100%;padding:4px 8px;font-size:11px;line-height:1.2;display:inline-flex}.classform-school__badge{text-transform:uppercase;letter-spacing:.04em;color:#1f2937;font-size:11px}.vignette-eleve:hover{transform:translateY(-1px);box-shadow:0 6px 22px #0000001f}.vignette-eleve__media{justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto;display:flex}.vignette-eleve__title{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:800;overflow:hidden}.vignette-eleve__subtitle{color:#4b5b6b;margin:0;font-size:12px}.photo-uploader{cursor:pointer;background:#f8fafc;border:1px solid #d9dee5;border-radius:12px;justify-content:center;align-items:center;width:160px;height:160px;margin:0 auto 16px;display:flex;position:relative;overflow:hidden}.photo-uploader img{width:auto;max-width:100%;height:auto;max-height:100%;display:block}.photo-uploader__hint{color:#fff;pointer-events:none;background:#0009;border-radius:999px;padding:4px 8px;font-size:12px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.classes-list{grid-template-columns:repeat(auto-fill,260px);gap:10px;margin:0;padding:0;list-style:none;display:grid}.classes-list__item{background:0 0;border:0;padding:0}.vignette-classe{--accent:#3b82f6;border:1px solid var(--accent);background:linear-gradient(0deg,color-mix(in srgb,var(--accent)10%,#fff 90%),#fff);cursor:pointer;border-radius:12px;align-content:center;width:120px;height:80px;padding:10px 12px;transition:transform .12s,box-shadow .12s,border-color .12s;display:grid;position:relative;overflow:hidden;box-shadow:0 2px 10px #0000000f}.vignette-classe:hover{border-color:color-mix(in srgb,var(--accent)80%,#fff 20%);transform:translateY(-1px);box-shadow:0 6px 22px #0000001f}.vignette-classe__title{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;font-weight:800;overflow:hidden}.vignette-classe__subtitle{color:#334155;white-space:normal;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:2px 0 0;font-size:12px;display:-webkit-box;overflow:hidden}.vignette-classe.is-selected .vignette-classe__content{filter:grayscale();opacity:.1;transition:filter .12s,opacity .12s}.vignette-classe__overlay{color:#fff;pointer-events:none;text-shadow:0 1px #00000080;background:#000000a6;border-radius:12px;place-items:center;font-weight:800;display:grid;position:absolute;inset:0}.vignette-classe__overlay span{background:#ffffff14;border-radius:999px;padding:4px 10px}.form__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.vignette-eleve{background:#ffffffeb;border:3px solid #1f2937;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:220px;height:160px;padding:12px;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 6px 16px #00000029}.vignette-eleve__media{justify-content:center;align-items:center;width:96px;height:96px;display:flex}.vignette-eleve__media img{object-fit:contain;object-position:center;background:#fff;border:1px solid #d1d9e2;border-radius:12px;width:auto;max-width:100%;height:auto;max-height:100%}.vignette-eleve__content{text-align:center;align-content:start;justify-items:center;gap:4px;display:grid}.eleve-line{color:#1b2938;word-break:break-word;font-size:13px;line-height:1.2}.eleve-firstname{font-size:15px;font-weight:800}.eleve-lastname{letter-spacing:.5px}.eleve-birth{color:#4b5b6b}.eleve-class{color:#223041;font-weight:600}.eleve-school{color:#3c4a58}.classes-filter{margin:6px 0 10px}.classes-filter__header{color:#3c4a58;align-items:center;gap:10px;margin-bottom:6px;font-size:13px;display:flex}.link-reset{color:#1f6feb;cursor:pointer;background:0 0;border:0}.link-reset:hover{text-decoration:underline}.classes-filter__list{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.classes-filter__item{flex:none}.students-group{margin-top:8px}.students-group__title{margin:12px 0 6px;font-size:18px}.students-subgroup__title{color:#334155;margin:6px 0;font-size:15px}.students-page__header{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff5;padding-top:8px;padding-bottom:8px;position:sticky;top:0}.students-page__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.students-page__title{margin:10px 0 0}.students-page__eyebrow{margin-top:10px}.students-page__intro{margin:6px 0 0}.students-page__filters{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.students-page__filter-field{min-width:200px}.students-page__filter-field--search{flex:240px;min-width:240px}.block{margin-top:14px}.block__title{margin:0 0 8px;font-size:18px}.block__content{padding:8px 0}.admin-grid{grid-template-columns:140px 1fr;align-items:start;gap:12px;display:grid}.admin-photo{background:#fff;border:1px solid #d9dee5;border-radius:12px;place-items:center;width:140px;height:140px;display:grid;overflow:hidden}.admin-photo img{object-fit:cover;width:100%;height:100%}.admin-info{grid-template-columns:140px 1fr;gap:8px 12px;margin:0;display:grid}.admin-info dt{color:#223041;font-weight:700}.admin-info dd{color:#1b2938;margin:0}.form__actions{justify-content:center;gap:12px;margin-top:10px;display:flex}.flat-button{transition:transform .14s,box-shadow .14s,filter .14s;box-shadow:0 6px 14px #0f172a2e}.flat-button:hover:not(:disabled){filter:brightness(1.05)saturate(1.1);transform:translateY(-2px)scale(1.02);box-shadow:0 14px 28px #0f172a38,0 0 0 3px #ffffffb3}.flat-button__content{justify-content:center;align-items:center;gap:8px;display:inline-flex}.flat-button__icon{align-items:center;font-size:16px;line-height:1;display:inline-flex}.close-pill{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;line-height:18px;transition:transform .16s,box-shadow .16s,filter .16s;animation:2.2s ease-in-out infinite close-pill-pulse;display:inline-flex;box-shadow:0 8px 18px #ef444473}.close-pill:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 12px 26px #ef44448c}.close-pill:active{transform:translateY(0)scale(.98)}@keyframes close-pill-pulse{0%,to{box-shadow:0 8px 18px #ef444473}50%{box-shadow:0 14px 30px #ef4444b3}}.link-pill{background:#0f172a;animation:2.2s ease-in-out infinite link-pill-pulse;box-shadow:0 8px 18px #0f172a73}.close-pill--success{background:#16a34a;animation:2.2s ease-in-out infinite close-pill-success-pulse;box-shadow:0 8px 18px #16a34a73}.link-pill:hover{filter:brightness(1.05);box-shadow:0 12px 26px #0f172a99}.close-pill--success:hover{filter:brightness(1.05);box-shadow:0 12px 26px #16a34a8c}@keyframes link-pill-pulse{0%,to{box-shadow:0 8px 18px #0f172a73}50%{box-shadow:0 14px 30px #0f172ab3}}@keyframes close-pill-success-pulse{0%,to{box-shadow:0 8px 18px #16a34a73}50%{box-shadow:0 14px 30px #16a34ab3}}@media (prefers-reduced-motion:reduce){.close-pill,.link-pill,.evaluations-toolbar__action--primary,.evaluations-toolbar__action--primary .evaluations-toolbar__icon{animation:none}}.app-shell--phone .students-page{padding:14px 12px 16px}.app-shell--phone .students-page__header{padding-top:4px;padding-bottom:4px}.app-shell--phone .students-page__toolbar{gap:8px}.app-shell--phone .students-page__create-button{border-radius:9px!important;min-width:124px!important;max-width:148px!important;min-height:40px!important;padding:6px 10px!important;font-size:11px!important}.app-shell--phone .students-page__close{width:28px;height:28px;font-size:15px;line-height:15px}.app-shell--phone .students-page__title{margin-top:6px;font-size:20px}.app-shell--phone .students-page__eyebrow{margin-top:6px;font-size:10px}.app-shell--phone .students-page__intro,.app-shell--phone .students-page .empty{font-size:12px;line-height:1.35}.app-shell--phone .students-page__filters{gap:6px;margin-top:6px}.app-shell--phone .students-page__filter-field,.app-shell--phone .students-page__filter-field--search{flex:100%;min-width:0}.app-shell--phone .students-page .form__label{font-size:11px}.app-shell--phone .students-page .input{border-radius:8px;padding:7px 9px;font-size:12px}.app-shell--phone .students-page .students-group{margin-top:4px}.app-shell--phone .students-page .students-group__title{margin:8px 0 4px;font-size:15px}.app-shell--phone .students-page .students-subgroup__title{margin:4px 0;font-size:13px}.app-shell--phone .students-page .students-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.app-shell--phone .students-page .vignette-eleve{border-width:2px;border-radius:10px;gap:6px;width:100%;height:122px;padding:8px}.app-shell--phone .students-page .vignette-eleve__media{width:64px;height:64px}.app-shell--phone .students-page .vignette-eleve__media img{border-radius:10px}.app-shell--phone .students-page .vignette-eleve__content{gap:2px}.app-shell--phone .students-page .eleve-line{font-size:11px;line-height:1.1}.app-shell--phone .students-page .eleve-firstname{font-size:13px}.app-shell--phone .students-page .eleve-lastname{letter-spacing:.2px}.app-shell--phone .evaluation-form-page{padding:12px 10px 14px}.app-shell--phone .evaluation-form-page__header{gap:6px}.app-shell--phone .evaluation-form-page__toolbar{gap:8px}.app-shell--phone .evaluation-form-page__header-actions{gap:6px!important}.app-shell--phone .evaluation-form-page .close-pill{width:28px;height:28px;font-size:15px;line-height:15px}.app-shell--phone .evaluation-form-page__title{font-size:20px;line-height:1.15}.app-shell--phone .evaluation-form-page__block{margin-top:10px;padding:10px 10px 12px}.app-shell--phone .evaluation-form-page__block-title{margin-bottom:8px;font-size:15px}.app-shell--phone .evaluation-form-page .form__field{gap:4px}.app-shell--phone .evaluation-form-page .form__label{font-size:12px;line-height:1.15}.app-shell--phone .evaluation-form-page .input,.app-shell--phone .evaluation-form-page .evaluation-form__select{border-radius:9px;padding:8px 10px;font-size:13px}.app-shell--phone .evaluation-form-page .evaluation-form__select-field{width:100%;max-width:100%}.app-shell--phone .evaluation-form-page__block .empty{font-size:12px;line-height:1.35}.app-shell--phone .evaluation-form-page__classes-list{gap:6px;padding-bottom:2px}.app-shell--phone .evaluation-form-page__classes-item .vignette-classe{min-height:62px;padding:8px 10px}.app-shell--phone .evaluation-form-page__classes-item .vignette-classe__title{font-size:12px}.app-shell--phone .evaluation-form-page__classes-item .vignette-classe__subtitle{font-size:10px}.app-shell--phone .evaluation-form-page__footer{margin-top:10px}.student-details-page--compact{padding:0 10px 14px}.student-details-page--compact .student-details-page__sheet{border-radius:18px;padding:14px 12px 16px}.student-details-page--compact .student-details-page__topbar{margin-bottom:6px}.student-details-page--compact .student-details-page__topbar-row{gap:8px!important}.student-details-page--compact .student-details-page__booklet-button,.student-details-page--compact .student-details-page__hero-button{border-radius:9px!important;min-width:118px!important;max-width:146px!important;min-height:38px!important;padding:6px 10px!important;font-size:11px!important}.student-details-page--compact .student-details-page__booklet-button .flat-button__content,.student-details-page--compact .student-details-page__hero-button .flat-button__content{gap:5px!important}.student-details-page--compact .student-details-page__booklet-button .flat-button__icon,.student-details-page--compact .student-details-page__hero-button .flat-button__icon{font-size:13px!important}.student-details-page--compact .student-details-page__close{width:28px;height:28px;font-size:15px;line-height:15px}.student-details-page--compact .student-details-page__hero{gap:10px!important}.student-details-page--compact .student-details-page__hero-row{align-items:flex-start!important;gap:12px!important}.student-details-page--compact .student-details-page__hero-actions{gap:6px!important}.student-details-page--compact .student-details-page__title{font-size:21px;line-height:1.08}.student-details-page--compact .student-details-page__meta-line{font-size:11px;line-height:1.3}.student-details-page--compact .student-details-page__block{margin-top:10px}.student-details-page--compact .student-details-page__section-title{font-size:18px;line-height:1.1}.student-details-page--compact .student-details-page__section-intro,.student-details-page--compact .empty{font-size:12px;line-height:1.35}.student-details-page--compact .student-details-page__eval-groups{gap:14px!important}.student-details-page--compact .student-details-page__eval-domain{gap:10px!important}.student-details-page--compact .student-details-page__domain-title{font-size:16px}.student-details-page--compact .student-details-page__eval-subgroup{gap:8px!important}.student-details-page--compact .student-details-page__subdomain-title{line-height:1.25;font-size:12px!important}.student-details-page--compact .student-details-page__eval-list{gap:8px!important}.student-details-page--compact .student-details-page__appreciation-editor{border-radius:12px!important;padding:10px!important}.student-details-page--compact .student-details-page__appreciation-layout{gap:8px!important}.student-details-page--compact .student-details-page__appreciation-main{flex:100%!important;max-width:100%!important}.student-details-page--compact .student-details-page__appreciation-meta{gap:8px!important;margin-bottom:6px!important}.student-details-page--compact .student-details-page__appreciation-side{flex:100%!important;min-width:0!important;max-width:100%!important}.student-details-page--compact .student-details-page__appreciation-side .animated-button{border-radius:10px!important;gap:6px!important;max-width:136px!important;padding:6px 10px!important}.student-details-page--compact .student-details-page__appreciation-side .animated-button img{height:28px!important}.student-details-page--compact .student-details-page__appreciation-side .animated-button__label,.student-details-page--compact .student-details-page__appreciation-editor .form__label{font-size:11px}.student-details-page--compact .student-details-page__appreciation-editor .input,.student-details-page--compact .student-details-page__appreciation-input{border-radius:8px;padding:8px 9px;font-size:12px}.student-details-page--compact .student-details-page__appreciation-input{min-height:112px}.student-details-page--compact .student-details-page__save-pill{padding:5px 10px;font-size:11px}.save-pill{color:#fff;cursor:pointer;background:#16a34a;border:2px solid #15803de6;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;transition:transform .14s,box-shadow .14s,filter .14s;box-shadow:0 6px 14px #16a34a59}.save-pill:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 10px 22px #16a34a73}.save-pill:active{transform:translateY(0)scale(.98)}.edit-pill,.delete-pill,.cancel-pill{cursor:pointer;border:2px solid #0000;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;transition:transform .14s,box-shadow .14s,filter .14s}.edit-pill{color:#1f2937;background:#e2e8f0;border-color:#47556999;box-shadow:0 6px 14px #0f172a1f}.delete-pill{color:#fff;background:#ef4444;border-color:#991b1be6;box-shadow:0 6px 14px #ef444459}.cancel-pill{color:#0f172a;background:#94a3b8;border-color:#334155b3;box-shadow:0 6px 14px #0f172a29}.edit-pill:hover,.delete-pill:hover,.cancel-pill:hover{filter:brightness(1.03);transform:translateY(-1px)}.edit-pill:active,.delete-pill:active,.cancel-pill:active{transform:translateY(0)scale(.98)}.vignette-eval{--accent:#3b82f6;border:1px solid var(--accent);background:linear-gradient(0deg,color-mix(in srgb,var(--accent)10%,#fff 90%),#fff);cursor:pointer;border-radius:16px;flex-direction:column;gap:14px;width:100%;height:100%;min-height:360px;padding:16px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex;box-shadow:0 2px 10px #0000000f}.vignette-eval:hover{transform:translateY(-1px);box-shadow:0 6px 22px #0000001f}.vignette-eval__header{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.vignette-eval__emoji{border:1px solid color-mix(in srgb,var(--accent)30%,#fff 70%);background:#fff;border-radius:12px;flex:none;place-items:center;width:56px;height:56px;font-size:30px;display:grid}.vignette-eval__header-text{flex:1;min-width:0}.vignette-eval__title{color:#0f172a;word-break:break-word;margin:0 0 6px;font-size:16px;font-weight:800}.vignette-eval__meta{flex-wrap:wrap;gap:6px;margin:0;display:flex}.chip{background:color-mix(in srgb,var(--accent)12%,#fff 88%);border:1px solid color-mix(in srgb,var(--accent)30%,#fff 70%);color:#1f2937;white-space:normal;overflow-wrap:anywhere;border-radius:999px;max-width:100%;padding:2px 8px;font-size:12px}.vignette-eval__stats{flex-direction:column;gap:10px;display:flex}.vignette-eval__xy{font-weight:600}.vignette-eval__dots{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.vignette-eval__dot{align-items:center;gap:6px;display:flex}.vignette-eval__dot-count{font-size:13px}.eval-list{grid-template-columns:repeat(auto-fill,minmax(305px,1fr));grid-auto-rows:1fr;place-items:stretch stretch;gap:12px;width:100%;min-width:0;margin:0 0 6px;padding:0;display:grid}.eval-list__item{width:100%;min-width:0;height:100%;list-style:none}.vignette-eval__actions{flex-direction:column;gap:10px;margin-top:auto;display:flex}.app-shell--phone .evaluations-page{padding:14px 12px 16px}.app-shell--phone .evaluations-page__header{gap:6px}.app-shell--phone .evaluations-page__toolbar,.app-shell--phone .evaluations-page__actions{gap:8px}.app-shell--phone .evaluations-page__create-button{border-radius:12px;gap:6px;padding:4px 8px}.app-shell--phone .evaluations-page__create-button .evaluations-toolbar__icon{width:34px;height:34px}.app-shell--phone .evaluations-page__create-button .evaluations-toolbar__label{white-space:normal;font-size:11px;line-height:1.1;display:inline}.app-shell--phone .evaluations-page__close{width:28px;height:28px;font-size:15px;line-height:15px}.app-shell--phone .evaluations-page__filters{gap:6px;margin-top:4px}.app-shell--phone .evaluations-page .form__label{font-size:11px}.app-shell--phone .evaluations-page .input{border-radius:8px;padding:7px 9px;font-size:12px}.app-shell--phone .evaluations-page__filter-field--keywords{margin-top:4px}.app-shell--phone .evaluations-page .eval-list{gap:8px;margin-top:2px!important}.app-shell--phone .evaluations-page .vignette-eval{border-radius:12px;gap:8px;width:100%;min-height:0;max-width:100%!important;padding:10px!important}.app-shell--phone .evaluations-page .vignette-eval__header{gap:8px}.app-shell--phone .evaluations-page .vignette-eval__emoji{border-radius:10px;width:40px;height:40px;font-size:21px}.app-shell--phone .evaluations-page .vignette-eval__title{margin-bottom:4px;font-size:13px;line-height:1.2}.app-shell--phone .evaluations-page .chip{padding:2px 6px;font-size:10px}.app-shell--phone .evaluations-page .vignette-eval__stats{gap:6px}.app-shell--phone .evaluations-page .vignette-eval__xy{font-size:11px;line-height:1.25}.app-shell--phone .evaluations-page .vignette-eval__dots{gap:8px}.app-shell--phone .evaluations-page .vignette-eval__dot{gap:4px}.app-shell--phone .evaluations-page .vignette-eval__dot-marker{border-width:2px!important;width:11px!important;height:11px!important}.app-shell--phone .evaluations-page .vignette-eval__dot-count{font-size:11px!important}.vignette-eval__actions .animated-button{justify-content:flex-start;width:100%!important;max-width:100%!important}@media (min-width:920px){.evalgroup-list{grid-template-columns:1fr 1fr}}.evalgroup-header-stack{min-width:0}.evalgroup-header-bar{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.evalgroup-header-actions{flex:none;align-items:center;gap:8px;display:flex}.evalgroup-inline-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.evalgroup-inline-actions--top{justify-content:flex-start}.evalgroup-inline-actions--secondary{margin-top:12px}.evalgroup-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.evalgroup-meta__item{align-items:center;display:inline-flex}.evalgroup-icon-button{color:#111827;cursor:pointer;background:linear-gradient(#fffffffa,#f1f5f9f0);border:1px solid #94a3b86b;border-radius:999px;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:10px 14px;transition:transform .14s,filter .14s,box-shadow .14s,border-color .14s;display:inline-flex;box-shadow:0 8px 18px #0f172a1a}.evalgroup-icon-button__label{white-space:nowrap;font-size:13px;font-weight:700;line-height:1.1}.evalgroup-icon-button__glyph{justify-content:center;align-items:center;font-size:21px;line-height:1;display:inline-flex}.evalgroup-mobile-summary{gap:8px;margin-top:10px;display:grid}.evalgroup-mobile-summary__bar{justify-content:space-between;align-items:center;gap:10px;display:flex}.evalgroup-mobile-summary__label{color:#0f172a;overflow-wrap:anywhere;font-size:18px;font-weight:800;line-height:1.2}.evalgroup-mobile-summary__toggle{color:#111827;cursor:pointer;background:linear-gradient(#fffffffa,#f1f5f9f0);border:1px solid #94a3b86b;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;display:inline-flex;box-shadow:0 6px 14px #0f172a1a}.evalgroup-mobile-summary__details{background:#f8fafceb;border:1px solid #94a3b84d;border-radius:12px;gap:6px;padding:10px 12px;display:grid}.evalgroup-mobile-summary__title{color:#334155;font-size:14px;font-weight:800}.evalgroup-mobile-summary__line{color:#0f172a;overflow-wrap:anywhere;font-size:13px;line-height:1.35}.icon-action-menu{justify-content:flex-end;margin-left:auto;display:inline-flex;position:relative}.icon-action-menu__trigger{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:inline-flex;box-shadow:0 8px 18px #ef444459}.icon-action-menu__panel{z-index:12;background:#fffffffa;border:1px solid #94a3b859;border-radius:16px;gap:8px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 38px #0f172a33}.icon-action-menu__item{color:#111827;cursor:pointer;background:linear-gradient(#fffffffa,#f1f5f9f0);border:1px solid #94a3b86b;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;min-width:220px;min-height:44px;padding:8px 12px;text-decoration:none;transition:transform .14s,filter .14s,box-shadow .14s,border-color .14s;display:inline-flex;box-shadow:0 8px 18px #0f172a1a}.icon-action-menu__item:hover,.icon-action-menu__item:focus-visible,.icon-action-menu__item:active{filter:brightness(1.04);border-color:#3b82f647;transform:translateY(-1px);box-shadow:0 12px 24px #0f172a24}.icon-action-menu__item:focus-visible{outline-offset:2px;outline:3px solid #3658d63d}.icon-action-menu__image{object-fit:contain;width:24px;height:24px;display:block}.icon-action-menu__glyph{font-size:21px;line-height:1}.icon-action-menu__label{color:#0f172a;text-align:left;font-size:12px;font-weight:600;line-height:1.2}.evalgroup-icon-button:hover{filter:brightness(1.04);border-color:#3b82f647;transform:translateY(-1px);box-shadow:0 12px 24px #0f172a24}.evalgroup-icon-button:active{transform:translateY(0)}.evalgroup-icon-button:focus-visible{outline-offset:2px;outline:3px solid #3658d63d}.evalgroup-list{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.evalgroup-list__item{margin:0}@media (max-width:720px){.evalgroup-header-bar{justify-content:flex-end}.evalgroup-meta{margin-top:10px}.evalgroup-page{padding:12px 10px 14px}.evalgroup-page .sheet__header{gap:8px!important;padding-top:6px!important;padding-bottom:6px!important}.evalgroup-mobile-summary{gap:6px;margin-top:6px}.evalgroup-mobile-summary__bar{gap:8px}.evalgroup-mobile-summary__label{font-size:16px;line-height:1.15}.evalgroup-mobile-summary__toggle{border-radius:9px;width:30px;height:30px;font-size:16px}.evalgroup-mobile-summary__details{border-radius:10px;gap:5px;padding:8px 10px}.evalgroup-mobile-summary__title{font-size:12px}.evalgroup-mobile-summary__line{font-size:11px;line-height:1.3}.icon-action-menu__panel{min-width:min(260px,100vw - 32px)}.icon-action-menu__item{width:100%;min-width:0}.icon-action-menu__trigger{border-radius:10px;width:36px;height:36px;font-size:17px}.icon-action-menu__panel{border-radius:14px;gap:6px;padding:8px}.icon-action-menu__item{border-radius:10px;min-height:40px;padding:7px 10px}.icon-action-menu__label{font-size:11px}.icon-action-menu__glyph,.icon-action-menu__image{width:20px;height:20px;font-size:18px}.evalgroup-list{gap:8px;margin-top:2px}.evalgroup-page .block{margin-top:10px}.evalgroup-page .empty{font-size:12px;line-height:1.35}}.vignette-evalstat{background:#fff;border:1px solid #2a343e;border-radius:16px;flex-direction:column;align-items:stretch;width:260px;min-height:380px;padding:14px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #0000001f}.vignette-evalstat:hover{border-color:#1f2937;transform:translateY(-2px);box-shadow:0 10px 26px #0000002e}.vignette-evalstat__head{grid-template-columns:72px 1fr;align-items:center;gap:10px;display:grid}.vignette-evalstat__avatar{background:#fff;border:1px solid #e5e7eb;border-radius:999px;place-items:center;width:72px;height:72px;display:grid;overflow:hidden}.vignette-evalstat__avatar img{object-fit:cover;width:100%;height:100%}.vignette-evalstat__id{text-align:left}.vignette-evalstat__first{color:#0f172a;font-size:16px;font-weight:800;line-height:1.1}.vignette-evalstat__last{letter-spacing:.4px;color:#0f172a;font-size:13px;font-weight:700}.vignette-evalstat__comment{margin-top:10px}.vignette-evalstat__photoRow{align-items:center;gap:10px;margin-top:10px;display:flex}.vignette-evalstat__photoActions{flex-direction:column;gap:8px;display:flex}.vignette-evalstat__photoAction{cursor:pointer;background:#fffffff2;border:1px solid #0f172a1f;border-radius:16px;justify-content:center;align-items:center;width:54px;height:54px;padding:0;transition:transform .14s,box-shadow .14s,border-color .14s;display:inline-flex;box-shadow:0 4px 14px #0f172a14}.vignette-evalstat__photoAction:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f172a1f}.vignette-evalstat__photoAction:active{transform:translateY(0)}.vignette-evalstat__photoAction:focus-visible{outline-offset:2px;outline:3px solid #3658d63d}.vignette-evalstat__photoActionImage{object-fit:contain;width:36px;height:36px;display:block}.vignette-evalstat__sourcePickerBackdrop{z-index:6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a61;justify-content:center;align-items:center;padding:12px;display:flex;position:absolute;inset:0}.vignette-evalstat__sourcePicker{background:#fffffffa;border:1px solid #94a3b84d;border-radius:14px;gap:10px;width:min(100%,220px);padding:14px 12px;display:grid;box-shadow:0 16px 30px #0f172a33}.vignette-evalstat__sourcePickerTitle{color:#0f172a;text-align:center;font-size:15px;font-weight:800}.vignette-evalstat__sourcePickerText{color:#475569;text-align:center;font-size:12px;line-height:1.35}.vignette-evalstat__sourcePickerActions{gap:8px;display:grid}.vignette-evalstat__preview{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;flex:1;place-items:center;min-height:90px;display:grid;overflow:hidden}.vignette-evalstat__preview img{object-fit:contain;object-position:center;width:100%;height:100%}.vignette-evalstat__previewEmpty{color:#64748b;font-size:12px}.vignette-evalstat__photoRow--compact{justify-content:center;width:100%}.vignette-evalstat__addCompact{color:#0f172a;background:#fffffff5;border:1px solid #0f172a1f;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:42px;padding:8px 10px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #0f172a14}.vignette-evalstat__photoCompact{gap:6px;width:100%;display:grid;position:relative}.vignette-evalstat__photoCompactPreview{background:#00000005;border:1px solid #00000014;border-radius:10px;justify-content:center;align-items:center;width:100%;height:78px;min-height:78px;padding:0;display:flex;overflow:hidden}.vignette-evalstat__deleteCompact{color:#fff;background:#ef4444;border:none;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:15px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-6px;right:-6px;box-shadow:0 6px 14px #ef444459}.vignette-evalstat__rotateCompact{justify-content:center;gap:6px;display:flex}.vignette-evalstat__status{justify-content:center;gap:10px;margin-top:12px;display:flex}.vignette-evalstat__dot{cursor:pointer;background:#fff;border:3px solid #16a34a;border-radius:999px;width:42px;height:42px}.vignette-evalstat__overlay{grid-template-rows:1fr auto;padding:12px;display:grid;position:absolute;inset:0}.vignette-evalstat__overlayBody{align-self:start;gap:8px;display:grid}.vignette-evalstat__id--overlay{text-align:center}.vignette-evalstat__overlayImg{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.vignette-evalstat__overlayImg img{width:100%;display:block}.vignette-evalstat__overlayComment{color:#0f172a;text-align:center;margin-top:2px;font-size:14px}.vignette-evalstat__overlayStatus{text-align:center;color:#334155;font-size:12px}.vignette-evalstat__overlayAction{justify-self:end}@media (max-width:720px){.vignette-evalstat{height:auto;min-height:0}}@media (min-width:980px){.evalgroup-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.evalgroup-action-block{padding:10px}.evalgroup-action-block__actions{justify-content:center}}.animated-button__label{white-space:pre-line}.vstatut{color:#fff;text-align:center;border-radius:12px 0 0 12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:25%;min-width:110px;padding:12px 8px;display:flex}.vstatut__icon{object-fit:contain;width:48px;height:48px}.vstatut__label{white-space:pre-wrap;font-weight:600;line-height:1.2}.veleve{background:#fff;border:1px solid #e5e7eb;border-radius:12px;gap:12px;width:100%;display:flex;overflow:hidden}.veleve__body{flex:1;min-width:0;padding:12px}.veleve__head{color:#4b5563;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.9rem;display:flex}.veleve__label{word-break:break-word;white-space:pre-wrap;margin:6px 0 8px;line-height:1.25}.veleve__comment{white-space:pre-wrap;margin:6px 0}.veleve__photo img{border-radius:8px;max-width:100%;height:auto;display:block}
