/*
 * DoneFile native Web Admin UX V2.
 * Presentation only; canonical data/authority remains in the existing runtime.
 */

html[data-donefile-ux="v2"] [data-uxv2-legacy-invite="hidden"]{display:none!important}
.uxv2-invite-panel{margin-bottom:18px}
.uxv2-lead{margin:0 0 14px;color:var(--muted,#64748b)}
.uxv2-invite-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.uxv2-invite-form label{display:grid;gap:6px;font-size:13px;font-weight:650;color:#20344a}
.uxv2-invite-form input,.uxv2-invite-form select{
  width:100%;min-height:44px;border:1px solid #d7e0ea;border-radius:12px;background:#fff;
  padding:0 12px;font:inherit;color:#07182b
}
.uxv2-invite-form .uxv2-check{grid-column:1/-1;display:flex;align-items:center;gap:9px;font-weight:600}
.uxv2-invite-form .uxv2-check input{width:18px;min-height:18px;margin:0}
.uxv2-share{
  margin-top:14px;padding:14px;border:1px solid #cfe0f4;border-radius:14px;background:#f7fbff;
  display:flex;align-items:center;justify-content:space-between;gap:14px
}
.uxv2-share>div:first-child{display:grid;gap:4px}
.uxv2-share small{color:#64748b}
.uxv2-share-actions,.uxv2-invite-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.uxv2-share-actions button,.uxv2-invite-actions button{
  border:1px solid #cbd8e7;background:#fff;color:#0c315a;border-radius:10px;padding:8px 10px;font:inherit;cursor:pointer
}
.uxv2-invite-list{display:grid;gap:8px}
.uxv2-invite-row{
  display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-top:1px solid #edf1f5
}
.uxv2-invite-row>div:first-child{display:grid;gap:3px}
.uxv2-invite-row small{color:#64748b}
.uxv2-state{font-size:12px;font-weight:750;border-radius:999px;padding:5px 8px;background:#eef3f8;color:#29435f}
.uxv2-state-accepted{background:#eaf8ef;color:#17633a}
.uxv2-state-cancelled,.uxv2-state-expired{background:#f5f5f5;color:#6b7280}
.uxv2-empty{padding:16px 0;color:#64748b}
@media (max-width:900px){
  .uxv2-invite-form{grid-template-columns:1fr}
  .uxv2-share,.uxv2-invite-row{align-items:flex-start;flex-direction:column}
}

.uxv2-seat-block{margin-top:22px;padding-top:18px;border-top:1px solid #e6edf5}

.uxv2-calendar{overflow:hidden}
.uxv2-cal-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:18px}
.uxv2-cal-tabs,.uxv2-cal-period{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.uxv2-cal-tabs button,.uxv2-cal-period button{border:1px solid #d7e0ea;background:#fff;border-radius:10px;padding:8px 11px;cursor:pointer}
.uxv2-cal-tabs button.active{background:#07182b;color:#fff;border-color:#07182b}
.uxv2-cal-week{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:8px;overflow-x:auto}
.uxv2-cal-day{min-height:360px;border:1px solid #e5ebf2;border-radius:14px;background:#fbfcfe;padding:10px}
.uxv2-cal-day>header{display:flex;justify-content:space-between;align-items:center;padding-bottom:8px;border-bottom:1px solid #edf1f5}
.uxv2-cal-day-jobs{display:grid;gap:7px;margin-top:9px}
.uxv2-cal-job{display:grid;gap:3px;width:100%;text-align:left;border:1px solid #d7e0ea;background:#fff;border-radius:10px;padding:9px;cursor:pointer;color:#10283f}
.uxv2-cal-job b{font-size:12px}.uxv2-cal-job span,.uxv2-cal-job small{font-size:11px;color:#64748b}
.uxv2-cal-progress{border-left:3px solid #2563eb}.uxv2-cal-assigned{border-left:3px solid #7c3aed}.uxv2-cal-planned{border-left:3px solid #0891b2}.uxv2-cal-completed{opacity:.7;border-left:3px solid #16a34a}
.uxv2-cal-empty-day{display:block;color:#94a3b8;font-size:11px;padding:12px 2px}
.uxv2-cal-dayview{max-width:880px}.uxv2-cal-day-list{display:grid;gap:9px}
.uxv2-cal-month{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:1px;background:#e5ebf2;border:1px solid #e5ebf2;border-radius:14px;overflow:auto}
.uxv2-cal-month-cell{min-height:130px;background:#fff;padding:8px}.uxv2-cal-month-cell.is-outside{background:#f7f9fc;color:#94a3b8}
.uxv2-cal-month-cell>header{font-size:12px;font-weight:800;margin-bottom:6px}.uxv2-cal-month-cell .uxv2-cal-job{padding:6px;margin-bottom:4px}.uxv2-cal-month-cell .uxv2-cal-job small{display:none}
.uxv2-cal-drawer-wrap{position:fixed;inset:0;z-index:120;background:rgba(3,16,29,.25);display:flex;justify-content:flex-end}
.uxv2-cal-drawer{width:min(440px,100%);height:100%;overflow:auto;background:#fff;padding:24px;box-shadow:-18px 0 50px rgba(7,24,43,.15)}
.uxv2-cal-drawer>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.uxv2-cal-drawer h2{margin:4px 0 0}.uxv2-cal-drawer>header button{border:0;background:#eef3f8;border-radius:10px;width:38px;height:38px;font-size:24px;cursor:pointer}
.uxv2-cal-drawer dl{display:grid;gap:0;margin:22px 0}.uxv2-cal-drawer dl div{padding:12px 0;border-bottom:1px solid #edf1f5}.uxv2-cal-drawer dt{font-size:11px;color:#64748b}.uxv2-cal-drawer dd{margin:4px 0 0;font-weight:650}
.uxv2-cal-form{display:grid;gap:12px}.uxv2-cal-form label{display:grid;gap:6px;font-size:12px;color:#64748b}.uxv2-cal-form input{min-height:44px;border:1px solid #d7e0ea;border-radius:10px;padding:0 10px;font:inherit}
@media(max-width:1100px){.uxv2-cal-week{grid-template-columns:repeat(7,150px)}.uxv2-cal-month{grid-template-columns:repeat(7,130px)}}
@media(max-width:700px){.uxv2-cal-toolbar{align-items:flex-start;flex-direction:column}.uxv2-cal-drawer{width:100%}}


.uxv2-company-data{display:grid;gap:16px}
.uxv2-company-data .surface-head{align-items:center}
.uxv2-company-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.uxv2-company-grid>div{display:grid;gap:5px;padding:14px;border:1px solid #e5ebf2;border-radius:12px;background:#fbfcfe}
.uxv2-company-grid small{color:#64748b;font-size:11px}.uxv2-company-grid b{font-size:14px;overflow-wrap:anywhere}
.uxv2-company-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.uxv2-company-actions .primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
.uxv2-company-actions button{min-height:44px;border:1px solid #cbd8e7;background:#fff;color:#0c315a;border-radius:11px;padding:0 14px;font:inherit;font-weight:700;cursor:pointer}
.uxv2-company-empty{display:grid;justify-items:start;gap:7px;padding:18px;border:1px dashed #cbd8e7;border-radius:14px;background:#fbfcfe}
.uxv2-company-empty span{color:#64748b}.uxv2-company-empty .primary-action{margin-top:6px}
@media(max-width:700px){.uxv2-company-grid{grid-template-columns:1fr}}

.uxv2-org{display:grid;gap:14px}.uxv2-view-toggle{display:flex;gap:5px;padding:4px;border:1px solid #dce5ee;border-radius:12px;background:#f8fafc}
.uxv2-view-toggle button{border:0;background:transparent;border-radius:8px;padding:7px 11px;font:inherit;font-weight:700;color:#64748b;cursor:pointer}
.uxv2-view-toggle button.active{background:#fff;color:#07182b;box-shadow:0 1px 5px rgba(7,24,43,.1)}
.uxv2-org-schema{display:grid;gap:12px}.uxv2-org-line{width:1px;height:20px;background:#d7e0ea;justify-self:center}
.uxv2-org-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}.uxv2-org-split::before{content:"";position:absolute;top:-7px;left:25%;right:25%;height:1px;background:#d7e0ea}
.uxv2-org-group{border:1px solid #e5ebf2;border-radius:14px;background:#fbfcfe;padding:12px}.uxv2-org-group>header{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.uxv2-org-group>header span{font-size:11px;color:#64748b}.uxv2-org-group>div,.uxv2-org-list{display:grid;gap:7px}
.uxv2-org-person{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid #e4eaf1;background:#fff;border-radius:12px;padding:10px;cursor:pointer;color:#10283f}
.uxv2-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#eaf1ff;color:#174ea6;font-weight:850;flex:none}
.uxv2-org-copy{display:grid;gap:2px;min-width:0}.uxv2-org-copy b{font-size:13px;overflow:hidden;text-overflow:ellipsis}.uxv2-org-copy small{font-size:11px;color:#64748b}.uxv2-org-copy em{font-size:10px;color:#2563eb;font-style:normal}
.uxv2-member-drawer-wrap{position:fixed;inset:0;z-index:121;background:rgba(3,16,29,.25);display:flex;justify-content:flex-end}.uxv2-member-drawer{width:min(420px,100%);height:100%;background:#fff;padding:24px;box-shadow:-18px 0 50px rgba(7,24,43,.15)}
.uxv2-member-drawer>header{display:flex;justify-content:space-between;gap:14px}.uxv2-member-drawer h2{margin:4px 0}.uxv2-member-drawer p{margin:0;color:#64748b}.uxv2-member-drawer>header button{border:0;background:#eef3f8;border-radius:10px;width:38px;height:38px;font-size:24px}
.uxv2-member-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.uxv2-member-facts>div{display:grid;gap:5px;padding:12px;border:1px solid #e5ebf2;border-radius:12px}.uxv2-member-facts small{color:#64748b;font-size:11px}
.uxv2-focus-row{outline:3px solid rgba(37,99,235,.25);outline-offset:3px}
@media(max-width:700px){.uxv2-org-split{grid-template-columns:1fr}.uxv2-org-split::before{display:none}.uxv2-member-facts{grid-template-columns:1fr}}

.uxv2-report-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.uxv2-report-toolbar input{width:min(520px,100%);min-height:44px;border:1px solid #d7e0ea;border-radius:12px;padding:0 13px;font:inherit;background:#fff}.uxv2-report-toolbar>span{font-size:12px;color:#64748b}
.uxv2-report-list,.uxv2-customer-list,.uxv2-customer-history{display:grid;gap:8px}.uxv2-report-row,.uxv2-customer-row,.uxv2-customer-history>button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;border:1px solid #e4eaf1;background:#fff;border-radius:13px;padding:13px 14px;cursor:pointer;color:#10283f}
.uxv2-report-row>div,.uxv2-customer-history>button>div{display:grid;gap:3px}.uxv2-report-row>div:last-child,.uxv2-customer-history>button>div:last-child{text-align:right;justify-items:end}.uxv2-report-row small,.uxv2-customer-row small,.uxv2-customer-history small{color:#64748b}
.uxv2-report-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800}.uxv2-report-ready{background:#eaf8ef;color:#17633a}.uxv2-report-waiting{background:#fff7e6;color:#8a5a00}
.uxv2-report-drawer-wrap,.uxv2-customer-drawer-wrap{position:fixed;inset:0;z-index:122;background:rgba(3,16,29,.25);display:flex;justify-content:flex-end}.uxv2-report-drawer,.uxv2-customer-drawer{width:min(470px,100%);height:100%;overflow:auto;background:#fff;padding:24px;box-shadow:-18px 0 50px rgba(7,24,43,.15)}
.uxv2-report-drawer>header,.uxv2-customer-drawer>header{display:flex;justify-content:space-between;gap:16px}.uxv2-report-drawer h2,.uxv2-customer-drawer h2{margin:5px 0}.uxv2-report-drawer header p,.uxv2-customer-drawer header p{margin:0;color:#64748b}.uxv2-report-drawer>header>button,.uxv2-customer-drawer>header>button{border:0;background:#eef3f8;border-radius:10px;width:38px;height:38px;font-size:24px;cursor:pointer}
.uxv2-report-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.uxv2-report-facts>div{display:grid;gap:5px;padding:12px;border:1px solid #e5ebf2;border-radius:12px}.uxv2-report-facts small{font-size:11px;color:#64748b}.uxv2-report-actions{display:grid;gap:9px}.uxv2-report-actions>button:not(.primary-action){min-height:44px;border:1px solid #cbd8e7;background:#fff;border-radius:11px;font:inherit;font-weight:700;cursor:pointer}.uxv2-report-empty{display:grid;gap:6px;padding:16px;border:1px dashed #cbd8e7;border-radius:14px;background:#fbfcfe}.uxv2-report-empty span{color:#64748b}
.uxv2-customer-row>div:first-child{display:flex;align-items:center;gap:11px}.uxv2-customer-row>div:first-child>span:last-child{display:grid;gap:3px}.uxv2-customer-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:22px 0}.uxv2-customer-metrics>div{display:grid;gap:4px;padding:12px;border:1px solid #e5ebf2;border-radius:12px}.uxv2-customer-metrics small{font-size:11px;color:#64748b}.uxv2-customer-metrics b{font-size:22px}.uxv2-customer-history>button{padding:12px}
@media(max-width:700px){.uxv2-report-toolbar{align-items:stretch;flex-direction:column}.uxv2-report-row,.uxv2-customer-row,.uxv2-customer-history>button{align-items:flex-start;flex-direction:column}.uxv2-report-row>div:last-child,.uxv2-customer-history>button>div:last-child{text-align:left;justify-items:start}.uxv2-report-facts{grid-template-columns:1fr}.uxv2-customer-metrics{grid-template-columns:1fr 1fr 1fr}}

.uxv2-company-grid-single{grid-template-columns:1fr}

html[data-donefile-ux="v2"]{--ux-ink:#07182b;--ux-muted:#64748b;--ux-line:#e4eaf1;--ux-blue:#2563eb}
html[data-donefile-ux="v2"] .df-workspace{background:#f7f9fc;color:var(--ux-ink)}
html[data-donefile-ux="v2"] .df-sidebar{background:#fff;border-right:1px solid var(--ux-line)}
html[data-donefile-ux="v2"] .df-role-nav button{min-height:44px;border-radius:12px;text-align:left}
html[data-donefile-ux="v2"] .df-role-nav button.active{background:#eaf1ff;color:#174ea6}
html[data-donefile-ux="v2"] .surface,html[data-donefile-ux="v2"] .metric{border:1px solid var(--ux-line);border-radius:16px;background:#fff;box-shadow:0 2px 10px rgba(7,24,43,.025)}
html[data-donefile-ux="v2"] .dashboard-head h1{color:var(--ux-ink);letter-spacing:-.035em}
html[data-donefile-ux="v2"] .dashboard button{min-height:44px}
html[data-donefile-ux="v2"] button:disabled{opacity:.6;cursor:wait}
html[data-donefile-ux="v2"] .customer-row,html[data-donefile-ux="v2"] .df-report-row{border:1px solid var(--ux-line);border-radius:13px;padding:14px;margin:6px 0}
html[data-donefile-ux="v2"] .df-core-storage{border:1px solid var(--ux-line);border-radius:16px;background:#fff;padding:24px}
html[data-donefile-ux="v2"] .df-core-storage dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
html[data-donefile-ux="v2"] .df-core-storage dl>div{border:1px solid var(--ux-line);border-radius:12px;padding:14px;background:#fbfcfe}
html[data-donefile-ux="v2"] .df-core-storage footer{display:flex;flex-wrap:wrap;gap:10px}
.uxv2-cal-drawer button,.uxv2-member-drawer button,.uxv2-cal-tabs button,.uxv2-cal-period button{min-height:44px}
.uxv2-cal-month-cell{max-height:none}.uxv2-member-drawer{overflow:auto}
html[data-donefile-ux="v2"] :focus-visible{outline:3px solid #2563eb;outline-offset:3px}
@media(max-width:700px){html[data-donefile-ux="v2"] .df-core-storage dl{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html[data-donefile-ux="v2"] *,html[data-donefile-ux="v2"] *::before,html[data-donefile-ux="v2"] *::after{scroll-behavior:auto!important;transition:none!important}}

/* Inline read/permission warnings inside a page surface (Jobs manifest reads, Reports reads). */
.df-banner{margin:0 0 14px;padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.5;border:1px solid #e5e7eb;background:#f8fafc;color:#0f172a}
.df-banner.warning{background:#fff8e6;border-color:#f3d48b;color:#5b4108}
.df-banner small{opacity:.75;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
