/* Final suite skin, typography and responsive behavior. Light · Carta / Dark only. */
#gs-app { min-height:100dvh; }
#gs-app [hidden],#gs-modal [hidden],#gs-drawer [hidden] { display:none !important; }
#gs-app h1 { font-family:var(--gs-font-head); font-size:32px; font-weight:400; letter-spacing:-.65px; line-height:1.16; }
#gs-app h2 { font-size:20px; } #gs-app h3 { font-size:16px; }
#gs-app :is(p,small,.gs-muted,.gs-mono,.gs-tag,.gs-badge,.gs-chip,.gs-field,.gs-check,.gs-callout,.gs-kv span,.gs-kv b,.gs-tl-date,.gs-tl-body b,.gs-tl-body p,.gs-item-main b,.gs-item-main p,.gs-note-meta,.gs-note-hist p,.gs-check-label b,.gs-check-label p,.gs-cfg-main b,.gs-cfg-main p,.gs-readonly-pill,.gs-paginate,.gs-crumb-path,.gs-legend) { font-size:14px; }
#gs-app table { font-size:14px; } #gs-app th { font-size:14px; text-transform:none; letter-spacing:0; }
#gs-app td small { font-size:14px; } #gs-app td b { font-size:16px; }
#gs-app [style*="font-size:11"],#gs-app [style*="font-size:12"],#gs-app [style*="font-size:13"] { font-size:14px !important; }
.gs-pagehead p { font-size:14px; } .gs-panel { box-shadow:var(--gs-shadow); }
.gs-side { padding:26px 18px 18px; border-color:rgba(255,255,255,.09); }
.gs-brand { display:block; padding:0 0 26px; }
.gs-brand img { width:150px; height:auto; margin-bottom:12px; }
.gs-brand strong { font-size:16px; }
.gs-brand span { font-size:14px; text-transform:none; letter-spacing:0; margin-top:4px; }
.gs-side .gs-nav-label { font-size:14px; letter-spacing:0; text-transform:none; margin-top:16px; padding-left:12px; }
.gs-nav-separator { padding-top:20px; }
.gs-side .gs-nav { display:grid; grid-template-columns:1fr; }
.gs-side .gs-nav button { min-height:48px; font-size:16px; padding:10px 12px; }
.gs-company-choice,.gs-theme-choice { display:grid; gap:6px; min-width:0; font-size:14px; }
.gs-company-choice span,.gs-theme-choice span { color:var(--gs-side-muted); }
.gs-side :is(.gs-company-choice select,.gs-theme-choice select) { color:var(--gs-side-text); background:#24352e; border:1px solid #5b7066; border-radius:9px; min-height:48px; width:100%; padding:8px; font-size:16px; }
.gs-side option { color:#f4f2eb; background:#24352e; }
.gs-side .gs-btn { background:#24352e; border-color:#5b7066; color:var(--gs-side-text); }
.gs-side-account { display:flex; align-items:center; gap:10px; padding-top:14px; border-top:1px solid #45594e; }
.gs-side-account strong,.gs-side-account span { display:block; font-size:14px; }
.gs-side-account span { color:var(--gs-side-muted); }
.gs-side-account .gs-avatar { width:40px; height:40px; background:#31594c; color:#e9f6ed; }
.gs-side-foot { gap:16px; }
.gs-top { min-height:78px; height:auto; padding:14px 28px; }
.gs-crumb { font-size:14px; flex-wrap:wrap; }
.gs-crumb button { min-height:44px; }
.gs-top-tools { min-width:0; }
.gs-search { min-height:48px; height:auto; min-width:min(260px,32vw); }
.gs-search input { font-size:16px; min-height:44px; }
.gs-mobile-brand,.gs-mobile-company,.gs-bottom-nav { display:none; }
.gs-btn,.gs-btn-sm,.gs-btn[data-size="sm"],.gs-btn[data-variant="sm"] { min-height:44px; min-width:44px; font-size:14px; white-space:normal; padding:9px 13px; text-align:center; line-height:1.3; }
#gs-app .gs-btn,#gs-app .gs-btn-sm { font-size:14px; }
.gs-btn-primary,.gs-btn[data-variant="primary"] { min-height:48px; font-weight:600; }
.gs-link { min-height:44px; font-size:16px; text-align:left; line-height:1.4; }
.gs-chip,.gs-seg button,.gs-tabs button,.gs-rail button { min-height:44px; font-size:14px; }
.gs-tabs { padding:0 16px; }
.gs-chip { border-radius:9px; }
.gs-field { font-size:14px; } .gs-field small { font-size:14px; }
.gs-field :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]), .gs-check-row :is(input,select):not([type="checkbox"]):not([type="radio"]) { min-height:48px; font-size:16px; padding:10px 12px; }
.gs-field :is(input[type="checkbox"],input[type="radio"]),.gs-check input { width:22px; height:22px; }
.gs-check { min-height:44px; align-items:center; font-size:14px; }
.gs-field textarea { min-height:108px; }
.gs-field :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]),.gs-quick-filter select,.gs-search { border-color:var(--gs-control-border); }
.gs-side :is(.gs-company-choice select,.gs-theme-choice select),.gs-mobile-company select { border-color:#82978d; }
:is(button,input,select,textarea,summary,a):focus-visible { outline:2px solid var(--gs-accent); outline-offset:3px; }
.gs-search:focus-within { outline:2px solid var(--gs-accent); outline-offset:3px; }
.gs-search input:focus-visible { outline:none; }
.gs-check-row { align-items:start; }
.gs-check-row[data-ci] { grid-template-columns:minmax(0,1.15fr) minmax(180px,.7fr) minmax(150px,1fr) minmax(140px,1fr); }
.gs-check-row[data-ci] > span { font-size:14px; overflow-wrap:anywhere; }
.gs-check-row[data-ci] > :is(input,select) { min-width:0; max-width:100%; width:100%; }
.gs-badge { white-space:normal; line-height:1.35; padding:5px 9px; }
.gs-row-actions { gap:8px; }
.gs-item { align-items:center; } .gs-item-main b { font-size:16px; }
.gs-kv b { font-size:16px; }
.gs-visual { display:block; flex:none; object-fit:contain; background:#f8f1e5; border-radius:10px; border:1px solid var(--gs-border); max-width:100%; filter:none; }
.gs-visual-thumb { width:64px; height:64px; margin:0 0 6px; }
.gs-visual-card { width:100%; height:180px; }
.gs-visual-detail { width:min(360px,100%); height:220px; }
.gs-visual-neutral { width:64px; height:64px; display:grid; justify-items:center; align-content:center; gap:3px; color:var(--gs-muted); background:var(--gs-soft); text-align:center; padding:4px; }
.gs-visual-neutral span { font-size:14px; line-height:1.2; }
.gs-visual-neutral.gs-visual-detail { width:min(360px,100%); height:220px; }
.gs-visual-neutral.gs-visual-card { width:100%; height:180px; }
.gs-person-initials { display:inline-grid; place-items:center; width:52px; height:52px; flex:none; border-radius:50%; background:var(--gs-tint); color:var(--gs-accent); font-weight:600; font-size:18px; margin:0 6px 6px 0; }
.gs-ppe-card { display:grid; grid-template-columns:72px minmax(0,1fr); gap:14px; align-items:center; }
.gs-menu-links { display:grid; gap:10px; }
.gs-menu-links .gs-btn { justify-content:flex-start; }
.gs-menu-theme { display:flex; gap:10px; align-items:center; flex-wrap:wrap; padding:12px 0; }
.gs-help-list { font-size:16px; line-height:1.7; padding-left:20px; }
.gs-boot { min-height:65dvh; max-width:620px; margin:auto; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:20px; padding:32px; text-align:center; }
.gs-boot img { width:180px; }
.gs-public-surface { display:block !important; }
.gs-public-surface #gs-content { max-width:850px; margin:auto; }
.wk-wrap { grid-template-columns:1fr; max-width:780px; }
.wk-head { background:#182320; color:#f4f2eb; flex-wrap:wrap; gap:14px; }
.wk-head img { height:26px; max-width:150px; filter:none; }
.wk-head b,.wk-head span { font-size:14px; }
.wk-body { gap:16px; padding:24px; }
.wk-body .gs-visual-card { height:190px; object-fit:cover; }
.wk-body form { display:grid; gap:16px; }
.wk-photos { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr)); gap:12px; }
.wk-area-scene { display:flex; align-items:center; min-width:0; margin-top:4px; }
.wk-area-scene .gs-visual-thumb { margin:0; }
.gs-dialog-head > div { min-width:0; overflow-wrap:anywhere; }
.gs-dialog-body { min-width:0; grid-template-columns:minmax(0,1fr); }
.gs-dialog-body > * { min-width:0; }
.gs-dialog-body .gs-chip { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.wk-photo { border:1px solid var(--gs-border); border-radius:10px; display:grid; gap:8px; padding:10px; min-width:0; }
.wk-photo img { display:block; width:100%; max-height:200px; object-fit:contain; border-radius:8px; }
.wk-photo span { overflow-wrap:anywhere; font-size:14px; }
.wk-photo .gs-btn { width:100%; }
.wk-body summary { min-height:44px; cursor:pointer; font-size:16px; }
.gs-dialog-head h2 { font-size:22px; line-height:1.25; margin:0; }
.gs-dialog-head p,.gs-dialog-body p,.gs-dialog-body small,.gs-dialog-body label,.gs-dialog-body .gs-check,.gs-dialog-body .gs-field,.gs-dialog-body .gs-muted,.gs-dialog-body .gs-callout { font-size:14px; }
.gs-dialog-body :is(input,textarea,select):not([type="checkbox"]):not([type="radio"]) { font-size:16px; }
.gs-dialog-body :is(b,strong,.gs-tag,.gs-badge,.gs-kv span,.gs-kv b,.gs-check-label b,.gs-cfg-main b) { font-size:14px; }
.gs-dialog-body summary { min-height:44px; cursor:pointer; }
.gs-dialog-body :is(th,td,.gs-diff-row,.gs-diff-row span,.gs-diff-op,.gs-sub,.gs-rev-num) { font-size:14px !important; }
#gs-drawer .gs-dialog-body [style*="font-size:11"],#gs-drawer .gs-dialog-body [style*="font-size:12"],#gs-drawer .gs-dialog-body [style*="font-size:13"],#gs-drawer .gs-dialog-body [style*="font-size: 11"],#gs-drawer .gs-dialog-body [style*="font-size: 12"],#gs-drawer .gs-dialog-body [style*="font-size: 13"] { font-size:14px !important; }
#gs-drawer .gs-dialog-body { min-width:0; grid-template-columns:minmax(0,1fr); grid-auto-rows:max-content; align-content:start; }
#gs-drawer .gs-dialog-body > * { min-width:0; }
#gs-drawer .gs-dialog-body :is(p,small) { overflow-wrap:anywhere; }
@media screen {
/* La ricevuta deve adattarsi anche nel riepilogo precedente alla conferma. */
:is(#gs-drawer #print-area,#gs-modal) .gs-paper .gs-paper-head > span { min-width:0; overflow-wrap:anywhere; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table { display:block; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper tbody { display:block; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper :is(th,td) { display:block; min-width:0; overflow-wrap:anywhere; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:first-of-type tr { display:grid; grid-template-columns:minmax(0,.6fr) minmax(0,1fr); }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:first-of-type th { text-transform:none; letter-spacing:0; font-weight:600; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) thead { display:none; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) tr { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:10px; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:first-child,:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:last-child { grid-column:1/-1; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td::before { display:block; margin-bottom:4px; font-size:14px; color:#5b6670; font-weight:600; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:nth-child(1)::before { content:"Articolo"; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:nth-child(2)::before { content:"Quantità"; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:nth-child(3)::before { content:"Unità"; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:nth-child(4)::before { content:"Taglia"; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:nth-child(5)::before { content:"Note"; }
:is(#gs-drawer #print-area,#gs-modal) .gs-paper table:nth-of-type(2) td:last-child:empty { display:none; }
}
#gs-drawer .gs-dialog-body .gs-kv { width:100%; min-width:0; }
#gs-drawer .gs-dialog-body .gs-kv span { overflow-wrap:anywhere; }
#gs-drawer :is(p,small,.gs-muted,.gs-tag,.gs-badge,.gs-kv span,.gs-kv b,.gs-check-label b,.gs-cfg-main b) { font-size:14px; }
#gs-drawer :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]) { font-size:16px; }
.gs-xlsx :is(th,td,td small),.gs-sheet :is(th,td,td small) { font-size:14px; white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere; }
.gs-xlsx th,.gs-xlsx td,.gs-sheet th,.gs-sheet td { min-width:88px; max-width:340px; }
.gs-xlsx th:first-child,.gs-sheet th:first-child { min-width:48px; }
.gs-xlsx td small,.gs-sheet td small { display:block; margin-top:4px; line-height:1.35; }
#gs-app :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]) { font-family:var(--gs-font); font-size:16px; min-height:48px; }
#gs-app textarea { line-height:1.5; }
.gs-dialog-body [style*="font-size:11"],.gs-dialog-body [style*="font-size:12"],.gs-dialog-body [style*="font-size:13"] { font-size:14px !important; }
.gs-dialog-foot { background:var(--gs-paper); }
.gs-dialog .gs-field > span { font-size:14px; }
.gs-dialog .gs-field :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]) { min-height:48px; }
.gs-dialog .gs-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); }
/* La checklist ha quattro colonne proprie: non comprimerla in un campo del modulo. */
.gs-dialog .gs-grid > :is([data-field="ckBox"],[data-field="resolve"]) { grid-column:1 / -1; }
.gs-foot { font-size:14px; }
#gs-app .gs-tabs .gs-count,#gs-app .gs-stat span { font-size:14px; }
.gs-stat { color:var(--gs-text); font-family:var(--gs-font); cursor:pointer; text-align:left; }
.gs-stat:hover { border-color:var(--gs-accent); }
.gs-quick-filter { display:flex; gap:8px; align-items:center; font-size:14px; }
.gs-quick-filter select { min-height:48px; font-size:16px; background:var(--gs-paper); color:var(--gs-text); border:1px solid var(--gs-control-border); border-radius:8px; padding:8px 10px; }
.gs-activity-search { min-width:170px; flex:1; }
.gs-conflict-summary { align-items:center; justify-content:space-between; }
.gs-pagehead .gs-conflict-summary { margin:0; padding:8px 10px; gap:10px; }
.gs-mobile-label { display:none; }
#gs-toast { font-size:14px; }
#gs-toast button { min-height:44px; font-size:14px; }
#gs-app .gs-paper,#gs-modal .gs-paper { background:#fff; color:#292722; }
#gs-app .gs-paper :is(th,td,p,small),#gs-modal .gs-paper :is(th,td,p,small) { color:#292722; }
.gs-paper .gs-muted { color:#686158 !important; }
@media (max-width:1080px) {
  #gs-app { --gs-side-w:220px; } .gs-top { padding:12px 20px; }
  .gs-side { padding-left:14px; padding-right:14px; }
}
@media (max-width:1000px) {
  #gs-app { display:block; }
  .gs-side { display:none; }
  .gs-top { display:flex; flex-wrap:wrap; align-items:center; gap:10px; background:#182320; color:#f4f2eb; padding:12px 16px; position:relative; }
  .gs-mobile-brand { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; font-size:14px; }
  .gs-mobile-brand img { width:116px; height:auto; }
  .gs-mobile-company { display:block; width:100%; }
  .gs-mobile-company .gs-company-choice { display:flex; align-items:center; gap:10px; color:#f4f2eb; }
  .gs-mobile-company .gs-company-choice span { color:#c3cdc8; font-size:14px; }
  .gs-mobile-company select { min-width:0; min-height:44px; flex:1; width:100%; font-size:16px; color:#f4f2eb; background:#24352e; border:1px solid #82978d; border-radius:8px; padding:8px; }
  .gs-mobile-company option { color:#f4f2eb; background:#24352e; }
  .gs-crumb { display:none; }
  .gs-top-tools { width:100%; margin:0; gap:8px; }
  .gs-top-tools .gs-search { color:#f4f2eb; background:#24352e; border-color:#82978d; min-width:0; flex:1; }
  .gs-top-tools .gs-search input::placeholder { color:#c3cdc8; }
  .gs-top-tools .gs-help { color:#f4f2eb; background:#24352e; border-color:#5b7066; }
  #gs-app[data-section="activities"] .gs-top-tools { display:none; }
  #gs-content { padding:20px 16px 104px; }
  .gs-bottom-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); position:fixed; bottom:0; left:0; right:0; z-index:40; background:var(--gs-paper); border-top:1px solid var(--gs-border); padding:6px 4px max(6px,env(safe-area-inset-bottom)); box-shadow:0 -4px 20px rgba(0,0,0,.08); }
  .gs-bottom-nav button { border:0; background:transparent; color:var(--gs-muted); padding:7px 2px; min-width:0; min-height:60px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; font-size:14px; line-height:1.25; border-radius:8px; }
  .gs-bottom-nav button[aria-current="page"] { background:var(--gs-tint); color:var(--gs-accent); font-weight:600; }
  .gs-bottom-nav svg.lucide { width:22px; height:22px; }
  .gs-foot { padding:14px 16px 98px; }
  #gs-toast { bottom:90px; }
  #gs-app h1 { font-size:28px; }
  .gs-row-actions { justify-content:flex-start; }
  #gs-app[data-section="activities"] .gs-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; overflow:visible; }
  #gs-app[data-section="activities"] .gs-tabs button { min-width:0; white-space:normal; text-align:center; }
  .gs-check-row[data-ci] { grid-template-columns:1fr; }
  .gs-rail { display:grid; grid-auto-flow:row; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:visible; }
  .gs-rail button { white-space:normal; text-align:left; }
}
@media (max-width:620px) {
  #gs-content { padding:16px 12px 98px; }
  .gs-pagehead { gap:12px; margin-bottom:14px; }
  .gs-pagehead .gs-actions { width:100%; margin:0; }
  .gs-pagehead .gs-actions .gs-btn { flex:1 1 145px; min-width:min(145px,100%); }
  .gs-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .gs-stat { padding:10px 12px; min-width:0; }
  .gs-stat strong { font-size:26px; }
  .gs-stat span,.gs-stat small { font-size:14px; }
  .gs-tabs { padding:0 6px; gap:0; }
  .gs-tabs button { font-size:14px; padding:10px 9px; }
  .gs-tool { padding:12px; gap:8px; }
  .gs-item { display:grid; grid-template-columns:64px minmax(0,1fr); align-items:start; }
  .gs-item > .gs-item-side { grid-column:1/-1; justify-items:stretch; }
  .gs-item-side .gs-item-actions { justify-content:flex-start; }
  .gs-check-row,.gs-matrix { grid-template-columns:1fr; }
  .gs-grid,.gs-grid-2 { grid-template-columns:1fr; }
  .gs-dialog-head { padding:16px; } .gs-dialog-body { padding:16px; } .gs-dialog-foot { padding:12px 16px max(12px,env(safe-area-inset-bottom)); }
  .gs-dialog-head [data-close] { flex:none; }
  .gs-dialog-foot .gs-btn { flex:1; }
  #gs-modal { width:100%; max-width:100%; margin:0; height:100dvh; max-height:100dvh; }
  #gs-modal > form.gs-dialog { min-height:100dvh; max-height:100dvh; border-radius:0; border:0; grid-template-rows:auto minmax(0,1fr) auto; }
  .gs-dialog-body { overscroll-behavior:contain; }
  .gs-dialog .gs-grid { grid-template-columns:1fr; }
  .gs-dialog .gs-check-row { grid-template-columns:1fr !important; }
  .wk-body { padding:16px; }
  #gs-drawer { width:100%; }
  .gs-sheetwrap,.gs-sheet-area { overflow:auto; max-width:100%; }
  .gs-sheet { min-width:max-content; }
  .gs-visual-detail,.gs-visual-neutral.gs-visual-detail { height:180px; }
  #gs-app[data-section="activities"] .gs-pagehead p { display:none; }
  #gs-app[data-section="activities"] .gs-pagehead .gs-btn { min-height:48px; }
  #gs-app[data-section="activities"] .gs-stats { grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-bottom:10px; }
  #gs-app[data-section="activities"] .gs-stat { min-height:86px; padding:7px 5px; align-content:space-between; text-align:center; }
  #gs-app[data-section="activities"] .gs-stat span { line-height:1.3; }
  #gs-app[data-section="activities"] .gs-stat strong { font-size:24px; }
  #gs-app[data-section="activities"] .gs-stat small { display:none; }
  .gs-quick-filters { padding:8px 0; border:0; background:transparent; margin-bottom:8px; }
  .gs-quick-filters .gs-quick-filter { display:none; }
  .gs-quick-filters .gs-activity-search { min-width:0; flex:1; }
  .gs-quick-filters .gs-filter-summary { display:none; }
  .gs-quick-filters[data-filtered="false"] [data-act="activity-filters-reset"] { display:none; }
  .gs-conflict-summary { padding:8px 10px; margin-bottom:10px; font-size:14px; }
  #gs-app[data-section="activities"] .gs-pagehead > div:first-child { flex:1; }
  #gs-app[data-section="activities"] .gs-pagehead .gs-conflict-summary { background:transparent; padding:0; margin:0; }
  #gs-app[data-section="activities"] .gs-pagehead .gs-conflict-summary > div { display:none; }
  #gs-app[data-section="activities"] .gs-pagehead .gs-conflict-summary button { background:var(--gs-red-bg); border-color:var(--gs-red); color:var(--gs-red); min-height:44px; }
  .gs-pagehead .gs-conflict-summary .gs-desktop-label { display:none; }
  .gs-pagehead .gs-conflict-summary .gs-mobile-label { display:inline; }
}
@media (max-width:360px) {
  .gs-mobile-brand span { max-width:140px; text-align:right; }
  .gs-bottom-nav button { font-size:14px; }
  .gs-btn { padding-left:10px; padding-right:10px; }
  #gs-app[data-section="activities"] .gs-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; overflow:visible; }
  #gs-app[data-section="activities"] .gs-tabs button { padding:9px 2px; white-space:normal; text-align:center; }
  #gs-app[data-section="activities"] .gs-tabs .gs-count { display:block; }
}
/* Cartelle delle anagrafiche: gli stessi controlli restano raggiungibili su telefono. */
.gs-profile-tools { display:flex; align-items:end; flex-wrap:wrap; gap:12px; margin:16px 0; }
.gs-profile-tools > * { min-width:0; flex:1 1 180px; }
.gs-profile-tools .gs-search { flex-basis:280px; }
.gs-profile-tools :is(input,select) { width:100%; min-width:0; }
.gs-profile-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:16px 0 10px; overflow-wrap:anywhere; }
.gs-profile-breadcrumbs :is(button,a) { min-height:44px; white-space:normal; text-align:left; }
.gs-profile-folders { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr)); gap:14px; margin:16px 0 22px; }
.gs-profile-folder { display:flex; flex-direction:column; gap:12px; min-width:0; padding:16px; border:1px solid var(--gs-border); border-radius:var(--gs-radius); background:var(--gs-paper); box-shadow:var(--gs-shadow); }
.gs-profile-folder-main { display:flex; align-items:flex-start; gap:12px; width:100%; min-width:0; min-height:52px; border:0; padding:0; background:transparent; color:inherit; font:inherit; cursor:pointer; text-align:left; white-space:normal; overflow-wrap:anywhere; }
.gs-profile-folder-main > svg { flex:none; width:24px; height:24px; margin-top:3px; }
.gs-profile-folder-main small { display:block; margin-top:5px; color:var(--gs-muted); font-weight:400; }
.gs-profile-folder p { white-space:pre-wrap; overflow-wrap:anywhere; margin:0; }
.gs-profile-folder > .gs-row-actions { margin-top:auto; flex-wrap:wrap; }
.gs-profile-location { display:flex; align-items:start; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-bottom:16px; overflow-wrap:anywhere; }
.gs-profile-location > * { min-width:0; }
.gs-profile-location > div:first-child { flex:1 1 240px; }
.gs-profile-location .gs-row-actions { flex-wrap:wrap; }
.gs-profile-path { display:block; white-space:normal; overflow-wrap:anywhere; }
.gs-profile-selection { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:12px 16px; background:var(--gs-soft); border:1px solid var(--gs-border); border-radius:var(--gs-radius-sm); margin:12px 0; }
.gs-profile-check { display:inline-flex; gap:8px; align-items:center; min-width:44px; min-height:44px; cursor:pointer; }
.gs-profile-check input { flex:none; width:20px; height:20px; margin:0; accent-color:var(--gs-accent); }
.gs-profile-page { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:16px; }
/* La larghezza utile varia anche nelle schede e accanto al menu configurazione. */
@media screen {
  .gs-responsive-table { container:gs-table / inline-size; min-width:0; }
  .gs-responsive-table > table { width:100%; table-layout:fixed; border-collapse:collapse; }
  .gs-responsive-table :is(th,td) { overflow-wrap:anywhere; }
  #gs-modal .gs-responsive-table :is(th,td) { padding:12px; text-align:left; border-bottom:1px solid var(--gs-border); }
  .gs-responsive-table :is(.gs-link,.gs-tag,.gs-badge) { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
  .gs-responsive-table .gs-row-actions > * { flex-shrink:0; max-width:100%; }
  @container gs-table (max-width:880px) {
    .gs-responsive-table > table,.gs-responsive-table tbody { display:block; }
    .gs-responsive-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
    .gs-responsive-table tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; padding:18px; border-bottom:1px solid var(--gs-border); }
    .gs-responsive-table tbody tr:last-child { border-bottom:0; }
    :is(#gs-app,#gs-modal,#gs-drawer) .gs-responsive-table td { display:block; min-width:0; padding:0; border:0; }
    .gs-responsive-table td:first-child,.gs-responsive-table td[data-column-role="actions"],.gs-responsive-table td[colspan] { grid-column:1/-1; }
    .gs-responsive-table td[data-label]::before { content:attr(data-label); display:block; color:var(--gs-muted); font-size:14px; font-weight:600; margin-bottom:6px; line-height:1.4; }
    .gs-responsive-table td:first-child::before { display:none; }
    .gs-responsive-table td:first-child :is(.gs-visual-thumb,.gs-person-initials) { float:left; margin:0 12px 6px 0; }
    :is(#gs-app,#gs-modal,#gs-drawer) .gs-responsive-table .gs-row-actions { justify-content:flex-start; padding-top:4px; }
    :is(#gs-app,#gs-modal,#gs-drawer) .gs-responsive-table td[data-column-role="actions"] { border-top:1px solid var(--gs-border); padding-top:10px; }
  }
  @container gs-table (max-width:420px) {
    .gs-responsive-table tbody tr { grid-template-columns:minmax(0,1fr); gap:14px; padding:16px; }
  }
}
.gs-seg { max-width:100%; }
.gs-seg button { min-width:0; overflow-wrap:anywhere; white-space:normal; }
@media (max-width:620px) {
  .gs-profile-tools > * { flex-basis:100%; }
  .gs-tabs[aria-label="Organizzazione anagrafiche"] { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; overflow:visible; }
  .gs-tabs[aria-label="Organizzazione anagrafiche"] button { min-width:0; white-space:normal; overflow-wrap:anywhere; padding:10px 5px; }
  .gs-profile-folder { padding:14px; }
  .gs-profile-folders { gap:10px; }
  .gs-profile-selection { padding:10px 12px; }
  .gs-profile-selection .gs-btn { flex:1 1 auto; }
  .gs-profile-page { justify-content:center; padding:14px 10px; }
}
/* Shared form rhythm and configuration navigation. */
#gs-modal .gs-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 20px; align-items:start; }
#gs-modal .gs-dialog-body, #gs-modal .gs-form-grid { align-content:start; }
#gs-modal .gs-form-grid > .gs-field > label { min-height:42px; display:flex; flex-wrap:wrap; align-content:flex-end; align-items:baseline; gap:0 5px; }
#gs-modal .gs-field-wide, #gs-modal .gs-form-fold { grid-column:1/-1; }
#gs-modal .gs-form-grid > .gs-field-wide > label { min-height:0; }
.gs-form-fold, .gs-section-notes { border:1px solid var(--gs-border); border-radius:var(--gs-radius-sm); padding:12px 16px; min-width:0; }
.gs-form-fold > summary, .gs-section-notes > summary { cursor:pointer; font-weight:600; line-height:1.5; }
.gs-form-fold[open] > summary, .gs-section-notes[open] > summary { margin-bottom:14px; }
.gs-section-notes { margin-top:16px; color:var(--gs-muted); }
.gs-section-notes .gs-panel { margin:0; }
.gs-category-create { display:grid; gap:8px; }
.gs-category-create > button { justify-self:start; padding:4px 0; text-align:left; }
.gs-related-new { justify-self:start; min-height:36px; padding:4px 0; text-align:left; }
.gs-category-entry { display:flex; align-items:center; gap:8px; margin-top:6px; }
.gs-category-entry input { flex:1; min-width:0; }
.gs-category-entry button { flex:none; }
.gs-config-nav { gap:8px; }
.gs-config-nav details { border-bottom:1px solid var(--gs-border); padding-bottom:8px; }
.gs-config-nav summary { cursor:pointer; font-weight:600; padding:12px 4px; font-size:14px; }
.gs-config-nav details > div { display:grid; gap:2px; }
.gs-config-nav button { white-space:normal; }
@media (max-width:900px) {
  .gs-rail.gs-config-nav { grid-auto-flow:row; overflow:visible; }
}
@media (max-width:620px) {
  #gs-modal .gs-form-grid { grid-template-columns:minmax(0,1fr); }
  #gs-modal .gs-form-grid > .gs-field > label { min-height:0; }
  .gs-category-entry { flex-wrap:wrap; }
  .gs-category-entry input { flex-basis:100%; }
}
@media print {
  .gs-bottom-nav,.gs-top,.gs-side { display:none !important; }
  :root,:root[data-theme="dark"] { color-scheme:light; --gs-bg:#fff; --gs-paper:#fff; --gs-text:#292722; --gs-muted:#686158; }
  #gs-content { padding:0; } .gs-paper { box-shadow:none; border:0; }
  body:has(#gs-drawer[data-open="true"] #print-area) { margin:0; background:#fff; }
  body:has(#gs-drawer[data-open="true"] #print-area) > :not(#gs-drawer) { display:none !important; }
  body:has(#gs-drawer[data-open="true"] #print-area) #gs-drawer { display:block !important; position:static; width:100%; height:auto; max-height:none; border:0; box-shadow:none; transform:none; overflow:visible; background:#fff; color:#292722; }
  body:has(#gs-drawer[data-open="true"] #print-area) #gs-drawer > :not(.gs-dialog-body) { display:none !important; }
  body:has(#gs-drawer[data-open="true"] #print-area) #gs-drawer .gs-dialog-body { display:block; height:auto; max-height:none; min-height:0; padding:0; overflow:visible; }
  body:has(#gs-drawer[data-open="true"] #print-area) #gs-drawer .gs-dialog-body > :not(#print-area) { display:none !important; }
  body:has(#gs-drawer[data-open="true"] #print-area) #print-area { display:block !important; width:100%; margin:0; }
  body:has(#gs-drawer[data-open="true"] #print-area) #print-area .gs-paper { background:#fff; color:#292722; border:0; box-shadow:none; }
}
