:root{--bg:#f7f5f0;--panel:#fffdfa;--ink:#171714;--muted:#726e67;--line:#e7e1d8;--sidebar:#171716;--accent:#b9853f;--danger:#d34b4b;--success:#1d8b50;--blue:#4b7ed7}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;padding:0;font-family:Segoe UI Variable,Segoe UI,Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:196px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--sidebar);color:#f4f1eb;height:100vh;min-height:100vh;padding:18px 12px 22px;position:sticky;top:0;overflow:auto}.brand{background:#fbfaf7;border-radius:9px;justify-content:center;align-items:center;height:58px;margin:0 4px 18px;display:flex;overflow:hidden}.brand img{object-fit:contain;width:116px;height:auto}.nav-group{margin-top:13px}.nav-label{letter-spacing:.14em;color:#8f8c85;margin:0 8px 6px;font-size:10px}.nav-item{color:#e7e4df;border-radius:7px;align-items:center;gap:10px;margin:1px 0;padding:8px 10px;font-size:12.5px;display:flex}.nav-item:hover,.nav-item.primary{background:#2b2a28}.main{min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f5f0eb;justify-content:space-between;align-items:center;height:62px;padding:10px 24px;display:flex;position:sticky;top:0}.searchbox{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;gap:9px;width:min(460px,42vw);padding:9px 12px;display:flex}.searchbox input{width:100%;font:inherit;background:0 0;border:0;outline:0}.top-actions{align-items:center;gap:12px;display:flex}.language-select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 10px}.avatar{color:#fff;background:#222;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.profile-copy{flex-direction:column;line-height:1.15;display:flex}.profile-copy strong{font-size:12px}.profile-copy span{color:var(--muted);font-size:10px}.page{max-width:1650px;margin:0 auto;padding:20px 24px 32px}.eyebrow{color:var(--muted);margin-bottom:2px;font-size:11px}.page h1,.card-title,.serif{font-family:Georgia,Times New Roman,serif}.page h1{letter-spacing:-.025em;margin:0 0 2px;font-size:34px;font-weight:500}.subtitle{color:var(--muted);margin-bottom:16px}.kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:10px;display:grid}.kpi,.card{background:var(--panel);border:1px solid var(--line);border-radius:10px}.kpi{padding:14px 15px}.kpi-label{color:var(--muted);margin-bottom:6px;font-size:11px}.kpi-value{font-family:Georgia,Times New Roman,serif;font-size:26px}.dashboard-grid{grid-template-columns:1.15fr 1.1fr .95fr;gap:10px;display:grid}.card{min-width:0;padding:14px 15px}.card-title-row{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.card-title{font-size:18px;font-weight:500}.linkish{color:#9b6a2a;font-size:10px}.agenda-row,.task-row,.job-row,.finance-row,.integration-row{border-top:1px solid #eee9e1;align-items:center;gap:9px;padding:8px 0;display:flex}.agenda-row:first-of-type,.task-row:first-of-type,.job-row:first-of-type,.finance-row:first-of-type,.integration-row:first-of-type{border-top:0}.grow{flex:1;min-width:0}.primary-text{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.secondary-text{color:var(--muted);margin-top:2px;font-size:10.5px}.badge{white-space:nowrap;background:#f1ece2;border-radius:999px;padding:3px 7px;font-size:10px}.badge.red{color:#a83939;background:#fde7e7}.badge.green{color:#277449;background:#e3f2e7}.badge.blue{color:#3d62a4;background:#e8eefb}.span-2{grid-column:span 2}.mini-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.metric-big{font-family:Georgia,Times New Roman,serif;font-size:24px}.metric-small{color:var(--muted);font-size:10px}.empty{color:var(--muted);padding:14px 0;font-size:11px}.auth-page{background:linear-gradient(#fbfaf7,#f2eee7);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(430px,94vw);padding:34px;box-shadow:0 18px 55px #221d1714}.login-logo{justify-content:center;margin-bottom:24px;display:flex}.login-logo img{width:220px;height:auto}.login-card h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:500}.login-card p{color:var(--muted)}.field{flex-direction:column;gap:6px;margin:14px 0;display:flex}.field input{border:1px solid var(--line);font:inherit;border-radius:8px;padding:11px 12px}.button{color:#fff;cursor:pointer;background:#171716;border:0;border-radius:8px;width:100%;padding:11px 14px;font-weight:600}.error{color:#a63232;margin-top:10px;font-size:12px}.module-page{padding:22px 24px}.module-page h1{margin:0 0 6px;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:500}.module-page p{color:var(--muted)}@media (max-width:1100px){.app-shell{grid-template-columns:72px 1fr}.sidebar{padding-left:8px;padding-right:8px}.brand{height:46px}.brand img{width:58px}.nav-label,.nav-item span{display:none}.nav-item{justify-content:center}.dashboard-grid{grid-template-columns:1fr 1fr}.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.app-shell{display:block}.sidebar{display:none}.topbar{padding:8px 12px}.profile-copy{display:none}.searchbox{width:60vw}.page{padding:14px 12px}.page h1{font-size:28px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}.user-menu{position:relative}.user-menu-trigger{cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:3px 4px;display:flex}.user-menu-trigger .profile-copy{flex-direction:column;min-width:88px;line-height:1.05;display:flex}.user-menu-trigger .profile-copy strong{font-size:12px;font-weight:650}.user-menu-trigger .profile-copy span{color:var(--muted,#766f67);margin-top:3px;font-size:10px}.user-menu-popover{z-index:50;background:#fff;border:1px solid #e6dfd6;border-radius:12px;width:190px;padding:7px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 14px 38px #1814101f}.user-menu-heading,.user-menu-item{border-radius:8px;align-items:center;gap:9px;width:100%;padding:10px;font-size:12px;display:flex}.user-menu-heading{color:#776f66}.user-menu-item{cursor:pointer;color:#1d1a17;text-align:left;background:0 0;border:0}.user-menu-item:hover{background:#f6f2ec}.user-menu-item.danger{color:#9a302a}.quick-add-btn{color:#fff;cursor:pointer;background:#171716;border:0;border-radius:8px;align-items:center;gap:5px;padding:8px 11px;font-size:12px;font-weight:650;display:flex}.modal-backdrop{z-index:1000;background:#13110e75;justify-content:center;align-items:center;padding:28px;display:flex;position:fixed;inset:62px 0 0 196px;overflow:auto}.modal{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;width:min(760px,100% - 56px);max-height:calc(100dvh - 118px);padding:18px;display:flex;overflow:hidden;box-shadow:0 30px 90px #00000038}.modal-head{flex:none;justify-content:space-between;align-items:center;margin-bottom:12px;font-family:Georgia,Times New Roman,serif;font-size:20px;display:flex}.modal-head button{cursor:pointer;background:0 0;border:0}.segmented{flex-wrap:wrap;flex:none;gap:5px;margin-bottom:14px;display:flex}.segmented button{border:1px solid var(--line);cursor:pointer;background:#faf8f4;border-radius:999px;padding:6px 10px;font-size:11px}.segmented button.active{color:#fff;background:#171716;border-color:#171716}.form-grid{overscroll-behavior:contain;grid-template-columns:1fr 1fr;gap:11px;min-height:0;padding-right:4px;display:grid;overflow-y:auto}.form-grid label{color:var(--muted);flex-direction:column;gap:5px;font-size:11px;display:flex}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff;border-radius:8px;padding:9px 10px}.form-grid textarea{resize:vertical}.span2{grid-column:span 2}.modal-actions{z-index:2;background:linear-gradient(#fff3,#fff 28%);justify-content:flex-end;gap:8px;margin-top:4px;padding:14px 0 2px;display:flex;position:sticky;bottom:0}.button.compact{width:auto;padding:9px 16px}.button.secondary{color:#222;background:#f1eee8;width:auto}.module-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px;display:flex}.module-header h1{margin:0 0 4px}.module-header p{margin:0}.data-list{flex-direction:column;display:flex}.data-row{border-top:1px solid #eee9e1;align-items:center;gap:10px;padding:11px 2px;display:flex}.data-row:first-child{border-top:0}.icon-btn{border:1px solid var(--line);cursor:pointer;color:#766f66;background:#fff;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.icon-btn:hover{background:#f6f2ec}.icon-btn.success{color:#2d7c4d}.linkish{cursor:pointer}.dashboard-grid .card-title-row a{color:#9b6a2a;font-size:10px}.dashboard-grid .job-row a,.dashboard-grid .agenda-row a{display:contents}@media (max-width:1100px){.modal-backdrop{left:72px}}@media (max-width:760px){.quick-add-btn{padding:8px;font-size:0}.modal-backdrop{align-items:stretch;padding:0;top:62px;left:0}.modal{border:0;border-radius:0;width:100vw;height:calc(100dvh - 62px);max-height:calc(100dvh - 62px);padding:16px}.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.modal-actions{padding-bottom:max(8px,env(safe-area-inset-bottom))}}.check-label{align-items:center;padding-top:22px;flex-direction:row!important;gap:8px!important}.check-label input{width:auto}.data-row.clickable{cursor:pointer}.data-row.clickable:hover{background:#00000006}.row-chevron{opacity:.4;flex:none}.record-hero{justify-content:space-between;align-items:flex-end;gap:24px;margin:12px 0 18px;display:flex}.record-hero h1{margin:4px 0 2px}.record-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.detail-list>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:24px;padding:11px 0;display:flex}.detail-list>div:last-child{border-bottom:0}.detail-list span{color:var(--muted)}.detail-list strong{text-align:right;max-width:62%}.compact-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.compact-row:last-child{border-bottom:0}.link-row{color:inherit;text-decoration:none}.link-row:hover{opacity:.7}.report-filters{grid-template-columns:repeat(3,minmax(140px,1fr)) auto;align-items:end;gap:12px;margin:20px 0 14px;display:grid}.report-filters label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.report-filters input,.report-filters select{border:1px solid var(--line);background:var(--surface);border-radius:9px;height:40px;padding:0 10px}.report-actions{gap:8px;display:flex}.report-kpis{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;display:grid}.report-table{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}.report-row{border-bottom:1px solid var(--line);grid-template-columns:130px 1.5fr 1fr 1fr 110px 90px;gap:12px;padding:11px 14px;font-size:13px;display:grid}.report-row:last-child{border-bottom:0}.report-row.header{background:#00000006;font-weight:700}@media (max-width:900px){.record-grid{grid-template-columns:1fr}.record-grid .span-2{grid-column:auto}.report-filters{grid-template-columns:1fr 1fr}.report-actions{grid-column:1/-1}.report-kpis{grid-template-columns:1fr}.report-table{overflow-x:auto}.report-row{min-width:800px}}.access-grid{grid-template-columns:280px minmax(0,1fr);gap:16px;margin-top:20px;display:grid}.access-users,.access-detail{padding:20px}.access-user{text-align:left;border:1px solid var(--line,#e8e1d7);cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;gap:3px;width:100%;margin:8px 0;padding:12px;display:flex}.access-user.active{color:#fff;background:#171717}.access-user span{opacity:.68;font-size:12px}.access-note,.danger-note,.notice{background:#f5f1ea;border-radius:10px;margin-top:14px;padding:12px;font-size:12px;line-height:1.45}.danger-note{color:#8d332b;background:#fff3f1}.section-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.section-head h2,.section-head h3{margin:0}.section-head p{color:#776f67;margin:4px 0 0}.badge{background:#eee7dc;border-radius:999px;padding:6px 10px;font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;display:grid}.form-grid label{flex-direction:column;gap:6px;display:flex}.form-grid input,.form-grid select{background:#fff;border:1px solid #ddd3c7;border-radius:9px;height:42px;padding:0 11px}.button.dark{color:#fff;background:#171717;border:0;border-radius:9px;padding:11px 16px;font-weight:700}.save-message{font-size:13px}.access-detail hr{border:0;border-top:1px solid #e9e0d5;margin:24px 0}.permission-table{border:1px solid #e7dfd5;border-radius:12px;margin-top:14px;overflow:hidden}.permission-row{border-top:1px solid #eee7de;grid-template-columns:minmax(160px,1fr) repeat(4,82px);align-items:center;min-height:48px;padding:0 14px;display:grid}.permission-row:first-child{border-top:0}.permission-row.head{background:#f7f3ed;font-size:12px;font-weight:700}.permission-row>span:not(:first-child){text-align:center}.switch{justify-content:center;display:flex}.switch input{width:17px;height:17px}.switch span{display:none}@media (max-width:900px){.access-grid,.form-grid{grid-template-columns:1fr}.permission-row{grid-template-columns:minmax(120px,1fr) repeat(4,58px);font-size:12px}}.record-actions{align-items:center;gap:10px;display:flex}.edit-btn{align-items:center;gap:6px;width:auto;padding:8px 12px;display:inline-flex}.danger-text{color:#b23434!important}.task-guide{margin:0 0 14px}.task-guide strong{margin-bottom:5px;display:block}.production-board,.deliverables-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.production-card,.deliverable-card{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:12px;padding:16px;display:block}.production-card:hover,.deliverable-card:hover{border-color:#cfc5b8;box-shadow:0 8px 26px #19140f0d}.production-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.production-card-head h3{margin:4px 0;font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:500}.production-card-head select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 8px}.production-meta{grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0;display:grid}.production-meta>div{background:#faf7f2;border-radius:8px;padding:9px}.production-meta span{color:var(--muted);margin-bottom:4px;font-size:10px;display:block}.production-meta strong{font-size:12px}.production-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;padding-top:10px;font-size:11px;display:flex}.progress-line{background:#eee8df;border-radius:999px;height:7px;margin:15px 0;overflow:hidden}.progress-line span{background:#1f1f1d;border-radius:999px;height:100%;display:block}.inline-edit-row{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.inline-edit-row label{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.workflow-track{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.workflow-step{border:1px solid var(--line);background:#fbf9f5;border-radius:10px;align-items:flex-start;gap:8px;min-width:0;padding:10px;display:flex}.workflow-step.done{background:#eef6ef}.workflow-step.in_progress{background:#f8f1df}.workflow-dot{background:#ece5db;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:grid}.workflow-step.done .workflow-dot{color:#287145;background:#dcecdf}.workflow-copy{flex-direction:column;flex:1;min-width:0;display:flex}.workflow-copy strong{font-size:11px}.workflow-copy span{color:var(--muted);font-size:9px}.workflow-step select{border:1px solid var(--line);background:#fff;border-radius:7px;max-width:100px;padding:4px;font-size:9px}.two-month-calendar{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.calendar-month{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}.calendar-month-title{text-transform:capitalize;padding:14px 15px;font-family:Georgia,Times New Roman,serif;font-size:21px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#faf7f2}.calendar-weekdays span{text-align:center;color:var(--muted);padding:7px;font-size:9px;font-weight:600}.calendar-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;min-height:96px;padding:7px}.calendar-cell:nth-child(7n){border-right:0}.calendar-day{color:var(--muted);margin-bottom:5px;font-size:10px}.calendar-events{flex-direction:column;gap:3px;display:flex}.calendar-chip{white-space:nowrap;text-overflow:ellipsis;background:#eee8df;border-radius:5px;padding:4px 5px;font-size:8px;line-height:1.2;display:block;overflow:hidden}.calendar-chip.shoot{background:#e7eefb}.calendar-chip.delivery,.calendar-chip.deadline{background:#f8e6e1}.calendar-chip.meeting{background:#e9f2e8}.calendar-more{color:var(--muted);font-size:8px}.calendar-list{margin-top:14px}.import-button{cursor:pointer;align-items:center;gap:7px;width:auto;display:inline-flex;position:relative}.import-message{white-space:nowrap;border:1px solid var(--line);color:var(--muted);z-index:3;background:#fff;border-radius:7px;padding:6px 8px;font-size:10px;position:absolute;top:calc(100% + 6px);right:0}@media (max-width:1100px){.production-board,.deliverables-board,.two-month-calendar{grid-template-columns:1fr}.workflow-track{grid-template-columns:repeat(2,minmax(0,1fr))}.production-meta{grid-template-columns:1fr 1fr}}@media (max-width:700px){.workflow-track{grid-template-columns:1fr}.calendar-cell{min-height:68px;padding:4px}.calendar-chip{font-size:7px}.production-meta{grid-template-columns:1fr}}.skeleton{background:linear-gradient(90deg,#eee9e0 25%,#f8f5ef 50%,#eee9e0 75%) 0 0/200% 100%;border-radius:10px;animation:1.2s infinite gvshimmer}.sk-title{width:220px;height:32px;margin:8px 0}.sk-sub{width:420px;max-width:70%;height:18px;margin:10px 0 24px}.skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.sk-card{height:120px}@keyframes gvshimmer{to{background-position:-200% 0}}.job-progress-card{margin:14px 0}.job-progress-head{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.progress-track{background:#eee9e0;border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:#171717;border-radius:999px;height:100%}.module-head-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.calendar-toolbar{justify-content:space-between;align-items:center;gap:16px;margin:8px 0 14px;display:flex}.calendar-nav{align-items:center;gap:10px;display:flex}.calendar-month.single{width:100%}.calendar-cell.outside-month{opacity:.42}.week-view{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.week-day{min-height:180px;padding:12px}.week-day-title{margin-bottom:10px;font-weight:700}.week-event{flex-direction:column;gap:3px;margin-bottom:8px;display:flex}.day-view{min-height:260px}.finance-dates{flex-wrap:wrap;gap:18px;font-size:13px;display:flex}.document-upload .card-title{align-items:center;gap:8px;display:flex}.doc-title{align-items:center;gap:10px;display:flex}.icon-btn.danger{color:#a43d35}.calendar-chip.invoice_due{background:#f4ead5}.calendar-chip.payment_due{background:#e3efe4}@media (max-width:1100px){.week-view{grid-template-columns:1fr}.skeleton-grid{grid-template-columns:1fr 1fr}.calendar-toolbar{flex-direction:column;align-items:flex-start}}.global-search{width:min(460px,42vw);position:relative}.global-search .searchbox{width:100%}.search-results{z-index:60;border:1px solid var(--line);background:#fff;border-radius:10px;max-height:420px;position:absolute;top:calc(100% + 7px);left:0;right:0;overflow:hidden auto;box-shadow:0 18px 50px #18141024}.search-result{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:#fff;border:0;border-top:1px solid #eee9e1;align-items:center;gap:10px;padding:10px 12px;display:flex}.search-result:first-child{border-top:0}.search-result:hover{background:#faf7f2}.search-result-type{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);flex:0 0 58px;font-size:9px}.search-result-copy{flex-direction:column;min-width:0;display:flex}.search-result-copy strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.search-result-copy small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:10px;overflow:hidden}.search-empty{color:var(--muted);padding:13px;font-size:11px}@media (max-width:760px){.global-search{width:60vw}}
