:root{--surface:#fffefa;--surface-soft:#f0f1ef;--surface-subtle:#f7f8f5;--border:#dce1d9;--border-strong:#cbd4c7;--ink-strong:#20382b;--shadow-soft:0 3px 12px #24372c08;--radius:11px;--radius-small:8px;--control-height:38px}
body{background:#f6f6f2;color:var(--ink-strong)}
.main{max-width:1540px;padding:36px 40px 48px}
.top{align-items:flex-start;margin-bottom:24px}
.top h1,.plan-header h1{color:#183526;letter-spacing:-1.2px}
.top p,.plan-header p{max-width:760px;margin:9px 0 0;color:#738077}
.eyebrow{margin-bottom:9px;color:#879187;font-size:8px;font-weight:700;letter-spacing:2px}
.panel,.calendar,.campaign-toolbar,.campaign-templates,.settings-collapsible,.resource-intro,.account-card,.provider-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}
.panel-head{gap:16px}
.panel-head h2,.section-heading h2{color:#253f31;font-size:15px}
.panel-head p,.section-heading p,.muted{color:#758177}
.button{min-height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-small);background:#fff;color:#294335;padding:8px 13px;transition:border-color .14s,background .14s,box-shadow .14s,transform .14s}
.button:hover{border-color:#9eaf99;background:#f8faf6;box-shadow:0 2px 8px #263c2f0c}
.button:active{transform:translateY(1px)}
.button.primary{border-color:#355f45;background:#355f45;color:#fff;box-shadow:0 2px 6px #2646321c}
.button.primary:hover{background:#2e563d}
.button.danger{border-color:#e4d1ca;background:#fffafa;color:#995744}
.button:disabled,button:disabled{cursor:not-allowed;opacity:.52;transform:none}
input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea{min-height:var(--control-height);border:1px solid var(--border-strong)!important;border-radius:var(--radius-small)!important;background:#fff!important;color:#263d30!important;padding:9px 11px!important;box-shadow:inset 0 1px 1px #24372c05;transition:border-color .14s,box-shadow .14s}
textarea{min-height:92px;line-height:1.45;resize:vertical}
select{appearance:none;padding-right:34px!important;background-image:linear-gradient(45deg,transparent 50%,#718075 50%),linear-gradient(135deg,#718075 50%,transparent 50%)!important;background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}
input:focus,select:focus,textarea:focus{border-color:#71906f!important;box-shadow:0 0 0 3px #dfe9da!important;outline:0!important}
input[type="checkbox"],input[type="radio"]{width:16px;height:16px;accent-color:#3f704d}
label{color:#52645a}
.empty{border:1px dashed #cbd5c7;border-radius:9px;background:#fafbf8;color:#77847a}
.empty.compact{padding:22px}
.pill,.campaign-purpose-pills span,.ledger-types i,.user-role,.user-status,.assignment-status{border-radius:6px!important}
.sidebar{border-right:1px solid var(--border);background:#eef0ea}
.nav{border-radius:8px;color:#32493c;transition:background .14s,color .14s}
.nav:hover{background:#e3e9df}
.nav.active{background:#dbe6d5;color:#244a34;font-weight:700}
.nav-group-label{color:#899389}
.app-topbar{border-bottom:1px solid var(--border);background:#fffefaeb;backdrop-filter:blur(16px)}
.topbar-product,.topbar-workspace,.notification-bell,.top-profile,.global-search-toggle{border-radius:8px}
.workspace-menu,.global-search-results,.user-action-menu>div,.event-action-menu>div,.resource-action-popover{border:1px solid var(--border)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 16px 38px #24372c1f!important}
details>summary{outline:none}
details>summary:focus-visible{outline:2px solid #749064;outline-offset:-2px}
.view-switch{padding:3px;border:1px solid var(--border);border-radius:9px;background:#e9ede6}
.view-switch .button{min-height:32px;border:0;background:transparent;box-shadow:none}
.view-switch .button.active{background:#fff;box-shadow:0 2px 8px #263b2d12}
.campaign-workspace{display:grid;gap:14px}
.campaign-toolbar{margin:0;padding:8px 10px}
.campaign-toolbar-actions{gap:7px}
.campaign-templates{margin:0;overflow:hidden}
.campaign-templates>summary{padding:13px 16px;background:var(--surface-soft)}
.campaign-templates>div{padding:12px 16px;border-top:1px solid var(--border)}
.campaign-groups{gap:14px}
.campaign-group{overflow:hidden;padding:0}
.campaign-group>.panel-head{margin:0;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.campaign-group>.campaign-card,.campaign-group>.campaign-item,.campaign-group>p{margin-right:16px;margin-left:16px}
.campaign-timeline{overflow:hidden;padding:0}
.campaign-timeline article{min-height:62px;padding:11px 16px;border-bottom:1px solid var(--border)}
.campaign-calendar-toolbar{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}
.calendar{overflow:hidden;box-shadow:none}
.weekdays{background:var(--surface-soft)}
.day{background:#fff}
.day.out{background:#f8f8f5}
.channel-ledger{gap:12px}
.channel-ledger-section{overflow:hidden;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:var(--shadow-soft)}
.channel-ledger-head{min-height:58px;padding:9px 14px;border:0;background:var(--surface-soft)}
.channel-ledger-rows,.channel-resource-list{border-top:1px solid var(--border)}
.plan-page,.edit-plan-page{display:grid;gap:14px}
.plan-header,.campaign-editor-head{padding-bottom:18px;border-bottom:1px solid var(--border)}
.campaign-task-panel,.campaign-at-a-glance,.campaign-notes,.role-workflow,.workflow-block,.campaign-edit-section{border-color:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft)}
.campaign-task-panel{overflow:hidden;padding:0}
.campaign-task-panel>.panel-head{margin:0;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.campaign-task-add,.campaign-task-list{margin-right:18px;margin-left:18px}
.campaign-task-add{margin-top:14px}
.campaign-task-list{margin-bottom:14px}
.campaign-task-row,.edit-task-row{min-height:50px;border-color:var(--border)}
.campaign-at-a-glance{background:var(--surface-subtle)}
.campaign-danger-zone{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}
.campaign-danger-zone .button{min-height:32px;padding:6px 10px;font-size:9px}
.settings-panel,.unified-settings,.key-dates-admin{max-width:none!important}
.settings-panel,.key-dates-admin{padding:0;overflow:hidden}
.workspace-basics{padding:18px}
.settings-collapsible{margin:0;border-width:1px 0 0;border-radius:0;box-shadow:none}
.settings-collapsible:first-of-type{border-top:1px solid var(--border)}
.settings-collapsible>summary{min-height:58px;padding:13px 18px;background:var(--surface-soft)}
.settings-collapsible-body{padding:0 18px 18px;background:#fff}
.channel-setting-row{border-color:var(--border);border-radius:8px;background:#fff}
.channel-setting-row>summary{min-height:48px}
.key-dates-toolbar{padding-top:4px}
.team-layout,.users-layout{gap:14px}
.users-list,.user-editor,.invite-users{overflow:hidden;padding:0}
.users-list>.panel-head,.user-editor>.panel-head{margin:0;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.user-row{min-height:62px;padding:9px 14px;border-color:var(--border)}
.user-row:hover{background:#f8faf6}
.user-editor-heading,.user-editor form,.user-editor>.button,.user-editor>.owner-protection-note,.department-editor{margin-right:18px;margin-left:18px}
.user-editor-heading{margin-top:16px}
.user-editor form{display:grid;gap:11px;margin-top:14px;margin-bottom:14px}
.department-editor{padding-top:14px;border-top:1px solid var(--border)}
.invite-users{padding:18px}
.invite-users form,#add-user{display:grid;gap:11px}
.notification-panel{overflow:hidden;padding:0}
.notification-panel>.panel-head{margin:0;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.notification-row{min-height:62px;padding:12px 18px;border-color:var(--border)}
.notification-row:hover{background:#f7f9f5}
.notification-row.unread{background:#eef5e9}
.people-grid{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-soft)}
.people-grid article{min-height:68px}
.account-grid,.provider-grid{gap:14px}
.account-card,.provider-card{padding:18px}
.provider-card-head{padding-bottom:12px;border-bottom:1px solid var(--border)}
.profile-layout{gap:14px}
.profile-card,.security-card{overflow:hidden}
.profile-card .panel-head,.security-card .panel-head{padding-bottom:13px;border-bottom:1px solid var(--border)}
.compact-resource-groups{gap:14px}
.resource-group{overflow:hidden;padding:0}
.resource-category-head{margin:0;padding:13px 16px;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.resource-row{min-height:54px;padding:9px 16px;border-color:var(--border)}
.resource-row:hover{background:#f8faf6}
.resource-modal{background:#1f2c2480;backdrop-filter:blur(6px)}
.resource-picker,.report-builder,.confirm-dialog{overflow:hidden;border-color:var(--border);border-radius:14px;box-shadow:0 30px 80px #16251c33}
.resource-picker>.panel-head,.report-builder>.panel-head{margin:0;padding:15px 18px;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.resource-picker-tabs{background:#f7f8f5}
.drive-file,.resource-result{border-color:var(--border)!important;border-radius:8px!important}
.drive-file:hover,.resource-result:hover{background:#f5f8f2}
.drive-file.selected{border-color:#7f9c78!important;background:#edf4e9}
.login-card{border-color:var(--border);border-radius:16px;background:#fff;box-shadow:0 30px 80px #24362918}
.login-card label{display:grid;gap:6px}
.login-card .button{width:100%;margin-top:8px}
#toast{max-width:min(520px,calc(100vw - 32px));border-radius:9px;box-shadow:0 10px 30px #1830232b}
.disabled-link{cursor:not-allowed;opacity:.55;text-decoration:none}
@media(max-width:1050px){.main{padding:28px}.campaign-toolbar{align-items:flex-start}.view-description{display:none}.users-layout,.team-layout{grid-template-columns:1fr}.users-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:14px}}
@media(max-width:720px){.main{padding:20px 14px 36px}.top{margin-bottom:18px}.top h1,.plan-header h1{font-size:30px}.actions,.section-actions,.campaign-toolbar-actions{flex-wrap:wrap}.campaign-toolbar{display:grid;gap:9px}.view-switch{overflow-x:auto}.users-sidebar{grid-template-columns:1fr}.panel{border-radius:10px}.resource-row{padding:9px 12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
