/* Étape 6 : direction éditoriale, palette validée le 23 octobre 2026. */
:root{--bg:#F4EDE3;--surface:#fffdf9;--raised:#ece4d8;--text:#141518;--muted:#57525a;--accent:#A8B6A0;--link:#302D32;--border:#817b72;--line:#d9d0c4;--champagne:#D7BE96;--graphite:#302D32;--radius:20px}
body{font-size:16px;line-height:1.65}h1{letter-spacing:-.045em}h2{letter-spacing:-.025em}a{overflow-wrap:anywhere}main{min-width:0}.private main{max-width:1550px;margin-left:240px;padding:26px 4% 0}.sidebar{width:240px;padding:40px 24px;background:var(--text);color:var(--bg);border:0}.sidebar .wordmark,.sidebar a,.sidebar .icon-button{color:var(--bg)}.sidebar .wordmark span,.sidebar .nav-label,.sidebar-bottom small{color:var(--champagne)}.sidebar nav{gap:6px}.sidebar nav a{color:#e3dbd0;border-radius:12px;padding:14px 16px;min-height:52px}.sidebar nav a[aria-current=page],.sidebar nav a:hover{background:var(--champagne);color:var(--text)}.sidebar .assistant-nav{border-color:#595358;padding:20px 4px;color:var(--champagne)}.sidebar .avatar{background:var(--accent);color:var(--text)}.nav-label{margin-top:58px}.desktop-language{margin-left:240px;padding:20px 4% 0;max-width:1550px}.language-button{border-color:var(--border);background:transparent;font-size:.8rem;min-width:76px}.topline{margin-bottom:24px;padding-bottom:18px}.topline .eyebrow{font-size:.72rem}.topline .subtle{font-size:.8rem}.greeting{background:var(--text);color:var(--bg);padding:36px;border-radius:24px;gap:24px;margin-bottom:24px}.greeting h1{font-size:clamp(2.5rem,4vw,3.7rem);margin-bottom:12px}.greeting p{color:#e1d8cb;max-width:42ch}.sage-dot{color:var(--champagne)}.button{border-radius:12px;padding:13px 20px;font-size:.9rem;min-height:48px;transition:background .15s ease}.button:hover{background:var(--champagne);border-color:var(--graphite)}.button.secondary:hover{background:var(--raised)}.greeting .button{background:var(--champagne);border-color:var(--champagne);color:var(--text);flex-shrink:0}.greeting .button:hover{background:var(--bg)}.welcome-banner{background:var(--champagne);border:0;border-radius:22px;grid-template-columns:minmax(0,2fr) minmax(130px,1fr);min-height:0;margin-bottom:30px}.welcome-banner>div{padding:28px 32px}.welcome-banner h2{font-size:2rem;margin:10px 0}.welcome-banner p{color:var(--graphite);font-size:.92rem}.welcome-banner .eyebrow{color:var(--graphite)}.welcome-banner img{height:190px;width:100%}.welcome-banner a{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem}.progress-line{margin-top:12px;max-width:420px}progress,progress::-webkit-progress-bar{background:#f3e7d5}progress::-webkit-progress-value{background:var(--graphite)}progress::-moz-progress-bar{background:var(--graphite)}.dashboard-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px}.card{padding:28px;border-radius:20px;box-shadow:none;margin-bottom:24px}.section-heading h2{font-size:1.15rem}.section-heading>a{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.count,.tag,.date-tile,.course-icon{background:var(--raised);color:var(--graphite)}.count{border-radius:50%;min-width:32px;height:32px}.warm{background:var(--champagne);color:var(--text)}.empty-inline{padding:24px 0;font-size:.94rem}.text-action{padding:10px 0;min-height:44px;font-size:.9rem}.note-card{background:var(--accent);padding:28px;border-radius:20px}.note-card p,.note-card>span{color:var(--graphite)}.note-card a{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem}.quick-note{background:var(--surface);border:1px solid var(--line);padding:20px;border-radius:16px}.public-header{background:var(--text);border:0;color:var(--bg);padding:30px 6%}.public-header .wordmark,.public-header .wordmark span,.public-header .eyebrow,.public-header .language-button{color:var(--bg)}.public-header .language-button{border-color:var(--champagne)}.public-hero{gap:5%;padding:40px 0}.public-hero h1{font-size:clamp(3rem,6vw,5.7rem)}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;max-width:560px;padding:40px;margin:32px auto 48px}.auth-card h1{font-size:2.8rem}.auth-card label:has(input[type=checkbox]){display:flex;align-items:center;gap:12px;min-height:48px;margin:12px 0;font-size:.9rem;cursor:pointer}.google-login .button{border-color:var(--graphite)}input,textarea,select{font-size:1rem;background:var(--surface);border-radius:10px;min-height:48px}.help{font-size:.85rem}.field label{font-size:.94rem}.page-heading{padding:12px 0 24px;border-bottom:1px solid var(--line)}.page-heading h1{font-size:clamp(2.4rem,4vw,3.8rem)}.tile-grid{gap:20px}.menu-tile{position:relative;padding:28px}.menu-tile:hover{border-color:var(--graphite);background:#eee7db}.menu-tile h2{font-size:2rem}.menu-tile:nth-child(3n+1){border-top:4px solid var(--accent)}.menu-tile:nth-child(3n+2){border-top:4px solid var(--champagne)}.menu-tile:nth-child(3n){border-top:4px solid var(--graphite)}.actions>a,.pagination>a,.landmark>a{min-height:44px;display:inline-flex;align-items:center;padding:8px 0}.bubble{background:var(--bg);font-size:1rem}.bubble.user{background:#e3e8df}.plain-text{font-size:1rem}.messages{background:#e3e8df;border-color:var(--border)}:focus-visible{outline:3px solid var(--graphite);outline-offset:4px}.sidebar :focus-visible,.bottom-nav :focus-visible,.public-header :focus-visible{outline-color:var(--champagne)}.page-footer{font-size:.75rem}.provider-status{color:var(--muted)}
@media(max-width:1100px) and (min-width:768px){.sidebar{width:200px;padding:32px 16px}.private main{margin-left:200px;padding:24px}.desktop-language{margin-left:200px;padding-right:24px}.greeting{padding:28px;flex-wrap:wrap}.dashboard-grid{grid-template-columns:1fr}.side-column{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quick-note{grid-column:1/-1}.welcome-banner>div{padding:24px}.welcome-banner img{height:150px}}
@media(max-width:767px){.private main{margin-left:0;padding:24px 18px calc(110px + env(safe-area-inset-bottom))}.desktop-language{display:none}.mobile-header{position:relative;background:var(--text);color:var(--bg);border:0;padding:18px;gap:10px;flex-wrap:wrap}.mobile-header .wordmark{color:var(--bg);font-size:2.3rem}.mobile-header .pill,.mobile-header .language-button{color:var(--bg);border-color:#a2988c;background:transparent;font-size:.75rem;min-height:44px;display:inline-flex;align-items:center}.mobile-header .language-button{min-width:68px}.topline{gap:10px;margin-bottom:18px}.topline .eyebrow{font-size:.65rem;max-width:none}.topline .subtle{font-size:.72rem}.greeting{padding:28px 24px;display:block;border-radius:20px}.greeting h1{font-size:3rem}.greeting p{font-size:.94rem}.greeting .button{width:100%;margin-top:24px;font-size:.9rem}.welcome-banner{display:block;border-radius:20px}.welcome-banner>div{padding:24px}.welcome-banner img{display:none}.welcome-banner h2{font-size:1.8rem;max-width:none}.welcome-banner p{font-size:.92rem}.welcome-banner .eyebrow{font-size:.65rem}.dashboard-grid{display:block}.side-column{display:block}.card{padding:24px 20px;margin-bottom:20px}.card h2{font-size:1.1rem}.note-card{padding:24px}.note-card h2{font-size:1.6rem}.quick-note{margin-bottom:20px}.bottom-nav{background:var(--text);border:0;padding:10px 8px calc(10px + env(safe-area-inset-bottom));gap:4px}.bottom-nav a{color:var(--bg);flex:1;min-width:0;min-height:48px;font-size:.72rem;border-radius:12px;justify-content:center}.bottom-nav a[aria-current=page]{background:var(--graphite);color:var(--champagne)}.bottom-nav span{font-size:1.2rem;line-height:1.3}.public-header{padding:24px 20px}.public main{padding:20px 18px 0}.public-hero{padding-top:10px;gap:20px}.public-hero h1{font-size:3.3rem}.public-hero img{max-height:220px}.auth-card{padding:26px 22px;margin:12px auto 36px}.auth-card h1{font-size:2.3rem}.auth-card>p{font-size:1rem}.page-heading h1{font-size:2.7rem}.tile-grid{grid-template-columns:1fr}.menu-tile h2{font-size:1.9rem}.menu-tile p{font-size:1rem}.list-grid{grid-template-columns:1fr}.task-row{font-size:.94rem}.chat{padding:22px 18px}.plain-text{font-size:1rem}.onboarding-card{padding:26px 22px}.page-footer{padding-bottom:24px}.form-card{max-width:100%}.actions{gap:12px}h1,h2,p{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
[hidden]{display:none!important}
.welcome-banner .progress-line,.welcome-banner .progress-line small{color:var(--graphite)}

.button.danger{background:#9d3737;border-color:#9d3737;color:#fff}.button.danger:hover{background:#762929}.field:has(input[type=checkbox]){display:flex;align-items:center;gap:12px;min-height:48px}.field:has(input[type=checkbox]) label{margin:0}
/* Connexions compactes : marques officielles, cibles tactiles de 48 px. */
.oauth-login{margin:22px 0 12px}.oauth-options{display:flex;align-items:flex-start;justify-content:center;gap:30px}.oauth-choice{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:72px}.oauth-choice>span{font-size:12px;color:var(--muted)}.oauth-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;min-height:48px;padding:0;border-radius:50%;cursor:pointer;background:#fff;box-shadow:none}.oauth-google{border:0}.oauth-google img{width:48px;height:48px;display:block}.oauth-microsoft{border:1px solid #747775}.oauth-microsoft img{width:22px;height:22px;display:block}.oauth-icon:hover{box-shadow:0 2px 7px #14151824}.oauth-icon:focus-visible{outline:3px solid var(--graphite);outline-offset:4px}.oauth-login .oauth-remember{display:flex;align-items:flex-start;gap:9px;margin:18px 0 0;font-size:13px;font-weight:400;line-height:1.5}.oauth-remember input{flex-shrink:0;margin-top:3px}.oauth-divider{display:flex;align-items:center;gap:12px;font-size:13px;justify-content:center}.oauth-divider:before,.oauth-divider:after{content:'';height:1px;background:var(--line);flex:1}
.joke-card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);padding:24px;isolation:isolate}
.joke-card:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:var(--raised);right:-74px;top:88px;z-index:-1}
.joke-card-heading,.joke-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.joke-card-heading .eyebrow{font-size:.68rem;letter-spacing:.12em}
.joke-spark{font-size:1.5rem;color:#94744c}
.joke-open{display:grid;grid-template-columns:58px 1fr;column-gap:14px;row-gap:5px;width:100%;padding:18px 0 12px;text-align:left;border:0;background:transparent;color:var(--text);cursor:pointer}
.joke-character{width:58px;height:58px;grid-row:1/4;align-self:center;animation:joke-wave 4s ease-in-out infinite}
.joke-category{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.joke-text{font-family:Georgia,serif;font-size:1.12rem;line-height:1.45;max-width:34ch}
.joke-hint{color:var(--muted);font-size:.78rem;margin-top:4px}
.joke-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:10px}
.joke-actions form{margin:0}
.joke-actions button{font:inherit;cursor:pointer}
.joke-action,.joke-hide{background:transparent;border:0;color:var(--link);text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:8px}
.joke-thanks{font-size:.82rem;color:var(--muted)}
.joke-next{padding:9px 13px;min-height:44px}
.joke-source{display:block;color:var(--muted);font-size:.68rem;margin-top:10px}
.joke-empty{display:flex;align-items:center;gap:12px;padding-top:14px}
.joke-empty .joke-character{flex:none;animation:none}
.joke-dialog{width:min(640px,calc(100vw - 28px));max-height:min(82dvh,760px);padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--bg);color:var(--text);box-shadow:0 20px 80px #14151845}
.joke-dialog::backdrop{background:#14151899;backdrop-filter:blur(3px)}
.joke-dialog-head{margin-bottom:16px}
.joke-dialog-head h2{font-size:clamp(1.8rem,5vw,2.6rem);margin:4px 0}
.joke-close{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:var(--surface);font-size:1.8rem;line-height:1;cursor:pointer}
.joke-extra-list{display:grid;gap:10px}
.joke-extra{padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.joke-extra p{margin:5px 0 0;font-family:Georgia,serif;font-size:1.03rem;line-height:1.5}
.joke-dialog-note{font-size:.75rem;color:var(--muted);margin:16px 0 0}
.joke-open:focus-visible,.joke-dialog button:focus-visible,.joke-actions button:focus-visible{outline:3px solid var(--graphite);outline-offset:3px}
@keyframes joke-wave{0%,88%,100%{transform:rotate(0)}92%{transform:rotate(-7deg)}96%{transform:rotate(6deg)}}
@media(max-width:767px){.joke-card{padding:22px 20px;margin-bottom:20px}.joke-text{font-size:1.04rem}.joke-actions{gap:4px}.joke-hide{padding-inline:4px}.joke-dialog{padding:22px 18px}.joke-extra{padding:14px}.joke-empty{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.joke-character{animation:none}}

/* News: wrap long official headlines and preserve usable touch controls. */
.news-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:end}.news-filters select{max-width:100%;min-height:44px}.news-list a{overflow-wrap:anywhere}.news-list article{margin-block:1rem}.news-list button,.pagination a{min-height:44px;min-width:44px}.news-list small{display:block;line-height:1.6}

.news-joke{margin:.75rem 0 1rem;padding:.75rem 1rem;border-inline-start:3px solid var(--accent);background:var(--surface-secondary,#efeade);border-radius:.5rem}.news-joke .eyebrow{margin:0;color:var(--graphite)}.news-joke p:not(.eyebrow){margin:.5rem 0}.news-joke small{display:block;line-height:1.5}
.dashboard-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.dashboard-module{min-width:0}.dashboard-module--today,.dashboard-module--upcoming{grid-column:1/-1}.dashboard-module>.card,.dashboard-module>.note-card{margin:0;height:100%}.dashboard-customize{margin-bottom:24px}.dashboard-customize summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}.dashboard-customize ol{list-style:none;padding:0;margin:12px 0 0}.dashboard-customize li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.dashboard-customize li form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.dashboard-customize button{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);cursor:pointer}.dashboard-customize button:disabled{opacity:.45;cursor:default}.dashboard-links{display:grid;gap:8px}.dashboard-links a{display:flex;align-items:center;min-height:44px}.dashboard-module h3{font-size:1rem;margin-top:20px}
.greeting-photo{width:180px;height:110px;object-fit:cover;border-radius:14px;flex:0 0 auto}
.dashboard-appearance{display:grid;gap:10px;margin:16px 0 24px;max-width:560px}.dashboard-appearance>label{font-weight:600}.dashboard-appearance label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px;font-weight:400}.dashboard-appearance input[type=checkbox]{min-height:20px;width:20px;flex:0 0 auto}.dashboard-appearance .button{justify-self:start}
@media(max-width:767px){.dashboard-modules{grid-template-columns:1fr}.dashboard-module--today,.dashboard-module--upcoming{grid-column:auto}.dashboard-customize li{align-items:flex-start;flex-direction:column}.dashboard-customize li form{width:100%}.dashboard-customize li form button:last-child{margin-left:auto}}
@media(max-width:767px){.greeting-photo{width:100%;height:128px;margin-top:18px}}

.catalog-launch{background:linear-gradient(120deg,#b9ccbd,#e4e9dc);padding:36px;border-radius:26px;margin-bottom:28px;display:flex;align-items:center;gap:26px;justify-content:space-between;color:#203c32}.catalog-launch h1,.catalog-launch h2{max-width:720px;margin:12px 0;font-size:clamp(28px,4vw,48px)}.catalog-search{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.catalog-search input{flex:1;min-width:180px}.catalog-categories{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.catalog-categories a{padding:10px 17px;border:1px solid #a8b6a0;border-radius:30px;text-decoration:none}.catalog-section{margin:42px 0}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.catalog-tool{background:#fffdf7;border:1px solid #dedfce;border-radius:20px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.catalog-tool h3{margin:0;font-size:22px}.catalog-tool p{margin:0;line-height:1.6}.catalog-tool>a{margin-top:auto;font-weight:600;color:#315c46}.catalog-tool details{font-size:13px;border-top:1px solid #ddd;padding-top:12px;width:100%}.catalog-icon{font-size:30px;color:#52745d}@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.catalog-grid{grid-template-columns:1fr}.catalog-launch{padding:24px;display:block}.catalog-launch .button{margin-top:16px}}

.workspace-nav{display:flex;gap:10px;flex-wrap:wrap;padding:0 0 22px;margin-bottom:18px;border-bottom:1px solid #cbd2c5}.workspace-nav a{padding:12px 18px;border:1px solid #bbc9ba;border-radius:30px;text-decoration:none;color:#254c3c;background:#e8eee1;font-weight:600;min-height:44px}.workspace-nav a[aria-current=page]{background:#355c49;color:#fff}.campus-hero{padding:38px;border-radius:24px;background:linear-gradient(115deg,#b2cabb,#e8ecdc);margin:18px 0 24px;color:#213f32}.campus-hero h1{font-size:clamp(36px,5vw,64px);margin:12px 0}.campus-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.campus-stats>span{padding:20px;background:#e6eadd;border-radius:16px;color:#304b3a}.campus-stats b{display:block;font-size:28px}.campus-columns{display:grid;grid-template-columns:3fr 2fr;gap:22px;align-items:start}.campus-columns>*{min-width:0}.campus-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:20px 0}.campus-filter select{min-width:160px;max-width:100%}.campus-courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.campus-course{padding:24px;border:1px solid #c4d2c2;border-radius:18px;text-decoration:none;background:#f0f3e8;color:#243f32}.campus-course h3{font-size:24px;margin:12px 0}.campus-deadline{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid #dbded3}.campus-deadline p{margin:0}.campus-connection{display:flex;gap:25px;align-items:center;justify-content:space-between}.campus-connection>div{max-width:780px}.campus-connection .button{flex-shrink:0}.empty-state{padding:18px}.campus-columns .section-heading{flex-wrap:wrap;gap:12px}@media(max-width:900px){.campus-columns{grid-template-columns:1fr}.campus-connection{display:block}.campus-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.campus-courses{grid-template-columns:1fr}.campus-hero{padding:24px}.workspace-nav a{font-size:13px;padding:10px 12px}}

.editorial-news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin:28px 0}.editorial-news-card{border-radius:24px;overflow:hidden;background:#fffdf8;border:1px solid #dfdfd2;box-shadow:0 8px 32px #223d2f09;display:flex;flex-direction:column;min-width:0}.editorial-image-link{display:block;position:relative;height:240px;overflow:hidden}.editorial-image-link img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.editorial-image-link:hover img{transform:scale(1.03)}.editorial-badge{position:absolute;left:18px;bottom:18px;padding:8px 12px;max-width:calc(100% - 36px);border-radius:10px;background:#fffdf4;color:#254c3c;font-size:12px;font-weight:700}.editorial-copy{padding:26px;flex:1;display:flex;flex-direction:column}.editorial-copy small{color:#667263;font-size:12px}.editorial-copy h2{font-size:clamp(22px,2vw,29px);line-height:1.2;margin:14px 0}.editorial-copy h2 a{text-decoration:none}.editorial-copy>p{line-height:1.75;color:#555f52}.editorial-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:20px}.editorial-actions .button{font-size:13px}.news-reader{background:#fffdf7;border-radius:24px;overflow:hidden;margin-top:24px}.reader-hero{width:100%;height:350px;object-fit:cover}.reader-content{max-width:820px;margin:auto;padding:38px}.reader-content h1{font-size:clamp(30px,4vw,46px);line-height:1.15;margin:20px 0}.reader-content>p{line-height:1.9}.reader-content .reader-lead{font-size:21px}.reader-source{padding:26px;background:#e9efdf;border-radius:18px;margin:32px 0}@media(max-width:850px){.editorial-news-grid{grid-template-columns:1fr}.reader-content{padding:24px}.reader-hero{height:230px}}@media(prefers-reduced-motion:reduce){.editorial-image-link img{transition:none}}

.news-list .page-heading{margin-bottom:20px;padding-bottom:16px}.news-list .news-filters{padding:20px}.news-list .news-filters select{width:auto;flex:1;min-width:200px}.news-list .news-filters input[type=checkbox]{width:20px;min-height:20px}

.clinic-frame{width:100%;height:760px;border:0;border-radius:12px;background:white;margin-top:20px}.clinic-frame[hidden]{display:none}

.file-workspace{margin:20px 0;background:#fffdf8;border:1px solid #d8ddcf;border-radius:22px;overflow:hidden}.file-workspace>header{padding:24px}.file-workspace h1{font-size:clamp(25px,3vw,36px);overflow-wrap:anywhere;margin:12px 0}.file-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 24px;background:#e8eee1}.onedrive-frame{display:block;border:0;width:100%;height:75vh;min-height:500px;background:#e1e5dc}.file-workspace>.subtle{padding:0 24px}.campus-tools{margin:32px 0}@media(max-width:650px){.onedrive-frame{height:70dvh;min-height:350px}.file-toolbar{padding:12px}.file-workspace>header{padding:18px}.file-toolbar .button{width:100%}}
.preview-back{display:inline-flex;min-height:44px;align-items:center}.preview-stage{position:relative;width:100%;height:min(76dvh,900px);min-height:360px;background:#111820;overflow:hidden}.preview-stage .onedrive-frame,.preview-stage .preview-media{display:block;width:100%;height:100%;min-height:0;border:0}.preview-stage .preview-media{object-fit:cover;background:#111820}.preview-stage.show-entire-media .preview-media{object-fit:contain}.preview-stage .preview-audio{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(90%,700px)}@media(max-width:650px){.preview-stage{height:65dvh;min-height:300px}}
.drive-shell{margin:16px 0 34px;background:#fff;border:1px solid #d8e0e8;border-radius:16px;overflow:hidden;box-shadow:0 14px 40px #203a5312;color:#243549}.drive-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 28px;background:#f8fbff;border-bottom:1px solid #e0e8ef}.drive-title{display:flex;align-items:center;gap:16px}.drive-cloud{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:#d8edff;color:#0875ce;font-size:34px}.drive-title small{font-size:12px;color:#5b6c7f}.drive-title h1{font:600 clamp(24px,3vw,36px) system-ui,sans-serif;margin:3px 0;color:#173755}.drive-actions{display:flex;gap:16px;flex-wrap:wrap}.drive-actions a,.drive-breadcrumb a,.drive-row-actions a{color:#075a9e;text-decoration:none;font-weight:600}.drive-actions a:hover,.drive-row-actions a:hover{text-decoration:underline}.drive-breadcrumb{display:flex;align-items:center;gap:12px;padding:16px 28px;border-bottom:1px solid #e4e9ed;color:#577087}.drive-list-heading,.drive-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 190px;gap:14px;align-items:center;padding:13px 28px}.drive-list-heading{font-size:12px;color:#58697c;border-bottom:1px solid #e4e9ed;font-weight:700}.drive-row{min-height:60px;border-bottom:1px solid #edf0f3}.drive-row:hover{background:#f3f8fd}.drive-name{display:flex;align-items:center;gap:13px;min-width:0;color:#213c55;text-decoration:none;font-weight:550}.drive-name span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drive-file-icon{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:8px;background:#e2effb;color:#1265a0;font-size:24px}.drive-folder{background:#fff3d7;color:#ae7716}.drive-size{font-size:13px;color:#667789}.drive-row-actions{display:flex;gap:13px;flex-wrap:wrap;font-size:13px}.drive-empty{padding:48px 28px;text-align:center}.drive-empty h2{font:600 22px system-ui,sans-serif}.drive-note{padding:0 28px;color:#657489;font-size:12px}.file-actions{display:flex;gap:10px;flex-wrap:wrap}.file-preview-empty{padding:40px;text-align:center}.file-preview-empty h2{font:600 24px system-ui,sans-serif}@media(max-width:650px){.drive-header{padding:18px}.drive-breadcrumb{padding:14px 18px}.drive-list-heading{display:none}.drive-row{grid-template-columns:minmax(0,1fr) auto;padding:14px 18px}.drive-name{grid-column:1 / -1}.drive-row-actions{justify-content:flex-end}.drive-empty{padding:32px 18px}.drive-note{padding:0 18px}}
