:root{color-scheme:light;--accent:#126952;--ink:#18362E;--muted:#5D6B66;--line:#dce4df;--wash:#f4f6f2}
*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;height:100dvh;display:flex;flex-direction:column;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #b67b27;outline-offset:3px}
.app-header{display:flex;align-items:center;gap:24px;padding:12px 24px;min-height:76px;background:white;border-bottom:1px solid var(--line);flex:none}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}.brand span{font-size:22px;font-weight:700;letter-spacing:-.6px}.brand small{display:block;font-size:12px;font-weight:450;letter-spacing:0;color:var(--muted);margin-top:2px}.home-link{display:flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border-radius:7px;color:var(--muted);font-size:12px;font-weight:600;text-decoration:none;flex:none}.home-link:hover,.home-link[aria-current=page]{background:#e8f3e9;color:var(--accent)}.project-picker{min-width:120px;max-width:440px;flex:1}.project-picker label{display:block;color:var(--muted);font-size:12px;margin-bottom:3px}.project-picker select{width:100%;border:0;background:white;font-size:12px;font-weight:600;padding:5px 22px 5px 0;text-overflow:ellipsis;cursor:pointer}.app-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex:none}.button{border:2px solid var(--line);border-radius:8px;background:white;min-height:38px;padding:9px 12px;font-size:12px;font-weight:550}.button:hover:not(:disabled){border-color:var(--accent);background:var(--wash)}.button.primary{background:var(--accent);border-color:var(--accent);color:white}.button.primary:hover:not(:disabled){background:#0d5844}.icon-button{display:grid;place-items:center;width:38px;padding:8px}.workspace{flex:1;min-height:0;position:relative}.workspace iframe{display:block;width:100%;height:100%;border:0}.status{flex:none;padding:10px 24px;background:#e8f3e9;border-bottom:1px solid var(--line);color:var(--accent);font-size:12px;line-height:1.5;overflow-wrap:anywhere}.status.error{background:#fff6e8;color:#79581e}
.home{height:100%;overflow:auto;padding:52px 32px 64px}.home-content{max-width:1100px;margin:0 auto}.home-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.home-heading h1{font-size:30px;letter-spacing:-.8px;margin:0 0 10px}.home-heading p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}.project-count{font-size:12px;color:var(--muted);white-space:nowrap}.home-search{margin-bottom:22px;max-width:360px}.home-search label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:8px}.home-search input{width:100%;height:42px;padding:10px 13px;background:white;border:1px solid var(--line);border-radius:8px;font-size:13px}.project-list{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden}.project-list:empty{display:none}.project-list li+li{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:32px;padding:27px 26px;color:var(--ink);text-decoration:none}.project-row:hover{background:#f9fbf9}.project-row:focus-visible{outline-offset:-4px}.project-description{min-width:0}.project-description h2{font-size:15px;line-height:1.55;font-weight:650;margin:0 0 7px;overflow-wrap:anywhere}.project-description p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.project-empty{display:none}.project-stats{display:flex;gap:24px;text-align:center}.project-stats>span{min-width:48px}.project-stats strong{display:block;font-size:20px;font-weight:650;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.project-stats small{display:block;font-size:12px;color:var(--muted);margin-top:5px;white-space:nowrap}.project-open{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600;color:var(--accent);white-space:nowrap}.no-project-match,.home-loading{font-size:13px;color:var(--muted);padding:24px 0}.welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding:56px 24px;background:white;border:1px dashed #bed0c4;border-radius:12px}.welcome h2{font-size:24px;letter-spacing:-.5px;margin:22px 0 10px}.welcome p{max-width:440px;line-height:1.7;font-size:13px;color:var(--muted);margin:0 0 24px}
dialog{width:min(440px,calc(100vw - 32px));border:1px solid var(--line);padding:24px;border-radius:14px;color:var(--ink);box-shadow:0 24px 90px #122d2540}dialog::backdrop{background:#14231f80}.dialog-heading{position:sticky;top:0;z-index:3;background:white;margin:-24px -24px 16px;padding:16px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px}.dialog-heading h2{font-size:20px;letter-spacing:-.4px;margin:0}.close-button{height:32px;width:32px;border:0;background:none;font-size:26px}dialog p{font-size:12px;color:var(--muted);line-height:1.6;margin:12px 0 22px}dialog label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}dialog input{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}dialog .form-error{color:#8c381e;margin:10px 0 0}
@media(max-width:1100px){.app-header{gap:16px;padding-inline:16px}.brand small{display:none}.project-picker{max-width:310px;min-width:0}.app-actions .button{padding-inline:9px;font-size:12px}.project-row{gap:24px}.project-stats{gap:16px}}
@media(max-width:760px){.app-header{flex-wrap:wrap;gap:10px 16px;padding:10px 12px;min-height:116px}.project-picker{max-width:none;flex:1;min-width:0}.app-actions{width:100%;gap:6px;min-width:0}.app-actions .button{flex:1;min-width:0;padding:8px 5px;font-size:12px;white-space:normal;line-height:1.35}.app-actions .icon-button{flex:0 0 34px}.brand span{font-size:21px}.welcome h1{font-size:26px}.status{padding:8px 12px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:760px){.home{padding:30px 16px 40px}.home-heading{align-items:flex-start;gap:16px;margin-bottom:24px}.home-heading h1{font-size:26px}.home-heading p{font-size:12px}.project-count{font-size:12px;margin-top:7px}.home-search{max-width:none}.welcome{padding:40px 18px}.welcome h2{font-size:21px}}
.workspace-nav{display:flex;align-items:center;gap:8px;padding:8px 24px;background:white;border-bottom:1px solid var(--line);flex:none}.workspace-nav button{border:0;border-radius:6px;background:transparent;padding:9px 14px;font-size:12px;font-weight:600}.workspace-nav button[aria-pressed=true]{color:var(--accent);background:#e8f3e9}.workspace-nav button span{font-size:12px;margin-left:6px}.workspace-nav>span{font-size:12px;color:var(--muted);margin-left:auto}
.files-view{height:100%;overflow:auto;padding:36px 32px 64px}.files-content{max-width:1100px;margin:auto}.files-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.files-toolbar>div:first-child{max-width:360px;flex:1}.files-toolbar label{display:block;font-size:12px;font-weight:600;margin-bottom:8px;color:var(--muted)}.files-toolbar input{width:100%;height:40px;border:1px solid var(--line);border-radius:8px;background:white;padding:9px 12px;font-size:13px}#files-message{font-size:12px;color:var(--muted);margin:20px 0}.document-group{margin-bottom:24px}.document-group h2{font-size:12px;color:var(--muted);font-weight:600;margin:0 0 10px;overflow-wrap:anywhere}.document-group ul{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:10px;background:white;overflow:hidden}.document-group li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px}.document-group li+li{border-top:1px solid var(--line)}.document-description{min-width:0;flex:1}.document-description>a{color:var(--ink);text-decoration:none;display:flex;align-items:center;min-height:44px;font-size:13px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}.document-description small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.document-actions{display:flex;gap:20px;flex:none}.document-actions a{font-size:12px;font-weight:600;color:var(--accent);text-decoration:none;padding-block:8px}.document-actions a:hover{text-decoration:underline}#affaire-reference{margin-bottom:4px}label[for=affaire-reference]{margin-top:18px}
@media(max-width:900px){.project-row{grid-template-columns:1fr auto;gap:18px}.project-description{grid-column:1/-1}.project-stats{text-align:left}}
@media(max-width:600px){.files-view{padding:24px 16px 40px}.files-toolbar{align-items:stretch;flex-direction:column}.files-toolbar>div:first-child{max-width:none}.document-group li{align-items:center;gap:10px;padding:8px 12px}.document-actions{gap:24px}.workspace-nav{padding-inline:12px}.workspace-nav>span{font-size:12px;max-width:130px;text-align:right}}

.document-group>summary{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer;padding:8px 2px}
.document-group>summary:before{content:'▸';color:var(--accent)}.document-group[open]>summary:before{content:'▾'}
.document-group>summary h2{margin:0;flex:1}.document-group>summary span{font-size:12px;color:var(--muted);white-space:nowrap}
.document-actions a{display:inline-flex;align-items:center;min-height:44px}
.status{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.status>span{flex:1;min-width:180px}.status progress{width:180px;accent-color:var(--accent)}.status .close-button{margin-left:auto;flex:none;min-width:44px;min-height:44px}
.status .button{min-height:44px}.result-list{list-style:none;margin:12px 0;padding:0;max-height:60dvh;overflow:auto}
.result-list>div,.result-list>li{padding:14px 0;border-bottom:1px solid var(--line)}.result-list strong{font-size:14px;overflow-wrap:anywhere}.result-list p{margin:6px 0 10px}
.result-list .button{min-height:44px}dialog{max-height:90dvh;overflow:auto;scroll-padding-top:calc(var(--dialog-heading-height,76px) + 8px)}dialog :is(input,select,textarea,[tabindex],h3){scroll-margin-top:8px}dialog>form{display:contents}dialog .close-button{flex:none;min-width:44px;min-height:44px}dialog details>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:13px}
.home-trash{margin-top:24px;min-height:44px}.danger{color:#8c381e}.menu-download{display:none!important}.row-menu{position:relative;flex:none}.row-menu>summary{display:grid;place-items:center;list-style:none;cursor:pointer;width:44px;min-height:44px;font-size:22px;border-radius:6px;border:1px solid var(--line);background:white}
.row-menu.opens-up[open]>div{top:auto;bottom:calc(100% + 4px)}
.row-menu>summary::-webkit-details-marker{display:none}.row-menu>summary:focus-visible,summary:focus-visible{outline:3px solid #b67b27;outline-offset:3px}
.row-menu[open]>div{position:absolute;right:0;top:calc(100% + 4px);z-index:950;width:190px;border:1px solid var(--line);border-radius:8px;padding:4px;background:white;box-shadow:0 8px 28px #122d2526;overflow-y:auto;overscroll-behavior:contain}
.row-menu>div :is(button,a){display:block;width:100%;text-align:left;min-height:44px;font-size:13px;background:white;border:0;border-radius:4px;padding:10px}
.row-menu>div :is(button,a):hover{background:var(--wash)}.row-menu>div button.danger{color:#8c381e}.busy .row-menu button{pointer-events:none;opacity:.5}
.document-group ul{overflow:visible}.document-group li:first-child{border-radius:10px 10px 0 0}.document-group li:last-child{border-radius:0 0 10px 10px}
.document-actions{align-items:center;flex-wrap:wrap;gap:12px}.trash-actions{display:flex;flex-wrap:wrap;gap:8px}
#edit-reference-field{margin-top:18px}
@media(min-width:761px){.download-menu:not(:has(button)){display:none}}
@media(max-width:760px){.project-menu-body{max-height:calc(100dvh - 110px);overflow:auto}.row-menu>div{max-width:calc(100vw - 32px)}}

/* Les vues et la gestion partagent un seul en-tête sur un chantier. */
.has-project .app-header{min-height:64px;padding:8px 16px;gap:16px;position:relative;z-index:700}
.has-project .brand small{display:none}
.has-project .brand img{width:32px;height:32px}
.has-project .brand span{font-size:20px}
.has-project .project-picker{max-width:none;min-width:0}
.has-project .project-picker label{font-size:12px}
.has-project .project-picker select{font-size:13px;min-height:30px}
.has-project .workspace-nav{border:0;padding:0;gap:4px}
.has-project .workspace-nav button{min-height:40px;font-size:13px;padding:9px 12px}
.has-project .workspace-nav>span{display:none}
.has-project .app-actions{width:auto;gap:8px;flex:none}
.has-project .app-actions .icon-button{width:40px;min-height:40px}
.project-menu{position:relative;font-size:13px}
.project-menu>summary{cursor:pointer;min-height:40px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:white;font-weight:600}
.project-menu>summary:focus-visible{outline:3px solid #b67b27;outline-offset:3px}
.project-menu[open]>summary{border-color:var(--accent)}
.project-menu-body{position:absolute;right:0;top:calc(100% + 8px);width:245px;padding:6px;background:white;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 28px #122d2526;z-index:1}
.project-menu-body .button{display:block;width:100%;min-height:44px;text-align:left;font-size:13px;border:0;background:white}
.workspace iframe.vista-fullscreen{position:fixed;inset:0;width:100vw;height:100dvh;z-index:2000;background:white}
@media(max-width:760px){
  .has-project .app-header{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:6px 10px;padding:8px 12px;min-height:0}
  .has-project .brand{gap:7px}
  .has-project .home-link{min-height:40px;padding:8px 5px;font-size:12px}
  .has-project .project-picker{width:100%}
  .has-project .workspace-nav{grid-column:1/3;grid-row:2;min-width:0}
  .has-project .workspace-nav button{min-height:44px}
  .has-project .app-actions{grid-column:3;grid-row:2;justify-self:end;margin-left:0}
  .has-project .app-actions .button,.project-menu>summary{min-height:44px;font-size:13px}
  .has-project .app-actions .icon-button{flex:none;width:44px}
  .project-menu{position:static}
  .project-menu-body{left:12px;right:12px;top:calc(100% + 4px);width:auto}
}
@media(max-width:760px){
  .has-project .app-header{grid-template-columns:32px minmax(0,1fr) auto;gap:4px 10px;padding:5px 12px}
  .has-project .brand span,.has-project .home-link,.has-project #share{display:none}
  .has-project .brand{grid-row:1}.has-project .project-picker{grid-row:1;grid-column:2}
  .has-project .app-actions{grid-column:3;grid-row:1}.has-project .workspace-nav{grid-column:1/-1;grid-row:2}
  .has-project .project-picker label{display:none}.has-project .project-picker select{min-height:44px;font-size:14px}
}
/* Une session doit être établie avant d'afficher la moindre donnée de chantier. */
.login-view{display:none}.session-locked .login-view{display:flex;flex:1;min-height:0;overflow:auto;padding:32px 20px;align-items:flex-start;justify-content:center}
.session-loading-view{display:none}.session-loading .session-loading-view{display:grid;flex:1;place-items:center;padding:32px 20px;color:var(--muted)}.session-loading .login-view{display:none}
.session-locked .workspace,.session-locked .app-header .app-actions,.session-locked .workspace-nav,.session-locked .project-picker,.session-locked .home-link,.session-locked #status,.session-locked #connection-bar{display:none!important}
.session-locked .app-header{min-height:76px;display:flex;padding:12px 24px}.session-locked .brand span{display:block}
.login-card{max-width:440px;width:100%;margin:auto;background:white;border:1px solid var(--line);border-radius:14px;padding:30px}
.login-card h1{font-size:26px;line-height:1.2;letter-spacing:-.6px;margin:20px 0 12px}.login-card p{font-size:14px;line-height:1.6;color:var(--muted)}
.login-card label{display:block;font-size:14px;font-weight:600;margin:18px 0 8px}.login-card input,.login-card select,dialog select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:white}
.login-card .primary{width:100%;min-height:44px;font-size:14px}.login-card .login-note{font-size:12px;margin-bottom:0}#login-message{min-height:24px;color:#79581e}
#login-retry,#login-fresh{width:100%;min-height:44px;margin-top:10px}
.account-actions,.offline-actions{display:flex;flex-wrap:wrap;gap:8px}.account-actions{flex-direction:column}.account-actions .button{min-height:44px;text-align:left}
.connection-bar{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:6px 16px;background:#fff6e8;border-bottom:1px solid #ead9bc;color:#79581e;font-size:12px;flex:none;flex-wrap:wrap}.connection-bar>span{flex:1;min-width:120px}.connection-bar .button{min-height:40px;flex:none}
#offline-dialog,#access-dialog{width:min(660px,calc(100vw - 24px))}dialog h3{font-size:16px;margin:24px 0 8px}
.offline-privacy{padding:12px;background:#fff6e8;border-radius:8px}#offline-groups{border:1px solid var(--line);border-radius:8px;margin:16px 0;padding:12px}#offline-groups legend{font-size:13px}#offline-groups label{display:flex;align-items:center;gap:10px;margin:0;min-height:44px}#offline-groups input{width:20px;height:20px;accent-color:var(--accent)}
#offline-progress{width:100%;height:14px;margin:10px 0;accent-color:var(--accent)}.result-list a{color:var(--accent)}
.search-actions{display:flex;gap:8px;align-items:center}.search-actions input{min-width:0;flex:1}.search-actions .button{flex:none;min-height:44px}
#access-family{margin-bottom:18px}.access-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.access-row strong,.access-row>span{flex:1;min-width:140px}.access-row select{width:110px}.access-row .button{min-height:44px}.readonly-project #add-affaire,.readonly-project #add-files,.readonly-project #add-folder{display:none}
@media(max-width:760px){.has-project .app-actions{gap:4px}.has-project .app-actions .icon-button{width:40px;min-width:40px}.has-project .project-picker select{padding-right:12px}.connection-bar{padding:4px 12px;gap:8px}.connection-bar>span{line-height:1.4}.connection-bar .button{padding-inline:8px}}
@media(max-width:400px){.login-card{padding:22px}.login-view{padding:20px 12px}.has-project .app-header{gap:4px 6px;padding-inline:8px}.has-project .app-actions .icon-button{width:36px;min-width:36px}.project-menu>summary{padding-inline:8px}.brand img{width:28px;height:28px}}

/* Navigation générale et commandes du chantier restent à des niveaux distincts. */
.app-header,.has-project .app-header,.session-locked .app-header{display:block;min-height:0;padding:0;position:relative;z-index:800}
.global-bar{display:flex;align-items:center;gap:20px;min-height:48px;padding:2px 24px}
.brand small{display:none}.brand span,.has-project .brand span{display:block;font-size:24px}
.brand img{width:36px;height:36px}.global-nav{display:flex;align-items:center;gap:12px}
.global-nav .home-link{display:flex;min-height:44px;font-size:14px}
#device-open{display:flex;align-items:center;gap:8px;min-height:44px;border:0;background:none;color:var(--muted);font-size:14px;padding:8px}
#new-project{flex:none}#account-open{display:flex;width:auto;min-height:44px;gap:8px;margin-left:auto;white-space:nowrap}

.chantier-bar{display:none;align-items:center;gap:20px;min-height:52px;padding:3px 24px;border-top:1px solid var(--line)}
.has-project .chantier-bar{display:flex}
.chantier-bar .project-picker{flex:1;min-width:0;max-width:none;width:auto}
.chantier-bar .project-picker select{font-size:18px;min-height:32px;font-weight:650;padding:0 24px 0 0}
.chantier-bar .project-picker label{display:none}
.chantier-bar .workspace-nav{display:flex;flex:none;gap:8px;width:auto;order:0;border:0}
.workspace-nav button{min-height:44px;padding:10px 18px;font-size:14px}
#menu-share{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-left:16px;border:1px solid var(--line);border-radius:8px;background:white}
#share{display:none}.chantier-bar .app-actions{margin:0;gap:8px}
.project-menu>summary{list-style:none;min-height:44px;font-size:14px;padding:12px}
.project-menu>summary::before{content:'···';margin-right:8px;font-weight:700}
#affaires-summary{display:none}
.session-locked .global-nav,.session-locked #account-open,.session-locked #new-project{display:none!important}
.connection-bar{background:#f8faf7;color:var(--muted);border-color:var(--line);min-height:40px;padding:4px 24px;font-size:12px;gap:8px}
#connection-message{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px}
.connection-network{color:var(--accent)}.is-offline .connection-network,.connection-pending{color:#79581e}
.connection-bar .button{min-height:30px;padding:4px 8px;border:0;background:transparent;color:var(--accent);font-size:12px}
@media(max-width:1100px){
 .global-bar,.chantier-bar{padding-inline:16px}.chantier-bar{gap:12px}
 .workspace-nav button{padding-inline:12px}.chantier-bar .project-picker select{font-size:16px}
 #menu-share{margin-left:4px}
}
@media(max-width:760px){
 .global-bar{min-height:48px;padding:2px 12px;gap:8px;flex-wrap:nowrap}.global-nav{margin-left:auto;gap:4px}
 .brand,.has-project .brand{gap:5px}.brand img{width:30px;height:30px}.brand span,.has-project .brand span{font-size:21px}
 .global-nav .home-link{padding:8px;font-size:12px}
 #device-open{min-width:40px;justify-content:center;padding:8px}#device-open>span:first-of-type,#account-open span{display:none}
 #account-open{margin-left:0;min-width:40px;width:40px;padding:8px}
 .has-project .chantier-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;min-height:0;padding:0 12px 2px}
 .chantier-bar .project-picker{grid-row:1;grid-column:1/-1;width:100%}
 .chantier-bar .project-picker label{display:none}.chantier-bar .project-picker select{font-size:15px;min-height:44px}
 .chantier-bar .workspace-nav{grid-row:2;grid-column:1;gap:4px;min-width:0}
 .workspace-nav button,.has-project .workspace-nav button{min-height:44px;font-size:13px;padding:8px 12px}
 #menu-share{width:40px;min-width:40px;margin-left:auto;border:0;padding:8px}
 #menu-share span{display:none}
 .chantier-bar .app-actions{grid-row:2;grid-column:2;gap:4px;position:static}
 .project-menu>summary{font-size:0!important;padding:8px;min-width:40px;text-align:center}
 .project-menu>summary::before{font-size:22px;margin:0}
 .project-menu-body{top:calc(100% + 4px);z-index:900}
 .has-project .app-actions .icon-button{width:40px;min-width:40px}
 .connection-bar{min-height:34px;padding:5px 12px;gap:4px;font-size:11px}
 #connection-message{gap:4px 10px;min-width:0}.connection-bar .button{font-size:11px;padding-inline:0}
 .connection-copy{font-size:11px}#new-project{font-size:12px;padding-inline:8px}
}

/* Consultation dense sur ordinateur, cibles confortables sur appareil tactile. */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#device-status:empty{display:none}#device-status{border-radius:10px;min-width:18px;padding:2px 5px;background:#e8f3e9;color:var(--accent);font-size:12px}
#device-open.needs-action #device-status{background:#fff0d6;color:#79581e}
.management-group{border-bottom:1px solid var(--line);padding:4px 0}.management-group h3{margin:4px 12px;font-size:12px;color:var(--muted)}
.project-picker select{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home{padding-top:24px}.home-heading{gap:16px;margin-bottom:16px}.home-heading>div{flex:1;min-width:0}.home-heading h1{margin-bottom:4px}.home-search{margin-bottom:16px}
.project-description p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.files-view{padding:16px 24px 40px}.files-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:12px;align-items:end}
.files-toolbar>div:first-child{max-width:none}.files-toolbar label{margin-bottom:4px}.space-controls{display:flex;gap:6px;align-items:center;min-width:0}
#file-space{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);border-radius:8px;background:white;padding:8px;font-size:14px;text-overflow:ellipsis}
.files-toolbar input{height:44px}.files-toolbar .project-menu{position:relative}.files-toolbar .project-menu-body{left:auto;right:0;width:min(280px,calc(100vw - 32px))}
#file-destination{font-size:12px;margin:8px 12px;color:var(--muted);overflow-wrap:anywhere}
#files-message{margin:12px 0}.document-group{margin-bottom:4px}
@media(min-width:761px) and (max-width:1279px){#menu-share span{display:none}#menu-share{width:44px;padding:8px}#project-menu>summary{font-size:0}#project-menu>summary::before{font-size:22px;margin:0}}
@media(min-width:1100px) and (pointer:fine){
 body{font-size:14px}.button,.has-project .workspace-nav button,.project-menu>summary{min-height:36px;padding-block:7px}
 .project-row{min-height:64px;padding:8px 16px;gap:24px}.project-description h2{font-size:14px;margin:0}.project-description p{font-size:12px;-webkit-line-clamp:1}.project-stats strong{font-size:18px}.project-stats small{margin-top:0}
 .document-group li{min-height:52px;padding:0 14px}.document-description>a{min-height:36px;font-size:14px}.document-description small{margin-top:0}.document-actions a,.row-menu>summary{min-height:36px}.row-menu>summary{width:36px}
 .chantier-bar .project-picker select{min-height:36px}
 #file-space,.files-toolbar input{min-height:36px;height:36px}.document-group>summary{min-height:36px}
}
@media(max-width:760px),(pointer:coarse){
 .button,.home-link,.workspace-nav button,.project-menu>summary,.close-button{min-width:44px;min-height:44px}
 .chantier-bar .project-picker select{min-height:44px}
 .home-heading{flex-wrap:wrap;gap:8px}.home-heading>div{flex-basis:100%}.home-heading .project-count{margin-left:auto}.home{padding:20px 16px 40px}
}
@media(max-width:600px){
 .files-view{padding:12px 16px 32px}.files-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:8px}.files-context{grid-column:1/-1}.files-search{min-width:0}.files-toolbar .project-menu>summary{font-size:14px!important;padding:12px}.files-toolbar .project-menu>summary::before{content:none}
 .document-group li{padding:4px 12px;gap:8px}.document-actions{gap:12px}
}

.files-toolbar .project-menu>summary{font-size:14px!important}.files-toolbar .project-menu>summary::before{content:none}
@media(max-width:760px){
 .has-project .app-actions .icon-button,#account-open,#device-open,#menu-share{width:44px;min-width:44px;min-height:44px}
 #device-open{position:relative}#device-status{position:absolute;top:0;right:0;padding:1px 4px;min-width:16px;background:#e8f3e9}

 .project-row{grid-template-columns:minmax(0,1fr) auto;padding:10px 14px;gap:4px 8px}.project-description{grid-column:1;grid-row:1}.project-description h2{margin:0;font-size:15px}.project-description p{-webkit-line-clamp:1}.project-open{grid-column:2;grid-row:1;align-self:start;padding-top:3px}.project-open>span{display:none}
 .project-stats{grid-column:1/-1;grid-row:2;justify-content:flex-start;flex-wrap:wrap;gap:4px 12px;text-align:left}.project-stats>span{min-width:0;display:inline-flex;align-items:baseline;gap:4px}.project-stats strong{font-size:14px}.project-stats small{margin:0;font-size:12px}.project-stats .zero-count{display:none}.project-stats .project-empty{display:inline;font-size:12px;color:var(--muted)}
 .document-download{display:none!important}.menu-download{display:flex!important}.document-actions{flex-wrap:nowrap}.document-group>summary{gap:6px}.document-group>summary h2{font-size:12px}

}

@media(max-width:1099px),(pointer:coarse){
 .button,.close-button,.has-project .workspace-nav button,.project-menu>summary{min-height:44px;min-width:44px}
 .has-project .app-actions .icon-button{min-width:44px;min-height:44px;width:44px}.home-search input{min-height:44px}
}
