:root{font-family:Inter,Segoe UI,Microsoft YaHei,PingFang SC,Arial,sans-serif;color:#1c292b;background:#eef0ed;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #1c292b;--muted: #687477;--line: #d7dcda;--surface: #ffffff;--canvas: #eef0ed;--brand: #173b3f;--brand-light: #c8e1da;--accent: #d7604b;--warning: #edaa5d;--danger-bg: #fff1ee;--danger-line: #efc0b7;--danger-text: #912f21}*{box-sizing:border-box}html,body,#root{min-width:0;min-height:100%;margin:0}body{min-height:100vh;min-height:100dvh}button,input{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.68}.auth-page{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(330px,40%) minmax(460px,1fr);background:var(--canvas)}.identity-panel{position:relative;min-height:100vh;min-height:100dvh;overflow:hidden;display:flex;flex-direction:column;padding:42px 48px 34px;color:#f7fbfa;background:var(--brand)}.brand{position:relative;z-index:2;display:inline-flex;align-items:center;gap:12px;width:fit-content}.brand__mark{width:44px;height:44px;display:grid;place-items:center;color:var(--brand);background:var(--brand-light);border:1px solid rgba(255,255,255,.24);border-radius:8px}.brand__text{display:grid;gap:1px}.brand__text strong{font-size:17px;font-weight:700;line-height:1.2}.brand__text small{color:#f7fbfab3;font-size:12px;line-height:1.3}.brand--compact .brand__mark{width:36px;height:36px;color:#fff;background:var(--brand);border:0;border-radius:7px}.brand--compact .brand__text strong{color:var(--ink);font-size:15px}.brand--compact .brand__text small{color:var(--muted);font-size:11px}.identity-copy{position:relative;z-index:2;max-width:520px;margin:auto 0;padding:48px 0}.identity-kicker,.section-label{display:block;margin-bottom:12px;color:var(--accent);font-size:12px;font-weight:700;line-height:1.3;text-transform:uppercase}.identity-copy h1{max-width:470px;margin:0;font-size:44px;font-weight:680;line-height:1.16;letter-spacing:0}.identity-copy p{margin:20px 0 0;color:#f7fbfab8;font-size:16px;line-height:1.7}.signal-grid{position:absolute;right:-46px;bottom:86px;width:244px;height:244px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.1);border-left:1px solid rgba(255,255,255,.1);transform:rotate(-7deg)}.signal-grid__cell{border-right:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.signal-grid__cell--active{background:var(--warning);opacity:.9}.signal-grid__shield{position:absolute;inset:50% auto auto 50%;width:62px;height:62px;display:grid;place-items:center;color:var(--brand);background:var(--brand-light);border:1px solid rgba(255,255,255,.38);border-radius:8px;transform:translate(-50%,-50%)}.identity-footer{position:relative;z-index:2;display:flex;justify-content:space-between;gap:18px;color:#f7fbfa8a;font-size:11px;font-weight:700}.auth-stage{min-width:0;display:grid;grid-template-rows:auto 1fr auto;align-items:center;justify-items:center;padding:28px 40px 24px}.mobile-brand{grid-row:1;width:min(100%,440px);display:none;align-items:center;justify-content:space-between;gap:16px;color:var(--muted);font-size:11px;font-weight:700}.auth-card{grid-row:2;align-self:center;width:min(100%,440px);min-height:460px;display:flex;align-items:center;padding:44px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 42px #173b3f14}.auth-content{width:100%;min-width:0}.auth-heading{margin-bottom:28px}.auth-heading h2{margin:0;color:var(--ink);font-size:28px;font-weight:680;line-height:1.2}.auth-heading p{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.65;overflow-wrap:anywhere}.auth-form{display:grid;gap:18px}.field-group{min-width:0;display:grid;gap:8px}.field-group label{color:#394649;font-size:13px;font-weight:650}.input-shell{position:relative;min-width:0}.input-shell input{width:100%;height:46px;min-width:0;padding:0 46px 0 43px;color:var(--ink);background:#fbfcfb;border:1px solid #cbd2d0;border-radius:6px;outline:none;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.input-shell input:focus{background:#fff;border-color:#2e6867;box-shadow:0 0 0 3px #2e686724}.input-shell__leading{position:absolute;z-index:1;left:14px;top:50%;color:#7d898b;pointer-events:none;transform:translateY(-50%)}.input-shell__action{position:absolute;z-index:1;right:5px;top:50%;transform:translateY(-50%)}.icon-button{width:36px;height:36px;display:grid;place-items:center;padding:0;color:#6d797b;background:transparent;border:0;border-radius:6px}.icon-button:hover:not(:disabled){color:var(--brand);background:#edf3f1}.primary-button,.secondary-button{width:100%;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 16px;font-size:14px;font-weight:700;border-radius:6px;transition:background .14s ease,border-color .14s ease,transform .14s ease}.primary-button{margin-top:4px;color:#fff;background:var(--brand);border:1px solid var(--brand)}.primary-button:hover:not(:disabled){background:#225357;border-color:#225357}.secondary-button{color:var(--brand);background:#fff;border:1px solid #b9c6c4}.secondary-button:hover:not(:disabled){background:#edf3f1;border-color:#8ca3a0}.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled){transform:translateY(1px)}.primary-button:focus-visible,.secondary-button:focus-visible,.text-button:focus-visible,.icon-button:focus-visible{outline:3px solid rgba(46,104,103,.2);outline-offset:2px}.text-button{width:100%;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:16px;padding:8px 12px;color:#566467;background:transparent;border:0;border-radius:6px;font-size:13px;font-weight:650}.text-button:hover:not(:disabled){color:var(--brand);background:#edf3f1}.feedback-message{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;margin:-8px 0 20px;padding:11px 12px;color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-line);border-radius:6px;font-size:13px;line-height:1.55}.feedback-message svg{margin-top:1px}.feedback-message span{min-width:0;overflow-wrap:anywhere}.field-help,.auth-note,.stage-footer{color:var(--muted);font-size:12px;line-height:1.6}.field-help{margin:-6px 0 0}.auth-note{margin:22px 0 0;text-align:center}.stage-footer{grid-row:3;width:min(100%,440px);margin:0;text-align:center}.loading-content{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:14px}.success-mark{width:48px;height:48px;display:grid;place-items:center;margin-bottom:22px;color:var(--brand);background:#dcece7;border:1px solid #bdd6ce;border-radius:8px}.authenticated-content .auth-heading{margin-bottom:24px}.account-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;margin:0 0 28px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.account-summary div{min-width:0}.account-summary dt{margin-bottom:6px;color:var(--muted);font-size:11px;font-weight:700}.account-summary dd{min-width:0;margin:0;color:var(--ink);font-size:14px;font-weight:700;overflow-wrap:anywhere}.account-summary small{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:400;overflow-wrap:anywhere}.role-badge{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;color:#275852;background:#dcece7;border:1px solid #bdd6ce;border-radius:999px;white-space:nowrap}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 900px){.auth-page{grid-template-columns:minmax(280px,34%) minmax(440px,1fr)}.identity-panel{padding-inline:32px}.identity-copy h1{font-size:40px}.signal-grid{right:-92px}}@media (max-width: 760px){.auth-page{display:block}.identity-panel{display:none}.auth-stage{min-height:100vh;min-height:100dvh;align-items:center;padding:22px 20px 18px}.mobile-brand{display:flex}.auth-card{min-height:0;padding:36px 34px}}@media (max-width: 480px){.auth-stage{padding-inline:16px}.auth-card{padding:32px 24px}.auth-heading h2{font-size:25px}.account-summary{grid-template-columns:1fr;gap:14px}}@media (max-height: 680px) and (min-width: 761px){.identity-panel{padding-block:28px}.identity-copy{padding-block:24px}.identity-copy h1{font-size:40px}.auth-stage{padding-block:18px}.auth-card{min-height:0;padding-block:32px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.workspace-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:232px minmax(0,1fr);color:var(--ink);background:#f3f5f4}.workspace-sidebar{position:sticky;top:0;z-index:30;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding:24px 18px 18px;color:#f7fbfa;background:var(--brand);border-right:1px solid rgba(255,255,255,.08)}.workspace-sidebar__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 6px 24px}.sidebar-close-button,.workspace-menu-button,.workspace-user__logout{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;padding:0;border:0;border-radius:6px}.sidebar-close-button{display:none;color:#d9e7e4;background:transparent}.workspace-nav{display:grid;gap:5px}.workspace-nav__label{padding:0 12px 8px;color:#f7fbfa7a;font-size:11px;font-weight:700}.workspace-nav__item{min-height:42px;display:flex;align-items:center;gap:11px;padding:9px 12px;color:#f7fbfab8;border:1px solid transparent;border-radius:6px;font-size:14px;font-weight:600;text-decoration:none}.workspace-nav__item:hover{color:#fff;background:#ffffff12}.workspace-nav__item--active{color:#173b3f;background:var(--brand-light);border-color:#ffffff40}.workspace-user{min-width:0;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:10px;margin-top:auto;padding:16px 6px 0;border-top:1px solid rgba(255,255,255,.12)}.workspace-user__avatar,.workspace-mobile-header__avatar{display:grid;place-items:center;color:var(--brand);background:var(--warning);border-radius:6px;font-size:12px;font-weight:800}.workspace-user__avatar{width:38px;height:38px}.workspace-user__identity{min-width:0;display:grid;gap:2px}.workspace-user__identity strong,.workspace-user__identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-user__identity strong{color:#fff;font-size:13px}.workspace-user__identity small{color:#f7fbfa8f;font-size:11px}.workspace-user__logout{color:#f7fbfaa3;background:transparent}.workspace-user__logout:hover:not(:disabled),.sidebar-close-button:hover{color:#fff;background:#ffffff17}.workspace-body{min-width:0}.workspace-mobile-header{display:none}.workspace-main{min-width:0;padding:34px 38px 48px}.workspace-backdrop{display:none}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:700;line-height:1.2;text-decoration:none}.button--primary{color:#fff;background:var(--brand);border-color:var(--brand)}.button--primary:hover:not(:disabled){background:#225357;border-color:#225357}.button--secondary{color:#344346;background:#fff;border-color:#c9d0ce}.button--secondary:hover:not(:disabled){color:var(--brand);background:#edf3f1;border-color:#9bb0ad}.button--danger{color:#fff;background:#a83d2c;border-color:#a83d2c}.button--danger:hover:not(:disabled){background:#8f3022;border-color:#8f3022}.button--danger-text{color:#9a392b}.button:focus-visible,.workspace-menu-button:focus-visible,.workspace-user__logout:focus-visible,.sidebar-close-button:focus-visible{outline:3px solid rgba(46,104,103,.22);outline-offset:2px}@media (max-width: 900px){.workspace-shell{display:block}.workspace-sidebar{position:fixed;left:0;width:min(280px,calc(100vw - 44px));transform:translate(-102%);transition:transform .18s ease}.workspace-sidebar--open{transform:translate(0)}.sidebar-close-button{display:grid}.workspace-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:block;visibility:hidden;padding:0;background:#1222247a;border:0;opacity:0;transition:opacity .18s ease,visibility .18s ease}.workspace-backdrop--visible{visibility:visible;opacity:1}.workspace-mobile-header{position:sticky;top:0;z-index:15;height:64px;display:grid;grid-template-columns:40px minmax(0,1fr) 36px;align-items:center;gap:10px;padding:0 20px;background:#fffffff5;border-bottom:1px solid #dce1df}.workspace-menu-button{color:var(--brand);background:#edf3f1}.workspace-mobile-header .brand{justify-self:center}.workspace-mobile-header__avatar{width:34px;height:34px;justify-self:end}.workspace-main{padding:26px 22px 40px}}@media (max-width: 520px){.workspace-mobile-header{padding-inline:14px}.workspace-main{padding:22px 16px 32px}}@media (prefers-reduced-motion: reduce){.workspace-sidebar,.workspace-backdrop{transition-duration:.01ms}}.customers-page{width:min(100%,1420px);margin:0 auto}.page-header{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding-bottom:26px;border-bottom:1px solid #d9dfdd}.page-header>div{min-width:0}.page-eyebrow{display:block;margin-bottom:7px;color:var(--accent);font-size:11px;font-weight:800}.page-header h1{margin:0;color:var(--ink);font-size:28px;font-weight:720;line-height:1.2}.page-header p{max-width:650px;margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.6}.customer-summary{min-height:48px;display:flex;align-items:center;gap:24px;padding:12px 2px;color:#5e6c6e;font-size:13px}.customer-summary span{display:inline-flex;align-items:center;gap:7px}.customer-summary strong{color:var(--ink);font-size:14px}.customer-toolbar{min-width:0;display:grid;grid-template-columns:minmax(240px,440px) auto;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.customer-search{position:relative;min-width:0}.customer-search svg{position:absolute;left:13px;top:50%;color:#758184;pointer-events:none;transform:translateY(-50%)}.customer-search input,.customer-filter select,.customer-field input,.customer-field textarea{color:var(--ink);background:#fff;border:1px solid #cbd2d0;border-radius:6px;outline:none}.customer-search input{width:100%;height:42px;padding:0 14px 0 41px}.customer-search input:focus,.customer-filter select:focus,.customer-field input:focus,.customer-field textarea:focus{border-color:#2e6867;box-shadow:0 0 0 3px #2e686721}.customer-filter{display:flex;align-items:center;gap:9px;color:#5b686b;font-size:12px;font-weight:700}.customer-filter select{width:156px;height:42px;padding:0 34px 0 11px}.customer-table-wrap{min-width:0;overflow-x:auto;background:#fff;border:1px solid #d6dcda;border-radius:8px;box-shadow:0 10px 28px #173b3f0d}.customer-table{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed}.customer-table th,.customer-table td{padding:15px 16px;text-align:left;vertical-align:middle;border-bottom:1px solid #e2e6e4}.customer-table th{color:#667376;background:#f7f8f7;font-size:11px;font-weight:800}.customer-table th:first-child{width:25%}.customer-table th:nth-child(2),.customer-table th:nth-child(3){width:17%}.customer-table th:nth-child(4){width:12%}.customer-table th:nth-child(5){width:13%}.customer-table th:last-child{width:136px}.customer-table tbody tr:last-child td{border-bottom:0}.customer-table tbody tr:hover{background:#fbfcfb}.customer-table td{color:#344245;font-size:13px;overflow-wrap:anywhere}.customer-table td>span:not(.customer-status),.customer-table td>small{display:block}.customer-table td>small{margin-top:4px;color:#7b8789;font-size:11px;line-height:1.35}.customer-name-button{max-width:100%;padding:0;color:#1d5558;background:transparent;border:0;font-size:14px;font-weight:750;text-align:left;overflow-wrap:anywhere}.customer-name-button:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.customer-status{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;color:#275852;background:#e0eee9;border:1px solid #c1d8d1;border-radius:999px;font-size:11px;font-weight:750;white-space:nowrap}.customer-row-actions{display:flex;justify-content:flex-end;gap:4px}.table-icon-button,.modal-close-button{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;padding:0;color:#667376;background:transparent;border:0;border-radius:6px}.table-icon-button:hover,.modal-close-button:hover:not(:disabled){color:var(--brand);background:#eaf1ef}.table-icon-button--danger:hover{color:#9a392b;background:#fff0ed}.page-state{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:40px 20px;color:#738083;text-align:center;border-top:1px solid #d9dfdd;border-bottom:1px solid #d9dfdd}.page-state>svg{color:#698b88}.page-state strong{color:var(--ink);font-size:15px}.page-state p{max-width:480px;margin:0 0 8px;font-size:13px;line-height:1.6}.page-state--error>svg{color:var(--accent)}.page-message{padding:11px 13px;border:1px solid;border-radius:6px;font-size:13px;line-height:1.5}.page-message--error{color:var(--danger-text);background:var(--danger-bg);border-color:var(--danger-line)}.modal-backdrop,.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#12222485}.modal-backdrop{display:grid;place-items:center;padding:24px}.customer-modal{width:min(900px,100%);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:#fff;border:1px solid #cdd5d2;border-radius:8px;box-shadow:0 24px 70px #0d23253d}.customer-modal__header,.customer-drawer__header,.confirm-dialog__header{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.customer-modal__header{padding:22px 26px 18px;border-bottom:1px solid #dce1df}.customer-modal__header h2,.customer-drawer__header h2,.confirm-dialog__header h2{margin:0;color:var(--ink);font-size:21px;line-height:1.25;overflow-wrap:anywhere}.customer-form{overflow-y:auto;padding:0 26px}.customer-form>.page-message{margin:20px 0 0}.customer-form__section{margin:0;padding:24px 0 28px;border:0;border-bottom:1px solid #e0e5e3}.customer-form__section--last{border-bottom:0}.customer-form__section legend{width:100%;margin-bottom:16px;padding:0;color:#2f4143;font-size:13px;font-weight:800}.customer-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px}.customer-field{min-width:0;display:grid;align-content:start;gap:7px}.customer-field--wide{grid-column:1 / -1}.customer-field label{color:#435154;font-size:12px;font-weight:700}.customer-field label span{color:var(--accent)}.customer-field input{width:100%;height:42px;min-width:0;padding:0 11px}.customer-field textarea{width:100%;min-width:0;padding:10px 11px;line-height:1.55;resize:vertical}.customer-field small{color:#7a8688;font-size:11px;line-height:1.4}.customer-modal__footer,.customer-drawer__footer,.confirm-dialog__footer{display:flex;justify-content:flex-end;gap:10px;background:#f8f9f8;border-top:1px solid #dce1df}.customer-modal__footer{padding:15px 26px}.drawer-backdrop{display:flex;justify-content:flex-end}.customer-drawer{width:min(560px,100%);height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#fff;border-left:1px solid #cdd5d2;box-shadow:-18px 0 55px #0d232533}.customer-drawer__header{padding:24px 26px 21px;border-bottom:1px solid #dce1df}.customer-drawer__header>div{min-width:0}.customer-drawer__header p{margin:7px 0 0;color:#6e7a7c;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.customer-drawer__body{overflow-y:auto}.customer-detail-section{padding:24px 26px;border-bottom:1px solid #e0e5e3}.customer-detail-section h3{margin:0 0 17px;color:#2d4042;font-size:13px;font-weight:800}.customer-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;margin:0}.customer-detail-value{min-width:0}.customer-detail-value dt,.customer-detail-list>span{margin-bottom:6px;color:#7a8688;font-size:11px;font-weight:700}.customer-detail-value dd{min-width:0;margin:0;color:#344245;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.customer-detail-value a{min-width:0;display:inline-flex;align-items:center;gap:5px;color:#276264;text-decoration:none}.customer-detail-value a span{min-width:0;overflow-wrap:anywhere}.customer-detail-list{margin-top:20px}.customer-detail-list>span{display:block}.customer-value-tags{display:flex;flex-wrap:wrap;gap:6px}.customer-value-tags span{padding:4px 8px;color:#3f5557;background:#edf1ef;border:1px solid #d5dcda;border-radius:999px;font-size:11px;line-height:1.2}.customer-detail-empty{color:#7a8688;font-size:13px}.customer-detail-section--internal{background:#fff8ed;border-bottom-color:#eadbc5}.customer-detail-section--internal p{margin:0;color:#574d42;font-size:13px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.customer-drawer__footer{padding:15px 26px}.confirm-dialog{width:min(500px,100%);padding:0;overflow:hidden;background:#fff;border:1px solid #cdd5d2;border-radius:8px;box-shadow:0 24px 70px #0d23253d}.confirm-dialog__header{display:grid;grid-template-columns:44px minmax(0,1fr) 34px;padding:24px 24px 20px}.confirm-dialog__header p{margin:8px 0 0;color:#677477;font-size:13px;line-height:1.65}.confirm-dialog__icon{width:44px;height:44px;display:grid;place-items:center;color:#9a392b;background:#fff0ed;border:1px solid #edc7c0;border-radius:8px}.confirm-dialog>.page-message{margin:0 24px 20px}.confirm-dialog__footer{padding:15px 24px}@media (max-width: 900px){.page-header h1{font-size:26px}}@media (max-width: 760px){.page-header{align-items:stretch}.customer-toolbar{grid-template-columns:1fr}.customer-filter{justify-content:space-between}.customer-filter select{width:min(220px,66%)}.customer-table-wrap{overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}.customer-table{min-width:0;display:block}.customer-table thead{display:none}.customer-table tbody{display:grid;gap:10px}.customer-table tr{display:grid;grid-template-columns:1fr 1fr;padding:16px;background:#fff;border:1px solid #d6dcda;border-radius:8px}.customer-table th,.customer-table td{padding:9px 0;border-bottom:0}.customer-table td{min-width:0}.customer-table td:before{content:attr(data-label);display:block;margin-bottom:5px;color:#7a8688;font-size:10px;font-weight:750}.customer-table td:first-child,.customer-row-actions{grid-column:1 / -1}.customer-table td:first-child{padding-top:0;padding-bottom:12px;border-bottom:1px solid #e2e6e4}.customer-row-actions{padding-bottom:0!important;border-top:1px solid #e2e6e4}.customer-row-actions:before{content:none!important}.modal-backdrop{padding:12px}.customer-modal{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}.customer-form__grid,.customer-detail-grid{grid-template-columns:1fr}.customer-modal__header,.customer-drawer__header,.customer-detail-section,.customer-form,.customer-modal__footer,.customer-drawer__footer{padding-inline:20px}}@media (max-width: 520px){.page-header{display:grid;gap:18px}.page-header>.button{width:100%}.customer-summary{gap:14px}.customer-table tr{grid-template-columns:1fr}.customer-table td,.customer-table td:first-child,.customer-row-actions{grid-column:1}.customer-modal__footer,.customer-drawer__footer,.confirm-dialog__footer{display:grid;grid-template-columns:1fr 1fr}.customer-modal__footer .button,.customer-drawer__footer .button,.confirm-dialog__footer .button{width:100%}.confirm-dialog__header{grid-template-columns:40px minmax(0,1fr) 34px;padding-inline:18px}.confirm-dialog>.page-message{margin-inline:18px}}.assets-page{width:min(100%,1420px);margin:0 auto}.asset-summary{min-height:48px;display:flex;align-items:center;gap:24px;padding:12px 2px;color:#5e6c6e;font-size:13px}.asset-summary span{display:inline-flex;align-items:center;gap:7px}.asset-summary strong{color:var(--ink);font-size:14px}.asset-summary small{margin-left:auto;color:#869193;font-size:11px}.asset-toolbar{min-width:0;display:grid;grid-template-columns:minmax(220px,1fr) auto auto 78px;align-items:center;gap:12px;margin-bottom:20px}.asset-search{max-width:460px}.asset-toolbar .customer-filter select{width:166px}.view-toggle{width:78px;height:40px;display:grid;grid-template-columns:repeat(2,1fr);padding:3px;background:#e7ecea;border:1px solid #d1d8d6;border-radius:7px}.view-toggle button{display:grid;place-items:center;padding:0;color:#708083;background:transparent;border:0;border-radius:5px}.view-toggle button[aria-pressed=true]{color:var(--brand);background:#fff;box-shadow:0 1px 4px #173b3f1f}.asset-page-message{margin-bottom:18px}.asset-collection--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:16px}.asset-card{min-width:0;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;background:#fff;border:1px solid #d5dcda;border-radius:8px;box-shadow:0 8px 22px #173b3f0d}.asset-card__preview{position:relative;width:100%;aspect-ratio:4 / 3;display:block;overflow:hidden;padding:0;background:#e8edeb;border:0;border-bottom:1px solid #dbe1df}.asset-card__preview img,.asset-drawer__preview img{width:100%;height:100%;display:block;object-fit:cover}.asset-preview-state{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#718083;background:#e8edeb;font-size:12px}.asset-preview-state--missing{color:#924233;background:#fff1ee}.asset-card__body{min-width:0;padding:15px 16px 13px}.asset-card__heading{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.asset-card__heading>button{min-width:0;padding:0;color:#264c50;background:transparent;border:0;font-size:13px;font-weight:750;line-height:1.4;text-align:left;overflow-wrap:anywhere}.asset-card__heading>button:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.asset-card__body>p{margin:7px 0 0;color:#737f82;font-size:12px;overflow-wrap:anywhere}.asset-card__meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:12px;color:#637174;font-size:11px}.asset-card__tags{min-height:25px;display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}.asset-tag{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;color:#3e5859;background:#edf2f0;border:1px solid #d2ddda;border-radius:999px;font-size:10px;font-weight:650;line-height:1.2}.asset-tag--ai{color:#704d24;background:#fff4df;border-color:#ead1a8}.asset-tag--more{color:#737f82;background:#fff}.asset-card__actions{min-height:46px;display:flex;justify-content:flex-end;gap:4px;padding:6px 10px;background:#fafbfa;border-top:1px solid #e0e5e3}.asset-status{display:inline-flex;align-items:center;min-height:23px;flex:0 0 auto;padding:3px 8px;color:#285b55;background:#e0eee9;border:1px solid #c1d8d1;border-radius:999px;font-size:10px;font-weight:750;white-space:nowrap}.asset-status--uploading{color:#725125;background:#fff4df;border-color:#ead1a8}.asset-status--failed,.asset-status--missing{color:#8d3729;background:#fff0ed;border-color:#ebc5bd}.asset-status--orphan{color:#5d4a71;background:#f2edf6;border-color:#d9cae5}.asset-collection--list{display:grid;gap:8px}.asset-collection--list .asset-card{min-height:112px;grid-template-columns:146px minmax(0,1fr) 88px;grid-template-rows:1fr;align-items:stretch}.asset-collection--list .asset-card__preview{height:100%;aspect-ratio:auto;border-right:1px solid #dbe1df;border-bottom:0}.asset-collection--list .asset-card__body{align-self:center}.asset-collection--list .asset-card__actions{align-items:center;border-top:0;border-left:1px solid #e0e5e3}.asset-drawer{width:min(580px,100%);height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#fff;border-left:1px solid #cdd5d2;box-shadow:-18px 0 55px #0d232533}.asset-drawer__header,.asset-upload-modal__header{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px;border-bottom:1px solid #dce1df}.asset-drawer__header>div,.asset-upload-modal__header>div{min-width:0}.asset-drawer__header h2,.asset-upload-modal__header h2{margin:0;color:var(--ink);font-size:21px;line-height:1.3;overflow-wrap:anywhere}.asset-drawer__header p{margin:7px 0 0;color:#6c787b;font-size:12px}.asset-drawer__body{overflow-y:auto}.asset-drawer__preview{width:100%;aspect-ratio:16 / 10;overflow:hidden;background:#e8edeb;border-bottom:1px solid #dce1df}.asset-missing-message{margin:20px 24px 0;padding:12px 13px;color:#8d3729;background:#fff0ed;border:1px solid #ebc5bd;border-radius:6px;font-size:13px;line-height:1.55}.asset-drawer__body>.page-message{margin:20px 24px 0}.asset-detail-section{padding:22px 24px;border-bottom:1px solid #e0e5e3}.asset-detail-section h3{margin:0 0 15px;color:#2d4042;font-size:13px;font-weight:800}.asset-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;margin:0}.asset-detail-grid div{min-width:0}.asset-detail-grid dt{margin-bottom:6px;color:#7a8688;font-size:11px;font-weight:700}.asset-detail-grid dd{margin:0;color:#344245;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.asset-tags{display:flex;flex-wrap:wrap;gap:6px}.asset-empty-value{color:#7a8688;font-size:13px}.asset-drawer__footer,.asset-upload-modal__footer{display:flex;justify-content:flex-end;gap:10px;padding:15px 24px;background:#f8f9f8;border-top:1px solid #dce1df}.asset-upload-modal{width:min(680px,100%);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:#fff;border:1px solid #cdd5d2;border-radius:8px;box-shadow:0 24px 70px #0d23253d}.asset-upload-modal__body{overflow-y:auto;padding:22px 24px 26px}.asset-upload-modal__body>.page-message{margin-bottom:18px}.asset-upload-field{display:grid;gap:7px;margin-bottom:18px}.asset-upload-field label{color:#435154;font-size:12px;font-weight:700}.asset-upload-field label span{color:var(--accent)}.asset-upload-field select,.asset-upload-field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cbd2d0;border-radius:6px;outline:none}.asset-upload-field select{height:42px;padding:0 34px 0 11px}.asset-upload-field textarea{padding:10px 11px;line-height:1.55;resize:vertical}.asset-upload-field select:focus,.asset-upload-field textarea:focus{border-color:#2e6867;box-shadow:0 0 0 3px #2e686721}.asset-upload-field small,.asset-dropzone small{color:#7a8688;font-size:11px;line-height:1.45}.asset-dropzone{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin-bottom:18px;padding:20px;background:#f7f9f8;border:1px dashed #aebbb8;border-radius:8px;transition:background .14s ease,border-color .14s ease}.asset-dropzone--dragging{background:#e8f2ef;border-color:#377371}.asset-dropzone__empty{display:flex;flex-direction:column;align-items:center;gap:7px;color:#687679;text-align:center}.asset-dropzone__empty svg{color:#467a78}.asset-dropzone__empty strong{color:#2f4143;font-size:14px}.asset-dropzone__empty span{font-size:12px}.asset-local-preview{width:100%;min-width:0;display:grid;grid-template-columns:118px minmax(0,1fr);align-items:center;gap:15px}.asset-local-preview img{width:118px;height:88px;display:block;object-fit:cover;background:#e8edeb;border:1px solid #d2d9d7;border-radius:6px}.asset-local-preview div{min-width:0;display:grid;gap:5px}.asset-local-preview strong,.asset-local-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-local-preview strong{color:#304245;font-size:13px}.asset-local-preview span{color:#768285;font-size:11px}.asset-duplicate-message{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:14px;color:#725125;background:#fff7e8;border:1px solid #ead1a8;border-radius:7px}.asset-duplicate-message>div{min-width:0}.asset-duplicate-message strong{font-size:13px}.asset-duplicate-message p{margin:5px 0 0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.asset-duplicate-message__actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.asset-upload-no-customers{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#796039;text-align:center}.asset-upload-no-customers strong{color:var(--ink);font-size:14px}.asset-upload-no-customers p{margin:0;color:#6f7b7d;font-size:12px}@media (max-width: 1080px){.asset-toolbar{grid-template-columns:minmax(220px,1fr) auto auto}.view-toggle{grid-column:3}}@media (max-width: 760px){.asset-toolbar{grid-template-columns:1fr 78px}.asset-search{max-width:none;grid-column:1 / -1}.asset-toolbar .customer-filter{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr)}.asset-toolbar .customer-filter select{width:100%}.view-toggle{grid-column:2;grid-row:2 / span 2;align-self:end}.asset-collection--grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.asset-card__body{padding:13px 12px 11px}.asset-card__heading{display:grid}.asset-card__heading .asset-status{justify-self:start}.asset-card__meta{display:grid;gap:4px}.asset-card__tags{display:none}.asset-collection--list .asset-card{grid-template-columns:112px minmax(0,1fr) 48px}.asset-collection--list .asset-card__actions{flex-direction:column;justify-content:center}.asset-drawer__header,.asset-detail-section,.asset-drawer__footer,.asset-upload-modal__header,.asset-upload-modal__body,.asset-upload-modal__footer{padding-inline:20px}.asset-detail-grid{grid-template-columns:1fr}.asset-upload-modal{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}}@media (max-width: 520px){.asset-summary{flex-wrap:wrap;gap:8px 16px}.asset-summary small{width:100%;margin-left:0}.asset-toolbar{grid-template-columns:minmax(0,1fr) 74px}.asset-collection--grid{grid-template-columns:1fr}.asset-card__heading,.asset-card__meta,.asset-card__tags{display:flex}.asset-collection--list .asset-card{grid-template-columns:92px minmax(0,1fr) 44px}.asset-collection--list .asset-card__meta,.asset-collection--list .asset-card__tags,.asset-collection--list .asset-card__heading .asset-status{display:none}.asset-local-preview{grid-template-columns:86px minmax(0,1fr)}.asset-local-preview img{width:86px;height:72px}.asset-upload-modal__footer,.asset-drawer__footer{display:grid;grid-template-columns:1fr 1fr}.asset-upload-modal__footer .button,.asset-drawer__footer .button{width:100%}.asset-duplicate-message__actions{display:grid;grid-template-columns:1fr}}.generation-page{width:min(100%,1420px);margin:0 auto;color:var(--ink)}.generation-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:22px;border-bottom:1px solid #dce2df}.generation-page__eyebrow,.generation-section__eyebrow,.generation-rail-section__heading>span{display:block;margin-bottom:5px;color:#b04d3f;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.generation-page__header h1{margin:0;font-size:clamp(1.85rem,3vw,2.5rem);line-height:1.08;letter-spacing:0}.generation-page__header p{max-width:700px;margin:9px 0 0;color:#64706b;font-size:.93rem;line-height:1.65}.generation-icon-button,.generation-page__refresh{width:38px;height:38px;flex:0 0 38px;display:inline-flex;align-items:center;justify-content:center;padding:0;color:#54635e;background:#fff;border:1px solid #d5ddd9;border-radius:6px;cursor:pointer}.generation-icon-button:hover:not(:disabled),.generation-page__refresh:hover:not(:disabled){color:#143f3f;border-color:#7da09a;background:#f3f8f6}.generation-icon-button:disabled,.generation-page__refresh:disabled,.generation-icon-text-button:disabled,.generation-primary-button:disabled,.generation-secondary-button:disabled{cursor:not-allowed;opacity:.55}.generation-icon-button--danger{color:#982f22}.generation-summary{min-height:54px;display:flex;align-items:center;flex-wrap:wrap;gap:10px 28px;padding:13px 0;border-bottom:1px solid #dce2df;color:#61706b;font-size:.82rem}.generation-summary span{display:inline-flex;align-items:center;gap:7px}.generation-summary strong{color:#1b2d29;font-size:.9rem}.generation-summary__active{color:#9a5b12}.generation-message{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:11px 13px;border:1px solid #bddccf;border-radius:5px;color:#225e4a;background:#eff9f4;font-size:.86rem}.generation-message--error{color:#8b3024;border-color:#edc0b8;background:#fff3f0}.generation-message button{width:28px;height:28px;flex:0 0 28px;display:inline-flex;align-items:center;justify-content:center;padding:0;color:inherit;background:transparent;border:0;border-radius:4px;cursor:pointer}.generation-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,330px);align-items:start;gap:24px;margin-top:22px}.generation-form{min-width:0;background:#fff;border:1px solid #d7dfdb;border-radius:6px;overflow:hidden;box-shadow:0 10px 24px #1a2f2a0b}.generation-section{min-width:0;padding:24px;border-bottom:1px solid #dfe5e2}.generation-section__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:19px}.generation-section__heading h2,.generation-rail-section__heading h2{margin:0;font-size:1.05rem;line-height:1.3;letter-spacing:0}.generation-count{min-width:58px;padding:5px 8px;color:#3d5d54;background:#edf4f1;border-radius:4px;font-size:.76rem;font-weight:800;text-align:center}.generation-icon-text-button,.generation-secondary-button,.generation-primary-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 13px;border-radius:5px;font-size:.84rem;font-weight:750;letter-spacing:0;cursor:pointer}.generation-icon-text-button,.generation-secondary-button{color:#294941;background:#fff;border:1px solid #cfd9d5}.generation-icon-text-button:hover:not(:disabled),.generation-secondary-button:hover:not(:disabled){background:#f1f7f4;border-color:#86a79e}.generation-primary-button{color:#fff;background:#164b4b;border:1px solid #164b4b}.generation-primary-button:hover:not(:disabled){background:#0f3d3d}.generation-primary-button--danger{background:#9b3527;border-color:#9b3527}.generation-secondary-button--danger{width:100%;color:#8f3024;border-color:#e7bdb5;background:#fff7f5}.generation-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.generation-field{min-width:0;display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.generation-fields-grid .generation-field{margin-bottom:0}.generation-field>span,.generation-platforms legend{display:flex;align-items:center;gap:6px;color:#344942;font-size:.79rem;font-weight:750}.generation-field input,.generation-field select,.generation-field textarea{width:100%;min-width:0;color:#22332e;background:#fff;border:1px solid #ccd6d2;border-radius:5px;outline:none;letter-spacing:0}.generation-field input,.generation-field select{min-height:42px;padding:9px 11px}.generation-field textarea{padding:10px 11px;line-height:1.55;resize:vertical}.generation-field input:focus,.generation-field select:focus,.generation-field textarea:focus{border-color:#3b7773;box-shadow:0 0 0 3px #3b777321}.generation-field [aria-invalid=true]{border-color:#d37a6c;background:snow}.generation-field__counter{align-self:flex-end;color:#78847f;font-size:.72rem}.generation-field-error{margin:0;color:#9b3527;font-size:.75rem;line-height:1.45}.generation-platforms{min-width:0;padding:0;margin:19px 0 18px;border:0}.generation-platforms legend{margin-bottom:9px}.generation-platforms__options{display:flex;flex-wrap:wrap;gap:8px}.generation-platforms__options label{position:relative;cursor:pointer}.generation-platforms__options input{position:absolute;opacity:0;pointer-events:none}.generation-platforms__options span{min-height:34px;display:inline-flex;align-items:center;padding:7px 11px;color:#53625d;background:#f7f9f8;border:1px solid #d7dfdc;border-radius:4px;font-size:.76rem;font-weight:700}.generation-platforms__options input:checked+span{color:#164b4b;background:#e7f2ef;border-color:#72a19a}.generation-platforms__options input:focus-visible+span{outline:3px solid rgba(59,119,115,.2);outline-offset:2px}.generation-assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.generation-asset{min-width:0;overflow:hidden;background:#fff;border:1px solid #d7dfdc;border-radius:6px;transition:border-color .15s ease,box-shadow .15s ease}.generation-asset--selected{border-color:#4f8b83;box-shadow:0 0 0 2px #4f8b8321}.generation-asset__preview{position:relative;aspect-ratio:4 / 3;overflow:hidden;background:#e8eeeb}.generation-asset__preview>img{width:100%;height:100%;display:block;object-fit:cover}.generation-asset__preview .asset-preview-state{width:100%;height:100%}.generation-asset__select{position:absolute;top:9px;right:9px;width:25px;height:25px;display:grid;place-items:center;background:#fffffff0;border:1px solid rgba(55,79,71,.2);border-radius:4px;box-shadow:0 2px 8px #10231e29}.generation-asset__select input{width:15px;height:15px;accent-color:#1d615e}.generation-asset__body{min-width:0;display:flex;flex-direction:column;gap:5px;padding:10px}.generation-asset__body>strong{overflow:hidden;font-size:.77rem;text-overflow:ellipsis;white-space:nowrap}.generation-asset__body>span{color:#75817d;font-size:.7rem}.generation-asset__primary{display:inline-flex;align-items:center;gap:5px;margin-top:4px;color:#9a641d;font-size:.7rem;font-weight:750;cursor:pointer}.generation-asset__primary input{width:14px;height:14px;accent-color:#a56d25}.generation-asset__primary--disabled{color:#9aa29f;cursor:not-allowed}.generation-empty{min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:24px;color:#75817d;border:1px dashed #cbd6d1;background:#fafcfb;text-align:center}.generation-empty strong{color:#384d46;font-size:.84rem}.generation-empty span{font-size:.75rem;line-height:1.45}.generation-empty--compact{min-height:120px;border:0;background:transparent}.core-drivers-list{display:flex;flex-direction:column;gap:12px}.core-driver-row{min-width:0;display:grid;grid-template-columns:34px minmax(120px,.32fr) minmax(200px,1fr) 38px;align-items:end;gap:10px;padding:12px;background:#f8faf9;border:1px solid #dbe3df;border-radius:5px}.core-driver-row__index{align-self:center;color:#a95b4d;font-size:.74rem;font-weight:850;font-variant-numeric:tabular-nums}.core-driver-row .generation-field{margin:0}.core-driver-row .generation-icon-button{margin-bottom:1px}.generation-confirmation{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:12px;color:#365047;background:#eef5f2;border-left:3px solid #4e8a80;cursor:pointer}.generation-confirmation input{width:17px;height:17px;margin-top:2px;accent-color:#1d615e}.generation-confirmation span{display:flex;flex-direction:column;gap:3px}.generation-confirmation strong{font-size:.8rem}.generation-confirmation small{color:#68756f;font-size:.72rem}.generation-submit-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 24px;background:#f7faf8}.generation-submit-bar>span{display:flex;flex-direction:column;gap:3px}.generation-submit-bar strong{color:#2f4941;font-size:.8rem}.generation-submit-bar small{color:#75817d;font-size:.7rem}.generation-rail{min-width:0;border-left:1px solid #d7dfdb}.generation-rail-section{min-width:0;padding:0 0 24px 22px;margin-bottom:24px;border-bottom:1px solid #d7dfdb}.generation-rail-section__heading{margin-bottom:14px}.generation-job{padding:15px;background:#fff;border:1px solid #d6dfdb;border-radius:6px}.generation-job__status{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px}.generation-job__icon{width:34px;height:34px;display:grid;place-items:center;color:#21635d;background:#e9f4f0;border-radius:5px}.generation-job--failed .generation-job__icon,.generation-job--cancelled .generation-job__icon{color:#963528;background:#fff0ed}.generation-job--succeeded .generation-job__icon{color:#287347;background:#e9f6ee}.generation-job__status>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px}.generation-job__status strong{font-size:.85rem}.generation-job__status small{overflow:hidden;color:#78847f;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.generation-job__status b{color:#425a52;font-size:.79rem;font-variant-numeric:tabular-nums}.generation-progress{height:6px;margin:14px 0;overflow:hidden;background:#e7ecea;border-radius:3px}.generation-progress span{height:100%;display:block;background:#2e7770;border-radius:inherit;transition:width .24s ease}.generation-job__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 13px}.generation-job__meta div{min-width:0;padding:8px;background:#f6f8f7}.generation-job__meta dt{color:#78847f;font-size:.66rem}.generation-job__meta dd{margin:3px 0 0;overflow:hidden;color:#334b43;font-size:.75rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.generation-job__error{margin:0 0 12px;color:#963528;font-size:.74rem;line-height:1.5}.generation-history__list{display:flex;flex-direction:column}.generation-history-item{position:relative;min-width:0;padding:13px 0 14px;border-bottom:1px solid #dfe5e2}.generation-history-item:last-child{border-bottom:0}.generation-history-item__topline{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.generation-history-item__topline>strong{min-width:0;overflow:hidden;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.generation-status{flex:0 0 auto;padding:3px 6px;color:#35645a;background:#e9f3ef;border-radius:4px;font-size:.65rem;font-weight:800}.generation-status--需要修改{color:#8d4b12;background:#fff1dc}.generation-status--已发布{color:#205f3a;background:#e3f3e9}.generation-history-item p{display:-webkit-box;margin:7px 0;overflow:hidden;color:#66736e;font-size:.73rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.generation-history-item__meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;color:#87918d;font-size:.65rem}.generation-history-item__meta span{display:inline-flex;align-items:center;gap:3px}.generation-history-item__job{display:inline-flex;margin-top:8px;padding:3px 6px;color:#4f6961;background:#edf2f0;border-radius:3px;font-size:.64rem;font-weight:750}.generation-history-item__job--failed,.generation-history-item__job--cancelled{color:#8f3024;background:#fff0ed}.generation-history-item__job--succeeded{color:#24663f;background:#e7f4eb}.generation-readonly-notice{display:flex;align-items:flex-start;gap:11px;padding:13px;color:#695324;background:#fff8e9;border-left:3px solid #d3a247}.generation-readonly-notice span{display:flex;flex-direction:column;gap:3px}.generation-readonly-notice strong{font-size:.82rem}.generation-readonly-notice small{color:#7c6d4c;font-size:.73rem}.generation-viewer-layout{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(300px,1fr);gap:24px;margin-top:22px}.generation-viewer-layout .generation-readonly-notice{grid-column:1 / -1}.generation-viewer-layout .generation-rail-section{padding-left:0}.generation-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:12px;background:#12221e8f}.generation-confirm-dialog{width:min(440px,100%);overflow:hidden;background:#fff;border-radius:6px;box-shadow:0 24px 70px #09181452}.generation-confirm-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 18px 14px;border-bottom:1px solid #e0e5e3}.generation-confirm-dialog__header span{color:#b04d3f;font-size:.68rem;font-weight:800}.generation-confirm-dialog__header h2{margin:4px 0 0;font-size:1.05rem}.generation-confirm-dialog>p{margin:0;padding:18px;color:#586660;font-size:.83rem;line-height:1.6}.generation-confirm-dialog__actions{display:flex;justify-content:flex-end;gap:9px;padding:13px 18px;background:#f7f9f8;border-top:1px solid #e0e5e3}.generation-page-status{min-height:50vh;display:flex;align-items:center;justify-content:center;gap:10px;color:#67746f}.generation-icon-button:focus-visible,.generation-icon-text-button:focus-visible,.generation-secondary-button:focus-visible,.generation-primary-button:focus-visible,.generation-message button:focus-visible{outline:3px solid rgba(59,119,115,.22);outline-offset:2px}@media (max-width: 1120px){.generation-layout{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.generation-section{padding:21px}}@media (max-width: 900px){.generation-layout,.generation-viewer-layout{grid-template-columns:minmax(0,1fr)}.generation-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;border-left:0}.generation-rail-section,.generation-viewer-layout .generation-rail-section{padding:0;border-bottom:0}}@media (max-width: 700px){.generation-fields-grid{grid-template-columns:minmax(0,1fr)}.core-driver-row{grid-template-columns:30px minmax(0,1fr) 38px;align-items:start}.core-driver-row__index{grid-row:1 / 3;align-self:start;padding-top:30px}.core-driver-row__category,.core-driver-row__content{grid-column:2}.core-driver-row .generation-icon-button{grid-column:3;grid-row:1;margin-top:24px}.generation-rail{grid-template-columns:minmax(0,1fr)}}@media (max-width: 520px){.generation-page__header{gap:12px}.generation-page__header h1{font-size:1.75rem}.generation-summary{gap:8px 16px}.generation-form{border-inline:0;border-radius:0;margin-inline:-16px}.generation-section{padding:19px 16px}.generation-assets-grid{grid-template-columns:minmax(0,1fr)}.generation-platforms__options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.generation-platforms__options span{width:100%;justify-content:center;text-align:center}.core-driver-row{padding:10px}.generation-submit-bar{flex-direction:column;align-items:stretch;padding:14px 16px}.generation-submit-bar .generation-primary-button{width:100%}.generation-confirm-dialog__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion: reduce){.generation-asset,.generation-progress span{transition-duration:.01ms}}.review-page{width:min(100%,1480px);margin:0 auto;color:var(--ink)}.review-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding-bottom:20px;border-bottom:1px solid #dce2df}.review-page__eyebrow,.review-detail__eyebrow,.review-section__heading span,.review-panel-heading span{display:block;margin-bottom:5px;color:#b04d3f;font-size:.7rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.review-page__header h1{margin:0;font-size:clamp(1.85rem,3vw,2.5rem);line-height:1.08}.review-page__header p{max-width:700px;margin:9px 0 0;color:#64706b;font-size:.93rem;line-height:1.65}.review-icon-button{width:38px;height:38px;flex:0 0 38px;display:inline-flex;align-items:center;justify-content:center;padding:0;color:#54635e;background:#fff;border:1px solid #d5ddd9;border-radius:6px}.review-icon-button:hover:not(:disabled),.review-secondary-button:hover:not(:disabled){color:#143f3f;border-color:#7da09a;background:#f3f8f6}.review-icon-button--danger{color:#963528}.review-message{display:flex;justify-content:space-between;gap:14px;margin-top:14px;padding:11px 13px;color:#225e4a;background:#eff9f4;border:1px solid #bddccf;border-radius:5px;font-size:.84rem}.review-message--error{color:#8b3024;background:#fff3f0;border-color:#edc0b8}.review-message button{display:inline-flex;align-items:center;justify-content:center;padding:0;color:inherit;background:transparent;border:0}.review-status-tabs{display:flex;gap:4px;overflow-x:auto;padding:15px 0 12px;border-bottom:1px solid #dce2df}.review-status-tab{min-height:34px;padding:7px 12px;color:#61706b;background:transparent;border:1px solid transparent;border-radius:4px;font-size:.78rem;font-weight:750;white-space:nowrap}.review-status-tab--active{color:#164b4b;background:#e7f2ef;border-color:#72a19a}.review-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:22px;margin-top:20px;align-items:start}.review-queue,.review-detail{min-width:0}.review-queue{background:#fff;border:1px solid #d7dfdb;border-radius:6px;overflow:hidden}.review-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 17px 14px;border-bottom:1px solid #e0e6e3}.review-panel-heading span{margin:0}.review-panel-heading h2,.review-detail__heading h2,.review-section__heading h3{margin:0;line-height:1.25}.review-panel-heading h2{font-size:1rem}.review-panel-heading>strong{min-width:28px;padding:5px 8px;color:#35645a;background:#e9f3ef;border-radius:4px;text-align:center;font-size:.76rem}.review-queue__list{display:flex;flex-direction:column}.review-queue-item{min-width:0;display:flex;flex-direction:column;gap:7px;padding:14px 16px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #e4e9e6}.review-queue-item:hover,.review-queue-item--active{background:#f5faf8}.review-queue-item--active{box-shadow:inset 3px 0 #2e7770}.review-queue-item__top{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.review-queue-item__top strong{min-width:0;overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.review-queue-item__meta,.review-queue-item__flags{color:#78847f;font-size:.7rem}.review-queue-item__preview{display:-webkit-box;overflow:hidden;color:#52645c;font-size:.75rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.review-queue-item__flags{color:#4b7568}.review-status{flex:0 0 auto;padding:4px 7px;color:#35645a;background:#e9f3ef;border-radius:4px;font-size:.65rem;font-style:normal;font-weight:800;white-space:nowrap}.review-status--需要修改{color:#8d4b12;background:#fff1dc}.review-status--已发布{color:#205f3a;background:#e3f3e9}.review-status--已审核{color:#285f57;background:#e6f1ef}.review-detail{display:flex;flex-direction:column;gap:14px}.review-detail__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:4px 2px 8px}.review-detail__eyebrow{margin-bottom:6px}.review-detail__heading h2{font-size:1.42rem}.review-detail__heading p{margin:7px 0 0;color:#64706b;font-size:.8rem;line-height:1.5}.review-section{min-width:0;padding:18px;background:#fff;border:1px solid #d7dfdb;border-radius:6px}.review-section__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.review-section__heading span{margin:0 0 4px}.review-section__heading h3{font-size:1rem}.review-heading-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.review-secondary-button,.review-status-button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 11px;color:#294941;background:#fff;border:1px solid #cfd9d5;border-radius:5px;font-size:.76rem;font-weight:750}.review-secondary-button:disabled,.review-status-button:disabled,.review-icon-button:disabled{cursor:not-allowed;opacity:.55}.review-copy-editor{width:100%;min-height:210px;padding:13px;color:#22332e;background:#fcfefd;border:1px solid #cbd7d2;border-radius:5px;outline:none;font-size:.9rem;line-height:1.7;resize:vertical}.review-copy-editor:focus{border-color:#3b7773;box-shadow:0 0 0 3px #3b777321}.review-copy-editor[readonly]{color:#4f5e58;background:#f7f9f8}.review-copy-meta{display:flex;justify-content:space-between;gap:14px;margin-top:7px;color:#78847f;font-size:.68rem}.review-source-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);gap:20px}.review-source-content{max-height:210px;overflow:auto;margin:0;padding:12px;color:#64706b;background:#f7f9f8;border:1px solid #e0e6e3;border-radius:4px;font-family:inherit;font-size:.78rem;line-height:1.55;white-space:pre-wrap}.review-info-list{display:grid;gap:10px;margin:0}.review-info-list div{min-width:0;padding:9px 10px;background:#f7f9f8}.review-info-list dt{color:#78847f;font-size:.67rem}.review-info-list dd{margin:4px 0 0;color:#344942;font-size:.76rem;line-height:1.45;word-break:break-word}.review-drivers{display:flex;flex-direction:column;gap:9px}.review-driver{min-width:0;display:grid;grid-template-columns:30px minmax(110px,.35fr) minmax(0,1fr) 32px;align-items:start;gap:8px;padding:10px;background:#f8faf9;border:1px solid #dbe3df;border-radius:5px}.review-driver__index{padding-top:8px;color:#a95b4d;font-size:.72rem;font-weight:850}.review-driver input,.review-driver textarea{width:100%;min-width:0;padding:8px 9px;color:#263b34;background:#fff;border:1px solid #cbd7d2;border-radius:4px;outline:none;font-size:.76rem}.review-driver textarea{min-height:42px;line-height:1.45;resize:vertical}.review-driver input:focus,.review-driver textarea:focus{border-color:#3b7773;box-shadow:0 0 0 3px #3b777321}.review-driver input[readonly],.review-driver textarea[readonly]{color:#68756f;background:#f7f9f8}.review-quality-summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:11px 12px;color:#31564b;background:#eff7f3;border-left:3px solid #4e8a80;font-size:.77rem}.review-quality-summary strong{font-size:.9rem}.review-inline-empty{padding:12px;color:#78847f;background:#f7f9f8;font-size:.77rem}.review-issues{display:grid;gap:7px;padding:0;margin:11px 0 14px;list-style:none}.review-issues li{display:flex;gap:10px;padding:8px 10px;color:#64706b;background:#fffaf0;border-left:3px solid #d3a247;font-size:.74rem;line-height:1.45}.review-issues strong{flex:0 0 70px;color:#775623}.review-score-table{overflow-x:auto;border:1px solid #dfe5e2;border-radius:4px}.review-score-table__header,.review-score-row{min-width:520px;display:grid;grid-template-columns:minmax(180px,1fr) 54px 110px 85px;align-items:center;gap:10px;padding:9px 11px}.review-score-table__header{color:#78847f;background:#f7f9f8;font-size:.68rem;font-weight:800}.review-score-row{border-top:1px solid #e5eae7;font-size:.76rem}.review-score-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-score-row select{min-height:30px;padding:4px 5px;color:#3f554c;background:#fff;border:1px solid #cbd7d2;border-radius:4px;font-size:.7rem}.review-score{width:28px;height:28px;display:inline-grid;place-items:center;border-radius:50%;font-size:.76rem}.review-score small{display:block;margin-left:4px;color:#78847f;font-size:.58rem;font-weight:600}.review-score--zero{color:#a43227;background:#ffe7e2}.review-score--one{color:#9a5b12;background:#fff0d9}.review-score--two{color:#826b19;background:#fff8c8}.review-score--three{color:#276444;background:#e1f3e7}.review-score-save{margin-top:11px}.review-section--checklist{border-color:#cfded8}.review-gate-state{padding:5px 8px;color:#8d4b12;background:#fff1dc;border-radius:4px;font-size:.68rem;font-weight:800}.review-gate-state--ready{color:#24663f;background:#e7f4eb}.review-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}.review-checklist label{display:flex;align-items:flex-start;gap:8px;color:#40544c;font-size:.76rem;line-height:1.45}.review-checklist input{width:16px;height:16px;flex:0 0 16px;margin:0;accent-color:#2e7770}.review-status-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:15px;margin-top:14px;border-top:1px solid #e0e6e3}.review-status-button--revision{color:#8f3024;background:#fff7f5;border-color:#e7bdb5}.review-status-button--approved{color:#fff;background:#164b4b;border-color:#164b4b}.review-status-button--published{color:#205f3a;background:#e9f6ee;border-color:#b8d8c1}.review-empty{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:26px 18px;color:#75817d;text-align:center}.review-empty strong{color:#384d46;font-size:.84rem}.review-empty span{max-width:240px;font-size:.73rem;line-height:1.45}.review-empty--detail{min-height:400px;background:#fff;border:1px dashed #cbd6d1;border-radius:6px}.review-page-status{min-height:50vh;display:flex;align-items:center;justify-content:center;gap:9px;color:#67746f}@media (max-width: 1000px){.review-layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:16px}.review-source-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 780px){.review-layout{grid-template-columns:minmax(0,1fr)}.review-queue{order:1}.review-detail{order:2}.review-queue__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.review-queue-item{border-right:1px solid #e4e9e6}}@media (max-width: 560px){.review-page__header{gap:12px}.review-page__header h1{font-size:1.75rem}.review-layout{margin-top:14px}.review-queue{border-inline:0;border-radius:0;margin-inline:-16px}.review-queue__list{grid-template-columns:minmax(0,1fr)}.review-section{padding:15px}.review-section__heading{align-items:flex-start;flex-direction:column}.review-heading-actions{justify-content:flex-start}.review-driver{grid-template-columns:28px minmax(0,1fr) 32px}.review-driver input,.review-driver textarea{grid-column:2}.review-driver textarea{grid-row:2}.review-driver .review-icon-button{grid-column:3;grid-row:1}.review-checklist{grid-template-columns:minmax(0,1fr)}.review-status-actions{justify-content:stretch}.review-status-actions>*{flex:1 1 46%}}.calendar-page{width:min(100%,1480px);margin:0 auto;color:var(--ink)}.calendar-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding-bottom:20px;border-bottom:1px solid #dce2df}.calendar-page__eyebrow,.calendar-panel__heading>div>span{display:block;margin-bottom:5px;color:#b04d3f;font-size:.7rem;font-weight:800;text-transform:uppercase}.calendar-page__header h1{margin:0;font-size:clamp(1.85rem,3vw,2.5rem);line-height:1.08}.calendar-page__header p{max-width:700px;margin:9px 0 0;color:#64706b;font-size:.93rem;line-height:1.65}.calendar-icon-button{width:38px;height:38px;flex:0 0 38px;display:inline-flex;align-items:center;justify-content:center;padding:0;color:#54635e;background:#fff;border:1px solid #d5ddd9;border-radius:6px}.calendar-icon-button:hover:not(:disabled),.calendar-secondary-button:hover:not(:disabled){color:#143f3f;border-color:#7da09a;background:#f3f8f6}.calendar-icon-button:disabled,.calendar-primary-button:disabled,.calendar-secondary-button:disabled{cursor:not-allowed;opacity:.55}.calendar-message{display:flex;justify-content:space-between;gap:14px;margin-top:14px;padding:11px 13px;color:#225e4a;background:#eff9f4;border:1px solid #bddccf;border-radius:5px;font-size:.84rem}.calendar-message--error{color:#8b3024;background:#fff3f0;border-color:#edc0b8}.calendar-message button{display:inline-flex;padding:0;color:inherit;background:transparent;border:0}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0 12px;border-bottom:1px solid #dce2df}.calendar-month-controls,.calendar-status-tabs{display:flex;align-items:center;gap:7px}.calendar-month-controls strong{min-width:116px;color:#253a33;font-size:1.02rem;text-align:center}.calendar-secondary-button,.calendar-primary-button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 11px;color:#294941;background:#fff;border:1px solid #cfd9d5;border-radius:5px;font-size:.76rem;font-weight:750}.calendar-primary-button{color:#fff;background:#164b4b;border-color:#164b4b}.calendar-primary-button:hover:not(:disabled){background:#0f3d3d}.calendar-secondary-button--danger{color:#8f3024;border-color:#e7bdb5;background:#fff7f5}.calendar-status-tabs{overflow-x:auto}.calendar-status-tab{min-height:34px;padding:7px 11px;color:#61706b;background:transparent;border:1px solid transparent;border-radius:4px;font-size:.76rem;font-weight:750;white-space:nowrap}.calendar-status-tab--active{color:#164b4b;background:#e7f2ef;border-color:#72a19a}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,340px);gap:20px;margin-top:20px;align-items:start}.calendar-main{min-width:0;overflow:hidden;background:#fff;border:1px solid #d7dfdb;border-radius:6px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{color:#78847f;background:#f7f9f8;border-bottom:1px solid #dfe5e2;font-size:.7rem;font-weight:800;text-align:center}.calendar-weekdays span{padding:10px 4px}.calendar-day{min-width:0;min-height:122px;padding:7px;border-right:1px solid #e3e9e6;border-bottom:1px solid #e3e9e6}.calendar-day:nth-child(7n){border-right:0}.calendar-day--muted{background:#fafcfb}.calendar-day__number{min-width:26px;height:26px;display:inline-grid;place-items:center;padding:0;color:#52645c;background:transparent;border:0;border-radius:50%;font-size:.72rem;font-weight:750}.calendar-day--muted .calendar-day__number{color:#adb7b2}.calendar-day__number--today{color:#fff;background:#2e7770}.calendar-day__entries{display:flex;flex-direction:column;gap:4px;margin-top:5px}.calendar-entry{min-width:0;display:flex;flex-direction:column;gap:2px;padding:5px 6px;color:#31554a;text-align:left;background:#e9f3ef;border:0;border-left:3px solid #4e8a80;border-radius:3px}.calendar-entry:hover{background:#dceee8}.calendar-entry>span{color:#52776a;font-size:.61rem;font-weight:800}.calendar-entry strong,.calendar-entry small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-entry strong{font-size:.68rem}.calendar-entry small{color:#6e8179;font-size:.59rem}.calendar-entry--published{color:#24603d;background:#e5f4e9;border-left-color:#58a06b}.calendar-entry--cancelled{color:#7d7770;background:#f0f1ef;border-left-color:#a8aeaa}.calendar-more{color:#687a72;font-size:.63rem;text-align:center}.calendar-sidebar{min-width:0;display:flex;flex-direction:column;gap:16px}.calendar-panel{min-width:0;padding:17px;background:#fff;border:1px solid #d7dfdb;border-radius:6px}.calendar-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.calendar-panel__heading h2{margin:0;font-size:1rem;line-height:1.25}.calendar-field{display:flex;flex-direction:column;gap:7px;margin-bottom:12px}.calendar-field>span{color:#344942;font-size:.76rem;font-weight:750}.calendar-field input,.calendar-field select{width:100%;min-height:39px;min-width:0;padding:8px 9px;color:#263b34;background:#fff;border:1px solid #cbd7d2;border-radius:4px;outline:none;font-size:.76rem}.calendar-field input:focus,.calendar-field select:focus{border-color:#3b7773;box-shadow:0 0 0 3px #3b777321}.calendar-date-fields{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(90px,.8fr);gap:9px}.calendar-candidate-preview{display:-webkit-box;max-height:58px;overflow:hidden;margin:-3px 0 12px;padding:8px 9px;color:#64706b;background:#f7f9f8;font-size:.72rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}.calendar-compose .calendar-primary-button{width:100%}.calendar-readonly{display:flex;align-items:flex-start;gap:10px;color:#695324;background:#fff8e9;border-color:#ead9a9}.calendar-readonly div{display:flex;flex-direction:column;gap:4px}.calendar-readonly strong{font-size:.8rem}.calendar-readonly span{color:#7c6d4c;font-size:.72rem;line-height:1.45}.calendar-selected__status{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.calendar-selected__status strong{min-width:0;overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.calendar-status{padding:4px 7px;color:#35645a;background:#e9f3ef;border-radius:4px;font-size:.65rem;font-style:normal;font-weight:800}.calendar-status--已发布{color:#205f3a;background:#e3f3e9}.calendar-status--已取消{color:#77746e;background:#eff1ef}.calendar-info-list{display:grid;gap:8px;margin:14px 0}.calendar-info-list div{padding:8px 9px;background:#f7f9f8}.calendar-info-list dt{color:#78847f;font-size:.65rem}.calendar-info-list dd{margin:3px 0 0;color:#344942;font-size:.74rem}.calendar-selected__preview{margin:0;color:#64706b;font-size:.75rem;line-height:1.5}.calendar-selected__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.calendar-selected__actions>*{flex:1 1 120px}.calendar-empty{color:#75817d;text-align:center}.calendar-empty--compact{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 8px;font-size:.73rem}.calendar-page-status{min-height:50vh;display:flex;align-items:center;justify-content:center;gap:9px;color:#67746f}@media (max-width: 1000px){.calendar-layout{grid-template-columns:minmax(0,1fr) minmax(260px,300px);gap:14px}.calendar-day{min-height:112px;padding:5px}.calendar-entry{padding:4px}}@media (max-width: 780px){.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-status-tabs{width:100%}.calendar-layout{grid-template-columns:minmax(0,1fr)}.calendar-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-day{min-height:105px}.calendar-entry small{display:none}}@media (max-width: 560px){.calendar-page__header h1{font-size:1.75rem}.calendar-layout{margin-top:14px}.calendar-main{border-inline:0;border-radius:0;margin-inline:-16px}.calendar-day{min-height:86px;padding:4px}.calendar-weekdays span{padding:8px 3px}.calendar-day__number{min-width:23px;height:23px;font-size:.67rem}.calendar-entry{padding:3px 4px}.calendar-entry>span{font-size:.57rem}.calendar-entry strong{font-size:.6rem}.calendar-sidebar{display:flex}.calendar-panel{padding:15px}.calendar-date-fields{grid-template-columns:minmax(0,1fr)}.calendar-selected__actions{flex-direction:column}}.settings-page{max-width:1180px;margin:0 auto;padding:26px 28px 40px}.settings-page__header{align-items:flex-start}.settings-page__header>svg{color:#3b7773;margin-top:6px}.settings-page__eyebrow{display:block;margin-bottom:5px;color:#b04d3f;font-size:.7rem;font-weight:800;letter-spacing:.08em}.settings-page-status{display:flex;min-height:360px;align-items:center;justify-content:center;gap:9px;color:#65736d}.settings-tabs{display:flex;gap:4px;margin:5px 0 18px;border-bottom:1px solid #d8e0dc;overflow-x:auto}.settings-tab{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;min-height:41px;padding:0 12px;color:#65736d;background:transparent;border:0;border-bottom:2px solid transparent;cursor:pointer;font:inherit;font-size:.78rem;font-weight:750}.settings-tab--active{color:#285f5b;border-bottom-color:#3b7773}.settings-stack{display:grid;gap:16px}.settings-panel{padding:18px;background:#fff;border:1px solid #d7dfdb;border-radius:6px}.settings-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.settings-panel__heading>div>span{display:block;margin-bottom:5px;color:#b04d3f;font-size:.68rem;font-weight:800;letter-spacing:.07em}.settings-panel__heading h2{margin:0;color:#29433b;font-size:1.02rem}.settings-panel__heading>svg{color:#3b7773}.settings-form{display:grid;max-width:560px;gap:12px}.settings-form--grid{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-form label{display:flex;flex-direction:column;gap:6px;min-width:0}.settings-form label>span{color:#4a5d55;font-size:.74rem;font-weight:750}.settings-form input,.settings-form select{box-sizing:border-box;width:100%;min-height:39px;padding:8px 10px;color:#263b34;background:#fff;border:1px solid #cbd7d2;border-radius:4px;font:inherit;font-size:.78rem;outline:none}.settings-form input:focus,.settings-form select:focus{border-color:#3b7773;box-shadow:0 0 0 3px #3b777321}.settings-form__wide{grid-column:1 / -1}.settings-form__actions{display:flex;align-items:center;gap:9px;grid-column:1 / -1}.settings-primary-button,.settings-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 13px;border:1px solid transparent;border-radius:4px;cursor:pointer;font:inherit;font-size:.76rem;font-weight:800}.settings-primary-button{color:#fff;background:#326f6a;border-color:#326f6a}.settings-primary-button:disabled,.settings-secondary-button:disabled{cursor:wait;opacity:.55}.settings-secondary-button{color:#49615a;background:#f5f8f6;border-color:#cbd7d2}.settings-inline-notice{margin:12px 0 0;color:#2b6c4d;font-size:.76rem}.settings-message{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:10px 12px;color:#695324;background:#fff8e9;border:1px solid #ead9a9;border-radius:4px;font-size:.76rem}.settings-message--error{color:#8c3c31;background:#fff1ed;border-color:#ebc6bc}.settings-message button{display:inline-flex;padding:3px;color:inherit;background:transparent;border:0;cursor:pointer}.settings-table-wrap{overflow-x:auto}.settings-table{width:100%;min-width:610px;border-collapse:collapse;font-size:.76rem}.settings-table th{color:#78847f;text-align:left;font-size:.66rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.settings-table th,.settings-table td{padding:11px 9px;border-bottom:1px solid #e4eae7;vertical-align:middle}.settings-table td:first-child{min-width:180px}.settings-table td strong,.settings-table td small{display:block}.settings-table td small{margin-top:4px;color:#7b8782;font-size:.67rem}.settings-pill{display:inline-block;padding:4px 7px;color:#77746e;background:#eff1ef;border-radius:4px;font-size:.64rem;font-weight:800}.settings-pill--good{color:#205f3a;background:#e3f3e9}.settings-link-button{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;color:#316d68;background:transparent;border:0;cursor:pointer;font:inherit;font-size:.7rem;font-weight:800}.settings-link-button:disabled{cursor:wait;opacity:.5}.settings-link-button--danger{color:#a14d42}.settings-muted,.settings-empty{color:#84908b;font-size:.72rem}.settings-empty{margin:8px 0 0}.settings-toggle{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;padding:11px 12px;background:#f7f9f8;border:1px solid #e1e8e4;border-radius:4px}.settings-toggle input{width:17px;min-height:17px;margin:2px 0 0;accent-color:#3b7773}.settings-toggle span{display:flex;flex-direction:column;gap:4px}.settings-toggle span small{color:#7a8782;font-size:.68rem;font-weight:450;line-height:1.4}.provider-list{display:grid;gap:9px}.provider-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(230px,1.4fr) auto;align-items:center;gap:13px;padding:12px;background:#f7f9f8;border:1px solid #e1e8e4;border-radius:4px}.provider-row__identity strong,.provider-row__identity small{display:block}.provider-row__identity small,.provider-row__meta{color:#7a8782;font-size:.68rem}.provider-row__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.provider-row__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px}.settings-security-note{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:11px 12px;color:#557067;background:#edf6f2;border:1px solid #cfe3da;border-radius:4px;font-size:.72rem;line-height:1.45}.settings-security-note svg{flex:0 0 auto;color:#33805f;margin-top:1px}@media (max-width: 760px){.settings-page{padding:20px 16px 30px}.settings-form--grid{grid-template-columns:1fr}.settings-form__wide,.settings-form__actions{grid-column:auto}.provider-row{grid-template-columns:1fr}.provider-row__actions{justify-content:flex-start}.settings-page__header h1{font-size:1.75rem}}
