*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Aptos,Avenir Next,Segoe UI,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.inline{display:inline}.flex{display:flex}.table{display:table}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.bg-app-bg{--tw-bg-opacity: 1;background-color:rgb(247 247 246 / var(--tw-bg-opacity, 1))}.font-sans{font-family:Aptos,Avenir Next,Segoe UI,sans-serif}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--red-brand: #c2272f;--gray-brand: #3c3c3b;--bg-app: #f7f7f6;--surface: #ffffff;--surface-muted: #f0f0ef;--border: #d9d9d6;--text-main: #30302f;--text-muted: #6b6b68;--blue-process: #2563eb;--violet-review: #6d5bd0;--amber-warning: #b7791f;--green-success: #2f855a;--green-delivered: #276749}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--bg-app);color:var(--text-main);font-family:Aptos,Avenir Next,Segoe UI,sans-serif;letter-spacing:0}body{min-width:320px;min-height:100vh;margin:0}body:has(.login-shell){overflow:hidden}html{scrollbar-gutter:stable}body:has(.modal-backdrop),body:has(.notice-backdrop){overflow:hidden}button{font:inherit}.app-shell{display:grid;grid-template-columns:282px minmax(0,1fr);min-height:100vh;background:var(--bg-app)}.sidebar{display:flex;flex-direction:column;gap:26px;min-height:100vh;padding:24px 18px;border-right:1px solid var(--border);background:#ffffffe0;box-shadow:18px 0 60px #3c3c3b12}.brand-block{padding:0 6px 18px;border-bottom:1px solid var(--border)}.brand-wordmark{display:flex;align-items:baseline;gap:8px;color:var(--gray-brand);line-height:1}.brand-wordmark strong{color:var(--red-brand);font-size:1.9rem;font-weight:850}.brand-wordmark span{font-size:.92rem;font-weight:750;text-transform:uppercase}.brand-block p{max-width:210px;margin:10px 0 0;color:var(--text-muted);font-size:.86rem;line-height:1.45}.sidebar-nav{display:grid;gap:6px}.nav-group{display:grid;gap:4px}.nav-group+.nav-group{margin-top:16px}.nav-group-title{padding:0 10px;margin-bottom:2px;color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.nav-item{display:grid;grid-template-columns:24px minmax(0,1fr) 16px;align-items:center;min-height:42px;width:100%;border:0;border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer;padding:0 10px;text-align:left}.nav-item svg{color:currentColor}.nav-item span{overflow:hidden;font-size:.94rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.nav-item:hover,.nav-item:focus-visible{background:var(--surface-muted);color:var(--text-main);outline:none}.nav-item.is-active{background:#c2272f1a;color:var(--red-brand)}.sidebar-footer{margin-top:auto;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.sidebar-user{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:center}.sidebar-user svg{color:var(--gray-brand)}.sidebar-user strong,.sidebar-user span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer span,.status-tile span,.metric-tile span{display:block;color:var(--text-muted);font-size:.76rem;font-weight:700;text-transform:uppercase}.sidebar-footer strong{display:block;margin-top:3px;color:var(--text-main);font-size:.93rem}.main-area{display:flex;flex-direction:column;gap:22px;min-width:0;padding:26px}.topbar,.file-toolbar,.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar{min-height:74px}.eyebrow{display:block;color:var(--red-brand);font-size:.74rem;font-weight:800;text-transform:uppercase}h1,h2,h3,p{margin:0}h1{margin-top:4px;color:var(--gray-brand);font-size:2.08rem;font-weight:820;line-height:1.12}h2{margin-top:4px;color:var(--text-main);font-size:1.12rem;font-weight:800;line-height:1.25}h3{color:var(--text-main);font-size:1rem;font-weight:800}.topbar-actions{display:flex;align-items:center;gap:10px}.connection-pill{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-main);font-size:.86rem;font-weight:750}.connection-pill span{width:9px;height:9px;border-radius:999px;background:var(--amber-warning)}.connection-pill.online span{background:var(--green-success)}.connection-pill.offline span{background:var(--red-brand)}.icon-button,.primary-action,.secondary-action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--gray-brand);cursor:pointer}.icon-button{width:38px}.primary-action{gap:9px;border-color:var(--red-brand);background:var(--red-brand);color:#fff;padding:0 15px;font-size:.9rem;font-weight:820}.secondary-action{gap:8px;padding:0 13px;font-size:.88rem;font-weight:760}.icon-button:hover,.secondary-action:hover,.icon-button:focus-visible,.secondary-action:focus-visible{border-color:#c2272f61;color:var(--red-brand);outline:none}.primary-action:hover,.primary-action:focus-visible{border-color:#a91f26;background:#a91f26;outline:none}.notification-shell,.notification-button{position:relative}.notification-badge{position:absolute;top:-7px;right:-7px;display:grid;min-width:20px;height:20px;place-items:center;border:2px solid var(--surface);border-radius:999px;background:var(--red-brand);color:#fff;font-size:.68rem;font-weight:850;line-height:1}.notification-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:20;display:grid;gap:12px;width:min(380px,calc(100vw - 36px));border:1px solid var(--border);border-radius:8px;background:#fffffffa;box-shadow:0 24px 72px #3c3c3b29;padding:14px}.notification-popover-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.notification-popover-head h2{font-size:1rem}.notification-list{display:grid;gap:8px;max-height:360px;overflow:auto;padding-right:2px}.notification-item{display:grid;gap:7px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px}.notification-item.is-unread{border-color:#c2272f57;background:#c2272f0f}.notification-item div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.notification-item strong{color:var(--text-main);font-size:.9rem}.notification-item span,.notification-item p,.notification-empty{color:var(--text-muted);font-size:.78rem;line-height:1.35}.notification-read-action{width:100%}.notification-popover-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.notification-popover-actions .secondary-action{justify-content:center;gap:6px}.notification-history-list{display:grid;gap:8px;max-height:min(60vh,520px);overflow-y:auto;padding-right:2px}.session-user{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;min-height:42px;max-width:220px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--gray-brand)}.session-user strong,.session-user span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-user strong{font-size:.88rem;line-height:1.1}.session-user span{margin-top:3px;color:var(--text-muted);font-size:.72rem;font-weight:780;text-transform:uppercase}.inline-alert{display:flex;align-items:center;gap:10px;width:100%;border:1px solid rgba(183,121,31,.28);border-radius:8px;background:#b7791f1a;color:#745015;padding:12px 14px;font-size:.9rem;font-weight:720;line-height:1.35}.inline-alert.danger{border-color:#c2272f52;background:#c2272f1a;color:#982127}.login-shell{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,560px) minmax(360px,430px);align-items:center;justify-content:center;gap:clamp(34px,6vw,86px);height:100vh;min-height:720px;padding:clamp(24px,5vw,64px);background:linear-gradient(90deg,#1e1e1dc2,#1e1e1d61 48%,#1e1e1d94),linear-gradient(180deg,#00000014,#0000006b)}.login-shell:after{position:absolute;top:-3%;right:-3%;bottom:-3%;left:-3%;z-index:0;content:"";background:url(/topografia_agrimessura.jpg) center / cover no-repeat;animation:login-background-breathe 18s ease-in-out infinite}.login-shell:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:"";background:linear-gradient(90deg,#1e1e1dc2,#1e1e1d61 48%,#1e1e1d94),linear-gradient(180deg,#00000014,#0000006b);pointer-events:none}.login-panel,.modal-panel{border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 24px 80px #3c3c3b1a}.login-panel{position:relative;z-index:2;display:flex;flex-direction:column;gap:24px;padding:clamp(28px,4vw,38px)}.login-hero-copy{position:relative;z-index:2;display:grid;gap:28px;align-content:center;min-height:440px;color:#fff}.login-hero-mark{display:flex;align-items:center;gap:14px;width:-moz-max-content;width:max-content;padding:0 0 24px;border-bottom:2px solid rgba(255,255,255,.34);text-transform:uppercase}.login-hero-mark img{width:clamp(46px,6vw,72px);height:clamp(46px,6vw,72px);flex:0 0 auto;filter:drop-shadow(0 8px 24px rgba(0,0,0,.28))}.login-hero-wordmark{display:inline-flex;align-items:baseline;gap:clamp(14px,2.2vw,24px);line-height:1}.login-hero-wordmark strong{color:var(--red-brand);font-size:clamp(3.1rem,7vw,5.8rem);font-weight:900;line-height:1;text-shadow:0 8px 28px rgba(0,0,0,.28)}.login-hero-wordmark span{color:#ffffffe0;font-size:clamp(1rem,2vw,1.34rem);font-weight:850;letter-spacing:.02em;line-height:1}.login-hero-copy h1{max-width:520px;color:#fff;font-size:clamp(2.45rem,5vw,4.4rem);line-height:.98}.login-hero-copy p{max-width:460px;margin-top:18px;color:#ffffffdb;font-size:1.04rem;font-weight:650;line-height:1.55}.login-brand-row{padding-bottom:18px;border-bottom:1px solid var(--border)}.login-copy{display:grid;gap:10px}.login-copy h2{max-width:430px;color:var(--gray-brand);font-size:1.72rem;letter-spacing:0;line-height:1.16}.login-copy p{max-width:460px;color:var(--text-muted);font-size:.98rem;font-weight:600;line-height:1.55}.login-actions{display:grid;gap:14px}.google-button-slot{min-height:52px}.google-button-slot>div{max-width:100%;transform:scale(1.15);transform-origin:left top}.login-primary-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;width:100%;border:1px solid var(--red-brand);border-radius:7px;background:var(--red-brand);color:#fff;cursor:pointer;font-size:.96rem;font-weight:850}.login-primary-action:hover,.login-primary-action:focus-visible{border-color:#a91f26;background:#a91f26;outline:none}.login-primary-action:disabled{cursor:wait;opacity:.72}.login-primary-action:disabled svg{animation:spin-clockwise .9s linear infinite}.login-access-note{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;color:var(--text-muted);font-size:.84rem;font-weight:690;line-height:1.35}.login-access-note svg{color:var(--red-brand)}.login-access-note a{color:var(--gray-brand);text-decoration:none}.login-access-note a:hover,.login-access-note a:focus-visible{color:var(--red-brand);outline:none;text-decoration:underline}@keyframes login-background-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.055)}}@keyframes spin-clockwise{to{transform:rotate(360deg)}}.entry-intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:var(--red-brand);color:#fff;opacity:1;transition:opacity .36s ease;pointer-events:none}.entry-intro.is-exiting{opacity:0}.entry-intro.is-blocking{pointer-events:auto}.entry-intro-brand{display:grid;place-items:center;gap:18px;animation:intro-brand-rise .52s ease both}.entry-intro-brand img{width:82px;height:82px;filter:brightness(0) invert(1)}.entry-intro-brand div{display:block;text-transform:uppercase}.entry-intro-brand strong{display:flex;align-items:center;gap:14px;font-size:clamp(3rem,8vw,5.4rem);font-weight:900;line-height:.9}.entry-intro-brand span{font-size:clamp(1.15rem,3vw,2rem);font-weight:300;letter-spacing:.08em;transform:translateY(.18em)}.entry-intro-spinner{position:absolute;bottom:clamp(42px,8vh,76px);width:36px;height:36px;border:3px solid rgba(255,255,255,.34);border-top-color:#fff;border-radius:999px;animation:spin-clockwise .9s linear infinite}@keyframes intro-brand-rise{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.login-shell:after,.entry-intro,.entry-intro-brand,.entry-intro-spinner,.login-primary-action:disabled svg{animation:none}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;align-items:safe center;justify-items:center;overflow-y:auto;overscroll-behavior:contain;padding:24px;background:#30302f6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-panel{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;width:min(520px,100%);padding:20px}.modal-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;background:#c2272f1a;color:var(--red-brand)}.modal-panel p{margin-top:8px;color:var(--text-muted);font-size:.94rem;line-height:1.5}.modal-actions{display:flex;grid-column:1 / -1;justify-content:flex-end;gap:10px;margin-top:4px}.notice-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;background:#30302f6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.notice-modal{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;width:min(440px,100%);border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 24px 80px #3c3c3b38;padding:22px}.notice-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#b7791f1f;color:var(--amber-warning)}.notice-modal.danger .notice-icon{background:#c2272f1a;color:var(--red-brand)}.notice-body h2{margin:0;color:var(--gray-brand);font-size:1.02rem;font-weight:820}.notice-body p{margin:6px 0 0;color:var(--text-muted);font-size:.92rem;font-weight:600;line-height:1.5}.notice-actions{display:flex;grid-column:1 / -1;justify-content:flex-end;gap:10px;margin-top:4px}.notice-close{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.notice-close:hover,.notice-close:focus-visible{background:var(--surface-muted);color:var(--text-main);outline:none}.status-strip{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.status-tile,.dashboard-panel,.file-shell{border:1px solid var(--border);background:#ffffffeb;box-shadow:0 18px 52px #3c3c3b12}.status-tile{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;min-height:78px;border-radius:8px;padding:14px}.status-tile svg{color:var(--text-muted)}.status-tile strong{display:block;margin-top:5px;color:var(--text-main);font-size:1.02rem;line-height:1.2}.status-tile.success svg,.status-tile.success strong{color:var(--green-success)}.status-tile.warning svg,.status-tile.warning strong{color:var(--amber-warning)}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.8fr);gap:18px}.dashboard-panel,.file-shell{border-radius:8px;padding:18px}.primary-panel{min-height:214px}.panel-heading svg{color:var(--red-brand)}.panel-heading button svg{color:currentColor}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.metric-tile{min-height:126px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.metric-tile strong{display:block;margin-top:12px;color:var(--gray-brand);font-size:2.1rem;line-height:1}.metric-tile p{margin-top:12px;color:var(--text-muted);font-size:.88rem;line-height:1.35}.state-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.state-chip{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;background:var(--surface-muted);color:var(--text-main);font-size:.84rem;font-weight:760}.state-chip.process{background:#2563eb1c;color:var(--blue-process)}.state-chip.review{background:#6d5bd01c;color:var(--violet-review)}.state-chip.warning{background:#b7791f21;color:var(--amber-warning)}.state-chip.danger{background:#c2272f1f;color:var(--red-brand)}.state-chip.success{background:#2f855a1f;color:var(--green-success)}.state-chip.delivered{background:#2767491f;color:var(--green-delivered)}.file-shell{display:flex;flex-direction:column;gap:18px;min-height:264px}.empty-state{display:grid;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:15px;min-height:164px;border:1px dashed rgba(60,60,59,.3);border-radius:8px;background:#f0f0ef8f;padding:20px}.empty-state svg{color:var(--red-brand)}.empty-state p{max-width:720px;margin-top:6px;color:var(--text-muted);font-size:.94rem;line-height:1.5}.iam-shell{display:grid;gap:18px}.iam-hero,.iam-panel,.iam-empty{border:1px solid var(--border);border-radius:8px;background:#ffffffed;box-shadow:0 18px 52px #3c3c3b12}.iam-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.iam-hero p,.iam-empty p{max-width:720px;margin-top:7px;color:var(--text-muted);font-size:.93rem;line-height:1.45}.iam-hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:9px;min-width:330px}.iam-hero-metrics span{display:grid;gap:3px;min-height:62px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);font-size:.76rem;font-weight:780;text-transform:uppercase}.iam-hero-metrics strong{color:var(--gray-brand);font-size:1.38rem;line-height:1}.iam-grid{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(420px,1.18fr);gap:18px}.iam-panel{padding:18px}.iam-form-row{display:grid;grid-template-columns:minmax(210px,1fr) minmax(160px,220px) auto;gap:10px;margin-top:16px}.role-create-row{grid-template-columns:minmax(180px,.45fr) minmax(260px,1fr) auto}.iam-form-row input,.iam-form-row select,.role-card input,.user-row select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);padding:0 10px;font:inherit;font-size:.9rem}.iam-form-row input:focus,.iam-form-row select:focus,.role-card input:focus,.user-row select:focus{border-color:#c2272f7a;outline:3px solid rgba(194,39,47,.11)}.user-table{display:grid;gap:8px;margin-top:16px}.user-row{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:10px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.user-row.is-selected{border-color:#c2272f6b;background:#c2272f0e}.user-pick{display:inline-grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;min-height:36px;border:0;background:transparent;color:var(--gray-brand);cursor:pointer;padding:0 4px;text-align:left}.user-pick span{overflow:hidden;font-size:.88rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.override-list{display:grid;gap:7px;max-height:520px;margin-top:16px;overflow:auto;padding-right:4px}.override-row{display:grid;grid-template-columns:minmax(0,1fr) 82px 32px 32px;gap:8px;align-items:center;min-height:48px;padding:8px;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.override-row strong,.override-row span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.override-row strong{color:var(--text-main);font-size:.84rem}.override-row span{margin-top:2px;color:var(--text-muted);font-size:.72rem;font-weight:700}.effective-chip{justify-self:end;min-width:76px;min-height:28px;border-radius:999px;padding:6px 9px;background:var(--surface-muted);color:var(--text-muted);text-align:center;text-transform:uppercase}.effective-chip.on{background:#2f855a1f;color:var(--green-success)}.mini-action{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--gray-brand);cursor:pointer;font-weight:850}.mini-action.is-on{border-color:#2f855a5c;background:#2f855a1f;color:var(--green-success)}.mini-action.danger.is-on{border-color:#c2272f57;background:#c2272f1a;color:var(--red-brand)}.mini-action:disabled,.permission-pill:disabled,.role-save:disabled{cursor:not-allowed;opacity:.55}.role-matrix{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:14px;margin-top:16px}.role-card{display:flex;flex-direction:column;gap:12px;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:14px}.role-card.is-protected{background:linear-gradient(180deg,#3c3c3b0b,#fffffff0)}.role-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.role-card-head span{display:inline-flex;margin-top:5px;color:var(--text-muted);font-size:.74rem;font-weight:800;text-transform:uppercase}.role-card-head svg{color:var(--red-brand)}.permission-groups{display:grid;gap:10px}.permission-group>span{display:block;color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.permission-group>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.permission-pill{min-height:26px;border:1px solid var(--border);border-radius:999px;background:var(--surface-muted);color:var(--text-muted);cursor:pointer;padding:0 9px;font-size:.72rem;font-weight:720}.permission-pill.is-on{border-color:#2f855a47;background:#2f855a1f;color:var(--green-success)}.permission-pill.critical{border-color:#c2272f2e;color:var(--red-brand)}.role-save{align-self:flex-start;margin-top:auto}.audit-panel{min-height:172px}.audit-list{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:10px;margin-top:16px}.audit-list article{min-height:96px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px}.audit-list strong,.audit-list span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-list strong{color:var(--gray-brand);font-size:.86rem}.audit-list span{margin-top:5px;color:var(--text-muted);font-size:.76rem;font-weight:720}.audit-list p{margin-top:8px;color:var(--text-muted);font-size:.84rem;line-height:1.35}.iam-empty{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px}.iam-empty svg{color:var(--red-brand)}.empty-state.compact{min-height:92px}.activity-shell,.search-shell{display:grid;gap:18px}.activity-hero,.search-hero,.activity-event,.search-group,.search-empty{border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.activity-hero,.search-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.activity-hero p,.search-hero p{max-width:760px;margin-top:7px;color:var(--text-muted);font-size:.93rem;line-height:1.45}.activity-hero-actions{display:flex;align-items:center;gap:9px}.activity-hero-actions article,.search-meter{display:grid;min-width:104px;min-height:62px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.activity-hero-actions article strong,.search-meter strong{color:var(--gray-brand);font-size:1.32rem;line-height:1}.activity-timeline{display:grid;gap:10px}.activity-event{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:14px}.activity-event-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;background:#c2272f1a;color:var(--red-brand)}.activity-event-head,.activity-event-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.activity-event-head span,.activity-event-meta span{color:var(--text-muted);font-size:.78rem;font-weight:730}.activity-event p{margin-top:6px;color:var(--text-muted);font-size:.9rem;line-height:1.45}.activity-event-meta{margin-top:10px;justify-content:flex-start;flex-wrap:wrap}.activity-event-meta span{display:inline-flex;min-height:26px;align-items:center;border-radius:999px;background:var(--surface-muted);padding:0 10px}.search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12;padding:16px}.field-block{display:grid;gap:6px}.field-block span{color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.field-block input{width:100%;min-height:42px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.94rem;padding:0 12px}.field-block input:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.11)}.search-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.search-group{min-width:0;padding:14px}.search-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--border)}.search-group-head div{display:inline-flex;align-items:center;gap:9px}.search-group-head svg{color:var(--red-brand)}.search-group-head span{display:grid;min-width:30px;height:30px;place-items:center;border-radius:999px;background:#c2272f1a;color:var(--red-brand);font-size:.8rem;font-weight:850}.search-result-list{display:grid;gap:8px;margin-top:12px}.search-result-card,.search-result-empty{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px}.search-result-card div{display:grid;gap:3px}.search-result-card strong{overflow:hidden;color:var(--text-main);font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}.search-result-card span,.search-result-card p,.search-result-card small,.search-result-empty{color:var(--text-muted);font-size:.8rem;line-height:1.38}.search-result-card p{margin-top:8px}.search-result-card small{display:block;margin-top:9px;font-weight:760;text-transform:uppercase}.search-empty{display:grid;grid-column:1 / -1;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:14px;min-height:150px;padding:18px}.search-empty svg{color:var(--red-brand)}.search-empty p{margin-top:7px;color:var(--text-muted);font-size:.92rem;line-height:1.45}.task-shell{display:grid;gap:18px}.task-hero,.task-main-panel,.task-side-panel{border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.task-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.task-hero-actions{display:flex;align-items:center;gap:9px}.task-hero-actions article{display:grid;min-width:104px;min-height:62px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.task-hero-actions article strong{color:var(--gray-brand);font-size:1.32rem;line-height:1}.task-hero-actions article.is-danger strong{color:var(--red-brand)}.task-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.task-main-panel,.task-side-panel{min-width:0;padding:18px}.task-toolbar{display:grid;gap:12px}.task-toolbar-info{min-width:0}.task-filter-stack{display:grid;gap:8px;justify-items:end;min-width:min(680px,100%)}.segmented-control{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.segmented-control button{min-height:32px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-muted);cursor:pointer;padding:0 10px;font-size:.78rem;font-weight:780}.segmented-control.compact button{min-height:30px}.segmented-control button:hover,.segmented-control button:focus-visible,.segmented-control button.is-active{border-color:#c2272f5c;background:#c2272f14;color:var(--red-brand);outline:none}.task-board-list{display:grid;gap:10px;margin-top:16px}.task-board-head,.task-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(96px,.62fr) 88px 94px minmax(96px,.56fr);gap:8px;align-items:center}.task-board-head{min-height:34px;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.column-hint{display:inline-flex;align-items:center;gap:4px;min-width:0}.column-hint-anchor{position:relative;display:inline-flex;align-items:center}.column-hint-trigger{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);cursor:help;transition:color .15s ease,background .15s ease}.column-hint-trigger:hover,.column-hint-trigger:focus-visible{color:var(--red-brand);background:#c2272f1a;outline:none}.column-hint-tooltip{position:absolute;top:calc(100% + 8px);left:0;z-index:60;width:-moz-max-content;width:max-content;max-width:240px;padding:8px 10px;border-radius:8px;background:var(--gray-brand);color:#fff;font-size:.72rem;font-weight:600;line-height:1.4;letter-spacing:0;text-transform:none;box-shadow:0 8px 24px #0000002e;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease}.column-hint-tooltip:before{content:"";position:absolute;bottom:100%;left:8px;border:5px solid transparent;border-bottom-color:var(--gray-brand)}.column-hint-anchor.is-end .column-hint-tooltip{left:auto;right:0}.column-hint-anchor.is-end .column-hint-tooltip:before{left:auto;right:8px}.column-hint-trigger:hover+.column-hint-tooltip,.column-hint-trigger:focus-visible+.column-hint-tooltip{opacity:1;visibility:visible}.task-row{min-height:84px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px 14px}.task-row:hover{border-color:#3c3c3b3d}.task-title-cell,.task-project-cell,.task-date-cell,.task-status-cell{display:grid;gap:5px;min-width:0}.verify-counter{display:inline-flex;align-items:center;gap:4px;width:-moz-fit-content;width:fit-content;border-radius:6px;background:#6d5bd01f;color:var(--violet-review);padding:2px 7px;font-size:.7rem;font-weight:800}.verify-counter.is-complete{background:#2767491f;color:var(--green-delivered)}.task-verify-panel{grid-column:1 / -1;display:grid;gap:12px;margin-top:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);padding:14px}.verify-picker{display:grid;gap:12px;margin-top:2px;padding-top:12px;border-top:1px solid var(--border)}.verify-picker-title{color:var(--gray-brand);font-size:.92rem;font-weight:820}.verify-group{display:grid;gap:6px}.verify-group-title{color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.task-attach-field{display:grid;gap:8px}.task-attach-field>span{color:var(--text-muted);font-size:.82rem;font-weight:700}.task-attach-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.task-attach-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px 4px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface-muted)}.task-attach-name{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.task-attach-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.task-attach-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:2px 9px;border-radius:999px;background:#3c3c3b0f;color:var(--gray-brand);font-size:.72rem;font-weight:600;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-attach-chip:hover{background:#c2272f17;color:var(--red-brand)}.task-attach-actions{display:flex;flex-wrap:wrap;gap:8px}.photo-pdf-card{max-width:560px}.photo-pdf-card label span{display:block;margin-bottom:4px;color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.photo-pdf-card input[type=text],.photo-pdf-card>label>input{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.9rem;padding:0 10px}.photo-pdf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;max-height:320px;overflow-y:auto;padding:2px}.photo-pdf-thumb{position:relative;display:grid;gap:5px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);padding:6px}.photo-pdf-thumb img{width:100%;height:82px;-o-object-fit:cover;object-fit:cover;border-radius:6px;background:var(--surface)}.photo-pdf-page{position:absolute;top:10px;left:10px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--gray-brand);color:#fff;font-size:.66rem;font-weight:800;line-height:18px;text-align:center}.photo-pdf-thumb-actions{display:flex;align-items:center;justify-content:space-between}.photo-pdf-thumb-actions button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:24px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-muted);cursor:pointer}.photo-pdf-thumb-actions button:disabled{opacity:.4;cursor:not-allowed}.photo-pdf-remove:hover:not(:disabled){border-color:#c2272f66;color:var(--red-brand)}.photo-pdf-empty{padding:4px 0;color:var(--text-muted);font-size:.84rem}.photo-pdf-error{color:var(--red-brand);font-size:.82rem;font-weight:700}.verify-user-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px}.verify-user-option{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:6px 9px;cursor:pointer}.verify-picker .verify-name{display:grid;min-width:0;gap:1px;color:var(--text-main);font-size:.78rem;font-weight:700;line-height:1.2;text-transform:none}.verify-picker .verify-name small{overflow:hidden;color:var(--text-muted);font-size:.66rem;font-weight:700;text-transform:none;text-overflow:ellipsis;white-space:nowrap}.verify-user-option input[type=checkbox]{width:15px;height:15px;min-height:0;flex:0 0 auto;margin:0;accent-color:var(--red-brand);cursor:pointer}.verify-panel-actions{display:flex;justify-content:flex-end;gap:10px}.task-title-cell strong,.task-project-cell strong{overflow:hidden;color:var(--gray-brand);font-size:.9rem;font-weight:680;text-overflow:ellipsis;white-space:nowrap}.task-title-cell p,.task-project-cell span,.task-date-cell small,.task-muted-action{overflow:hidden;color:var(--text-muted);font-size:.78rem;font-weight:500;line-height:1.35;text-overflow:ellipsis}.task-title-cell p,.task-project-cell span,.task-date-cell small{white-space:nowrap}.publication-chip{justify-self:start;min-height:22px;border-radius:999px;padding:4px 9px;background:var(--surface-muted);color:var(--text-muted);font-size:.66rem;font-weight:760;letter-spacing:.02em;text-transform:uppercase}.publication-chip.published{background:#2f855a1f;color:var(--green-success)}.task-action-cell{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.task-action-cell .primary-action,.task-action-cell .secondary-action{min-height:34px;padding:0 10px;font-size:.8rem}.secondary-action.is-active{border-color:#c2272f61;background:#c2272f14;color:var(--red-brand)}.secondary-action.warning{border-color:#b7791f61;color:var(--amber-warning)}.secondary-action.danger{border-color:#c2272f57;color:var(--red-brand)}.secondary-action.warning:hover,.secondary-action.warning:focus-visible{background:#b7791f14;color:var(--amber-warning)}.secondary-action.danger:hover,.secondary-action.danger:focus-visible{background:#c2272f14;color:var(--red-brand)}.task-row.is-expanded{align-items:start;background:linear-gradient(90deg,#c2272f0e,#fffffffc)}.task-delivery-panel{display:grid;grid-column:1 / -1;gap:12px;border-top:1px solid var(--border);margin-top:2px;padding-top:12px}.delivery-panel-heading,.delivery-submit-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.delivery-panel-heading div{display:grid;gap:3px}.delivery-panel-heading strong{color:var(--gray-brand);font-size:1rem;font-weight:840}.delivery-panel-heading>span,.delivery-submit-row>span{color:var(--text-muted);font-size:.8rem;font-weight:760}.delivery-grid{display:grid;grid-template-columns:minmax(140px,.55fr) minmax(220px,1fr) auto;align-items:end;gap:10px}.delivery-grid label{display:grid;gap:6px}.delivery-grid label>span{color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.delivery-grid input,.delivery-grid select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--gray-brand);padding:0 10px;font-weight:720}.delivery-file-actions,.delivery-submit-row>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.delivery-file-actions .secondary-action,.delivery-submit-row .secondary-action,.delivery-submit-row .primary-action{min-height:38px;font-size:.82rem}.delivery-modal-body{display:grid;gap:14px;max-height:62vh;overflow-y:auto}.delivery-form{display:grid;gap:12px}.delivery-form label{display:grid;gap:6px}.delivery-form label>span{color:var(--text-muted);font-size:.82rem;font-weight:700}.delivery-form select{min-height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.9rem;padding:0 10px}.delivery-upload{display:grid;gap:8px;padding:12px;border:1px dashed var(--border);border-radius:10px;background:var(--surface-muted)}.delivery-upload-title{color:var(--text-muted);font-size:.82rem;font-weight:700}.delivery-upload-hint{color:var(--text-muted);font-size:.8rem}.delivery-history{display:grid;gap:10px}.delivery-history-card{display:grid;gap:9px;border:1px solid rgba(60,60,59,.12);border-radius:8px;background:#ffffffc2;padding:12px}.delivery-history-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.delivery-history-main div{display:grid;min-width:0;gap:2px}.delivery-history-main strong{color:var(--gray-brand);font-size:.94rem;font-weight:850}.delivery-history-main span:not(.state-chip),.delivery-history-card p{color:var(--text-muted);font-size:.78rem;font-weight:710}.delivery-reason{border-left:3px solid rgba(194,39,47,.42);padding-left:9px}.delivery-links{display:flex;flex-wrap:wrap;gap:8px}.delivery-links a{display:inline-flex;align-items:center;gap:6px;min-height:30px;border:1px solid rgba(39,103,73,.22);border-radius:7px;background:#2f855a14;color:var(--green-delivered);padding:0 10px;font-size:.76rem;font-weight:820;text-decoration:none}.delivery-review-box{display:grid;gap:9px;border-top:1px solid rgba(60,60,59,.1);padding-top:10px}.delivery-review-box label{display:grid;gap:6px}.delivery-review-box label span{color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.delivery-review-box input{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--gray-brand);padding:0 10px;font-weight:720}.delivery-review-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.delivery-review-actions .secondary-action,.delivery-review-actions .primary-action{min-height:36px;font-size:.8rem}.task-form{display:grid;gap:11px;margin-top:16px}.task-form label{display:grid;gap:6px}.task-form label span{color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.task-form input,.task-form select,.task-form textarea{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.9rem;padding:0 10px}.task-form textarea{min-height:92px;padding:9px 10px;resize:vertical}.task-form input:focus,.task-form select:focus,.task-form textarea:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.11)}.task-side-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}.task-side-metrics article{display:grid;min-height:68px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.task-side-metrics strong{color:var(--gray-brand);font-size:1.28rem;line-height:1}.task-side-metrics span{color:var(--text-muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.task-kpi-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.kpi-card{display:grid;gap:7px;align-content:start;min-height:96px;border:1px solid var(--border);border-radius:10px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b0f;cursor:pointer;padding:14px 16px;text-align:left;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.kpi-card:before{content:"";display:block;width:26px;height:4px;border-radius:999px;background:var(--text-muted);opacity:.45}.kpi-card.warning:before{background:var(--amber-warning);opacity:1}.kpi-card.danger:before{background:var(--red-brand);opacity:1}.kpi-card.process:before{background:var(--blue-process);opacity:1}.kpi-card.review:before{background:var(--violet-review);opacity:1}.kpi-card.success:before{background:var(--green-success);opacity:1}.kpi-card strong{color:var(--gray-brand);font-size:1.92rem;font-weight:850;line-height:1}.kpi-card.danger strong{color:var(--red-brand)}.kpi-card span{color:var(--text-muted);font-size:.82rem;font-weight:740;line-height:1.25}.kpi-card:hover,.kpi-card:focus-visible{border-color:#c2272f4d;box-shadow:0 22px 60px #3c3c3b1f;outline:none;transform:translateY(-2px)}.kpi-card.is-active{border-color:#c2272f80;box-shadow:0 0 0 1px #c2272f47,0 18px 52px #3c3c3b14}@media(max-width:1180px){.task-kpi-row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.task-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.task-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-filter-bar>.combo-box{flex:0 0 auto;width:178px;max-width:100%}.task-filter-bar .combo-input{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.86rem;padding:0 34px 0 12px}.task-filter-bar .combo-input::-moz-placeholder{color:var(--text-muted)}.task-filter-bar .combo-input::placeholder{color:var(--text-muted)}.task-filter-bar .combo-input:focus{outline:none;border-color:var(--red-brand)}.filter-search{display:inline-flex;align-items:center;gap:8px;flex:1 1 260px;min-width:200px;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 10px}.filter-search svg{flex:0 0 auto;color:var(--text-muted)}.filter-search input{width:100%;border:0;background:transparent;color:var(--text-main);font:inherit;font-size:.9rem;outline:none;padding:0}.filter-search:focus-within{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.1)}.filter-search-clear{display:grid;place-items:center;width:22px;height:22px;flex:0 0 auto;border:0;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);cursor:pointer}.filter-search-clear:hover{color:var(--red-brand)}.filter-select{position:relative;display:inline-flex;align-items:center}.filter-select select{min-height:38px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);cursor:pointer;font:inherit;font-size:.86rem;font-weight:720;padding:0 32px 0 12px}.filter-select svg{position:absolute;right:10px;color:var(--text-muted);pointer-events:none}.filter-select select:hover{border-color:#c2272f4d}.filter-select select:focus-visible{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.1)}.filter-clear{display:inline-flex;align-items:center;gap:6px;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);cursor:pointer;padding:0 12px;font-size:.84rem;font-weight:740}.filter-clear:hover{border-color:#c2272f52;color:var(--red-brand)}.form-modal{display:grid;gap:16px;width:min(560px,100%);border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 32px 90px #3c3c3b3d;padding:22px}.form-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.form-modal-head h2{font-size:1.3rem}.form-modal .task-form{margin-top:0}.form-modal-hint{color:var(--text-muted);font-size:.84rem;line-height:1.45}.form-modal-actions{display:flex;justify-content:flex-end;gap:10px}.clients-shell{display:grid;gap:18px}.clients-hero,.operations-panel,.records-panel{border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.clients-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.clients-hero p{max-width:760px;margin-top:7px;color:var(--text-muted);font-size:.93rem;line-height:1.45}.clients-hero-actions{display:flex;align-items:center;gap:9px}.clients-hero-actions article{display:grid;min-width:92px;min-height:62px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.clients-hero-actions strong{color:var(--gray-brand);font-size:1.32rem;line-height:1}.clients-hero-actions span{color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.clients-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);gap:18px}.operations-panel,.records-panel{padding:18px}.dense-form{display:grid;gap:11px;margin-top:16px}.dense-form.project-create-grid{grid-template-columns:1fr 1fr;gap:14px 18px;align-items:start}.dense-form.project-create-grid>.span-2{grid-column:1 / -1}@media(max-width:720px){.dense-form.project-create-grid{grid-template-columns:1fr}}.dense-form label{display:grid;gap:6px}.dense-form label span{color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.dense-form input,.dense-form select,.dense-form textarea{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;padding:8px 10px}.dense-form textarea{resize:vertical}.dense-form input:focus,.dense-form select:focus,.dense-form textarea:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.11)}.form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.records-layout{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(440px,1.1fr);gap:18px}.records-layout.projects-first{grid-template-columns:minmax(440px,1.1fr) minmax(340px,.9fr)}.records-layout.projects-first .records-panel:first-child{order:2}.records-layout.projects-first .records-panel:last-child{order:1}.record-list{display:grid;gap:11px;margin-top:16px}.client-card,.project-card{display:grid;gap:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:14px}.client-card h3,.project-card h3{margin-top:7px;color:var(--gray-brand);font-size:1.02rem}.client-card p,.project-card p{margin-top:5px;color:var(--text-muted);font-size:.87rem}.drive-link-row,.folder-chip-row{display:flex;flex-wrap:wrap;gap:8px}.drive-link-row a,.folder-chip-row a{display:inline-flex;align-items:center;gap:6px;min-height:30px;border:1px solid var(--border);border-radius:7px;color:var(--gray-brand);font-size:.78rem;font-weight:760;padding:0 9px;text-decoration:none}.drive-link-row a:hover,.folder-chip-row a:hover{border-color:#c2272f61;color:var(--red-brand)}.compact-action{justify-self:start;min-height:32px;padding:0 10px}.project-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-card-top span{color:var(--text-muted);font-size:.74rem;font-weight:780;text-transform:uppercase}.template-preview,.project-operational-grid,.payments-panel,.technical-fields-panel{border-top:1px solid var(--border);padding-top:12px}.template-preview{display:grid;gap:8px}.template-preview>span,.project-summary-block>span,.technical-fields-head,.template-editor-head span{color:var(--text-muted);font-size:.72rem;font-weight:780;text-transform:uppercase}.template-preview div,.project-summary-block{display:grid;gap:3px}.template-preview strong,.project-summary-block strong{color:var(--gray-brand);font-size:.92rem}.template-payments{display:grid;gap:9px;border:1px dashed var(--border);border-radius:8px;padding:12px}.template-payments-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.template-payments-head span{color:var(--text-muted);font-size:.72rem;font-weight:780;text-transform:uppercase}.template-payment-add{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--gray-brand);font-size:.76rem;font-weight:700;padding:5px 9px;cursor:pointer}.template-payment-add:hover,.template-payment-add:focus-visible{border-color:#c2272f73;color:var(--red-brand)}.template-payments-hint{color:var(--text-muted);font-size:.78rem;line-height:1.4}.template-payments-empty{color:var(--text-muted);font-size:.82rem;font-style:italic}.template-payments-list{display:grid;gap:7px}.template-payment-row{display:flex;align-items:center;gap:8px}.template-payment-index{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#c2272f1a;color:var(--red-brand);font-size:.74rem;font-weight:780}.template-payment-row input{flex:1}.template-payments-folders{color:var(--text-muted);font-size:.8rem;line-height:1.4}.template-payments-folders strong{color:var(--gray-brand)}.project-operational-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.payments-panel{display:grid;gap:10px}.payments-panel.locked{color:var(--text-muted)}.payments-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.payments-head div{display:grid;gap:3px}.payments-head span{color:var(--text-muted);font-size:.72rem;font-weight:780;text-transform:uppercase}.payments-head strong{color:var(--gray-brand);font-size:1.04rem}.payment-progress{overflow:hidden;height:8px;border:1px solid rgba(47,133,90,.18);border-radius:999px;background:var(--surface-muted)}.payment-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green-success),rgba(47,133,90,.68))}.payment-list{display:grid;gap:8px}.payment-row{display:grid;gap:8px;border:1px solid var(--surface-muted);border-radius:8px;background:#f7f7f6b8;padding:10px}.payment-row.is-void{opacity:.76}.payment-main{display:grid;grid-template-columns:86px minmax(0,1fr);align-items:start;gap:9px}.payment-main strong{display:block;min-width:0;overflow:hidden;color:var(--gray-brand);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.payment-main p,.payment-empty{margin-top:3px;color:var(--text-muted);font-size:.78rem;font-weight:680;line-height:1.35}.payment-row-actions,.payment-add-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.payment-row-actions>input,.payment-add-row>input{flex:1 1 130px;min-width:0;min-height:34px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.82rem;padding:6px 9px}.payment-amount-input{flex:0 0 120px!important;font-variant-numeric:tabular-nums}.payment-row-actions>input:focus,.payment-add-row>input:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.11)}.payment-amount{margin-left:8px;padding:1px 8px;border-radius:999px;background:#38763d1f;color:#2f6b34;font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.money-fields{display:grid;gap:12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.commission-field-label{display:block;margin-bottom:6px;color:var(--text-muted);font-size:.82rem;font-weight:700}.commission-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.commission-row select,.commission-row input{min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.88rem;padding:0 10px}.commission-percent-input{width:84px;font-variant-numeric:tabular-nums}.commission-preview{color:var(--green-success);font-size:.9rem;font-weight:800;font-variant-numeric:tabular-nums}.danger-action{border-color:#c2272f47;color:var(--red-brand)}.technical-fields-panel{display:grid;gap:10px}.technical-fields-head{display:inline-flex;align-items:center;gap:7px}.technical-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:9px}.technical-fields-grid label{display:grid;gap:5px}.technical-fields-grid label span{color:var(--text-muted);font-size:.72rem;font-weight:760}.technical-fields-grid label div{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:6px}.technical-fields-grid input,.technical-field-create input,.template-editor input,.template-editor textarea{width:100%;min-height:34px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;padding:7px 9px}.technical-fields-grid input:focus,.technical-field-create input:focus,.template-editor input:focus,.template-editor textarea:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.11)}.compact-icon{min-height:34px;min-width:34px}.settings-stack,.drive-shell,.catalog-shell{display:grid;gap:18px}.catalog-hero,.catalog-shell .operations-panel{border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.catalog-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.catalog-hero p{max-width:620px;margin-top:7px;color:var(--text-muted);font-size:.9rem;line-height:1.45}.catalog-metrics{display:flex;align-items:center;gap:9px;flex:0 0 auto}.metric-tile{display:flex;align-items:center;gap:10px;min-height:58px;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:8px 14px}.metric-tile strong{color:var(--green-success);font-size:1.7rem;font-weight:800;line-height:1}.metric-tile span{max-width:78px;color:var(--text-muted);font-size:.72rem;font-weight:780;line-height:1.2;text-transform:uppercase}.catalog-grid{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(360px,1.2fr);gap:18px}.technical-field-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:16px}.technical-field-list{display:grid;gap:8px;margin-top:12px}.technical-field-list article{display:grid;grid-template-columns:76px minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:42px;border-bottom:1px solid var(--surface-muted)}.technical-field-list strong{min-width:0;overflow:hidden;color:var(--gray-brand);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.template-library{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:12px;margin-top:16px}.template-editor{display:grid;gap:11px;min-width:0;border-top:3px solid rgba(47,133,90,.5);background:var(--surface);padding:12px 0 0}.template-editor.is-inactive{border-top-color:var(--border);opacity:.78}.template-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.template-editor-head strong{display:block;margin-top:4px;color:var(--gray-brand)}.template-editor-grid{display:grid;gap:8px}.template-editor label{display:grid;gap:5px}.template-editor label span{color:var(--text-muted);font-size:.72rem;font-weight:780;text-transform:uppercase}.template-editor textarea{resize:vertical}.drive-hero,.drive-panel{border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.drive-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.drive-hero p,.drive-test-box p,.drive-empty p{max-width:760px;margin-top:7px;color:var(--text-muted);font-size:.93rem;line-height:1.45}.drive-status-grid{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:9px;min-width:330px}.drive-status-grid span{display:grid;gap:3px;min-height:62px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);font-size:.76rem;font-weight:780;text-transform:uppercase}.drive-status-grid strong{color:var(--amber-warning);font-size:1rem;line-height:1}.drive-status-grid .is-ok strong{color:var(--green-success)}.drive-grid{display:grid;grid-template-columns:minmax(420px,.95fr) minmax(360px,1.05fr);gap:18px}.drive-panel{padding:18px}.drive-empty{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px}.drive-empty svg,.drive-panel .panel-heading svg{color:var(--red-brand)}.drive-account-card{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:12px;min-height:86px;margin-top:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:13px}.drive-account-card svg{color:var(--green-success)}.drive-account-card span,.drive-account-card small,.root-card-head span{display:block;overflow:hidden;color:var(--text-muted);font-size:.74rem;font-weight:800;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.drive-account-card strong,.root-card-head strong{display:block;overflow:hidden;margin-top:4px;color:var(--gray-brand);font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.drive-account-card small{margin-top:5px;text-transform:none}.drive-actions-row,.drive-code-row,.drive-save-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.drive-code-row{display:grid;grid-template-columns:minmax(220px,1fr) auto}.drive-code-row input,.root-form input,.root-form select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);padding:0 10px;font:inherit;font-size:.9rem}.drive-code-row input:focus,.root-form input:focus,.root-form select:focus{border-color:#c2272f7a;outline:3px solid rgba(194,39,47,.11)}.drive-muted{display:inline-flex;align-items:center;min-height:38px;color:var(--text-muted);font-size:.86rem;font-weight:700;line-height:1.35}.drive-test-box{display:grid;gap:10px;margin-top:16px;border:1px dashed rgba(60,60,59,.28);border-radius:8px;background:#f0f0ef7a;padding:14px}.drive-test-box .primary-action{justify-self:start}.viewer-share-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.viewer-share-list span:not(.drive-muted){display:inline-flex;align-items:center;gap:6px;min-height:30px;border-radius:999px;background:#2f855a1f;color:var(--green-success);padding:0 10px;font-size:.78rem;font-weight:780}.root-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px;margin-top:16px}.root-card{display:grid;gap:12px;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:13px}.root-card-head{display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:10px}.root-form{display:grid;gap:8px}.explorer-shell{display:grid;gap:18px}.logbook-modal{display:flex;flex-direction:column;gap:14px;width:min(1040px,100%);max-height:calc(100vh - 48px);border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 32px 90px #3c3c3b3d;padding:20px 22px;overflow-y:auto}.logbook-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.logbook-modal-title{display:grid;gap:3px;min-width:0}.logbook-modal-title h2{font-size:1.3rem}.logbook-modal-title p{color:var(--text-muted);font-size:.9rem}.logbook-back{display:inline-flex;align-items:center;gap:3px;width:-moz-max-content;width:max-content;margin-bottom:4px;padding:3px 9px 3px 5px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--gray-brand);font-size:.8rem;font-weight:700;cursor:pointer}.logbook-back:hover,.logbook-back:focus-visible{border-color:#c2272f73;color:var(--red-brand);outline:none}.logbook-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid var(--border);padding-top:12px}.logbook-toolbar-info{display:inline-flex;align-items:center;gap:10px}.logbook-toolbar-info .eyebrow{color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.logbook-toolbar-actions{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}.logbook-lock-anchor{position:relative;display:inline-flex;align-items:center}.logbook-lock{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-muted);font-size:.8rem;font-weight:720;padding:4px 11px;cursor:help}.logbook-lock.is-process{border-color:#c2272f59;background:#c2272f14;color:var(--red-brand)}.logbook-lock.is-warning{border-color:#d6891066;background:#d689101a;color:#9a6207}.logbook-lock:hover+.column-hint-tooltip,.logbook-lock:focus-visible+.column-hint-tooltip{opacity:1;visibility:visible}.logbook-editor{flex:1 1 auto;width:100%;min-height:220px;border:1px solid var(--border);border-radius:8px;background:#f0f0efd9;color:var(--text-main);font:inherit;font-size:.94rem;line-height:1.55;padding:15px;resize:none}.logbook-editor:not(:disabled){background:#fff}.logbook-editor:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.11)}.logbook-editor:disabled{color:var(--text-main);cursor:default}.logbook-footer{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px}.logbook-muted{color:var(--text-muted);font-size:.86rem;line-height:1.4}.logbook-history-open{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:5px 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--gray-brand);font-size:.8rem;font-weight:720;cursor:pointer}.logbook-history-open:hover,.logbook-history-open:focus-visible{border-color:#c2272f73;color:var(--red-brand);outline:none}.logbook-history-backdrop{z-index:70}.logbook-history-modal{display:flex;flex-direction:column;gap:14px;width:min(880px,100%);max-height:calc(100vh - 48px);border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 32px 90px #3c3c3b3d;padding:20px 22px;overflow:hidden}.logbook-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding-bottom:12px}.logbook-history-head h2{font-size:1.2rem}.logbook-history-head-actions{display:inline-flex;align-items:center;gap:8px}.logbook-version-table{display:grid;flex:1 1 auto;min-height:0;padding-bottom:4px;overflow-y:auto}.logbook-version-head,.logbook-version-row{display:grid;grid-template-columns:58px 130px minmax(120px,.8fr) minmax(0,2fr);gap:12px;align-items:center}.logbook-version-head{position:sticky;top:0;z-index:1;min-height:28px;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.66rem;font-weight:820;letter-spacing:.03em;text-transform:uppercase}.logbook-version-row{min-height:32px;border-bottom:1px solid rgba(60,60,59,.08)}.logbook-version-row:last-child{border-bottom:0}.logbook-version-row strong,.logbook-version-link{color:var(--red-brand);font-size:.8rem;font-weight:800}.logbook-version-link{text-decoration:none}.logbook-version-link:hover,.logbook-version-link:focus-visible{text-decoration:underline;outline:none}.logbook-version-row span{overflow:hidden;color:var(--text-muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.explorer-hero,.explorer-main-panel,.explorer-side-panel{border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.explorer-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.explorer-hero p,.explorer-detail-list p{margin-top:7px;color:var(--text-muted);font-size:.9rem;line-height:1.45}.explorer-project-picker{display:grid;grid-template-columns:minmax(260px,360px) 38px;gap:8px}.explorer-project-picker select,.explorer-actions input,.node-actions input,.node-actions select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.88rem;padding:0 10px}.explorer-project-picker select:focus,.explorer-actions input:focus,.node-actions input:focus,.node-actions select:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.11)}.explorer-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.explorer-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.explorer-main-panel,.explorer-side-panel{min-width:0;padding:18px}.explorer-toolbar{display:grid;gap:14px}.breadcrumb-strip{display:flex;flex-wrap:wrap;gap:6px;min-height:36px;align-items:center}.breadcrumb-node{display:inline-flex;align-items:center;gap:6px;min-height:32px;max-width:260px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--gray-brand);cursor:pointer;padding:0 9px;font-size:.82rem;font-weight:760}.breadcrumb-node span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-node.is-current{border-color:#c2272f4d;background:#c2272f14;color:var(--red-brand)}.explorer-actions{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;gap:9px;align-items:center}.explorer-sync-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding-top:12px;border-top:1px solid var(--border)}.label-action{cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.explorer-table{display:grid;gap:7px;margin-top:16px}.explorer-table-head,.explorer-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(96px,.5fr) 80px 112px minmax(220px,250px);gap:10px;align-items:center;min-width:0}.explorer-table-head{min-height:34px;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.explorer-row{min-height:54px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:8px}.explorer-row.is-folder{background:linear-gradient(90deg,#c2272f0b,#fffffff5 42%)}.node-main{display:inline-grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:9px;min-width:0;border:0;background:transparent;color:var(--gray-brand);padding:0;text-align:left;text-decoration:none}button.node-main{cursor:pointer}.node-main svg{color:var(--red-brand)}.node-main strong,.node-kind,.explorer-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-main strong{font-size:.9rem;font-weight:800}.node-kind,.explorer-row>span{color:var(--text-muted);font-size:.8rem;font-weight:720}.node-actions{display:grid;grid-template-columns:32px minmax(0,1fr) 32px 32px 32px;gap:5px;align-items:center;min-width:0}.node-actions select{min-width:0}.node-actions:has(input){grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr) 30px 30px 30px}.icon-button.danger{color:var(--red-brand)}.danger-action{border-color:#c2272f4d;color:var(--red-brand)}.sync-report{display:grid;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.sync-report-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.sync-summary{display:grid;grid-template-columns:repeat(3,minmax(86px,1fr));gap:8px;min-width:300px}.sync-summary span{display:grid;min-height:54px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.sync-summary strong{color:var(--gray-brand);font-size:1.2rem;line-height:1}.sync-finding-list{display:grid;gap:9px}.sync-finding{display:grid;grid-template-columns:minmax(260px,1fr) minmax(130px,.38fr) auto;gap:12px;align-items:center;border:1px solid rgba(47,133,90,.24);border-radius:8px;background:#2f855a0e;padding:12px}.sync-finding.warning{border-color:#b7791f47;background:#b7791f12}.sync-finding-main{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;align-items:start;min-width:0}.sync-finding-main svg{margin-top:2px;color:var(--green-success)}.sync-finding.warning .sync-finding-main svg{color:var(--amber-warning)}.sync-finding-main span,.sync-finding-meta span{display:block;overflow:hidden;color:var(--text-muted);font-size:.72rem;font-weight:800;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.sync-finding-main strong{display:block;overflow:hidden;margin-top:3px;color:var(--gray-brand);font-size:.94rem;text-overflow:ellipsis;white-space:nowrap}.sync-finding-main p{margin-top:5px;color:var(--text-muted);font-size:.82rem;line-height:1.35}.sync-finding-meta{display:grid;gap:6px;min-width:0}.sync-finding-meta a{display:inline-flex;align-items:center;gap:5px;color:var(--gray-brand);font-size:.8rem;font-weight:760;text-decoration:none}.sync-finding-meta a:hover{color:var(--red-brand)}.sync-finding-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.icon-button:disabled,.secondary-action:disabled,.primary-action:disabled,.node-actions select:disabled{cursor:not-allowed;opacity:.55}.explorer-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px}.explorer-stats article{display:grid;min-height:72px;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.explorer-stats strong{color:var(--gray-brand);font-size:1.45rem;line-height:1}.explorer-stats span,.explorer-detail-list>span{color:var(--text-muted);font-size:.74rem;font-weight:800;text-transform:uppercase}.explorer-detail-list{display:grid;gap:9px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.explorer-detail-list a{display:inline-flex;align-items:center;gap:7px;min-height:34px;color:var(--gray-brand);font-size:.86rem;font-weight:760;text-decoration:none}.explorer-detail-list a:hover{color:var(--red-brand)}.explorer-detail-list strong{color:var(--red-brand);font-size:.96rem}@media(max-width:1100px){.app-shell{grid-template-columns:232px minmax(0,1fr)}.status-strip,.workspace-grid,.metric-grid,.drive-grid,.root-grid,.catalog-grid,.template-library,.project-operational-grid,.explorer-layout,.task-grid,.search-results-grid,.payment-row-actions,.payment-add-row,.sync-finding,.iam-grid,.role-matrix,.audit-list{grid-template-columns:1fr}.explorer-table-head{display:none}.explorer-row{grid-template-columns:1fr}.task-board-head{display:none}.task-row{grid-template-columns:1fr}.task-toolbar,.task-filter-stack{align-items:stretch;justify-items:stretch}.node-actions,.node-actions:has(input){grid-template-columns:34px minmax(120px,1fr) 34px 34px 34px}.iam-hero{align-items:flex-start;flex-direction:column}.iam-hero-metrics,.sync-summary,.catalog-metrics,.drive-status-grid{width:100%;min-width:0}}@media(max-width:820px){.app-shell{display:block}.sidebar{min-height:auto}.main-area{padding:18px}.topbar,.file-toolbar,.panel-heading{align-items:flex-start;flex-direction:column}.topbar-actions{align-items:stretch;flex-wrap:wrap;width:100%}.iam-form-row,.role-create-row,.user-row,.override-row,.iam-empty,.drive-empty,.drive-code-row,.explorer-project-picker,.explorer-actions,.node-actions,.node-actions:has(input),.payment-main,.payment-row-actions,.payment-add-row,.technical-fields-grid,.technical-field-create,.technical-field-list article{grid-template-columns:1fr}.clients-hero,.catalog-hero,.explorer-hero,.activity-hero,.search-hero,.task-hero,.task-toolbar,.sync-report-head{align-items:flex-start;flex-direction:column}.catalog-metrics{align-items:stretch;flex-wrap:wrap}.task-hero-actions,.activity-hero-actions,.segmented-control{align-items:stretch;justify-content:flex-start}.search-form,.activity-event{grid-template-columns:1fr}.notification-popover{left:auto;right:0}.effective-chip,.mini-action,.task-action-cell,.sync-finding-actions{justify-self:start}.session-user{max-width:none;flex:1 1 180px}h1{font-size:1.72rem}.login-shell{grid-template-columns:1fr;align-items:stretch;height:auto;min-height:100vh;overflow-y:auto;padding:18px;background-position:28% center}.login-hero-copy{min-height:auto;padding-top:18px}.login-copy h2{font-size:1.55rem}.modal-panel{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}}.topbar-search{display:inline-flex;align-items:center;gap:8px;width:clamp(200px,24vw,340px);min-height:38px;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:0 14px}.topbar-search svg{flex:0 0 auto;color:var(--text-muted)}.topbar-search input{width:100%;border:0;background:transparent;color:var(--text-main);font:inherit;font-size:.88rem;outline:none;padding:0}.topbar-search:focus-within{border-color:#c2272f66}.project-card-actions{display:inline-flex;flex:0 0 auto;gap:6px}.dashboard-shell{display:grid;gap:18px}.dashboard-alerts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.alert-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:84px;border:1px solid var(--border);border-left:4px solid var(--text-muted);border-radius:10px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b0f;cursor:pointer;padding:14px 16px;text-align:left;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.alert-card>strong{color:var(--gray-brand);font-size:1.9rem;font-weight:850;line-height:1}.alert-card>div{display:grid;gap:3px;min-width:0}.alert-card span{color:var(--text-main);font-size:.88rem;font-weight:800;line-height:1.2}.alert-card small{color:var(--text-muted);font-size:.75rem;line-height:1.25}.alert-card:hover,.alert-card:focus-visible{border-color:#c2272f47;box-shadow:0 22px 60px #3c3c3b1f;outline:none;transform:translateY(-2px)}.alert-card.danger{border-left-color:var(--red-brand)}.alert-card.danger>strong{color:var(--red-brand)}.alert-card.warning{border-left-color:var(--amber-warning)}.alert-card.process{border-left-color:var(--blue-process)}.alert-card.review{border-left-color:var(--violet-review)}.alert-card.success{border-left-color:var(--green-success)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:18px;align-items:start}.calendar-nav{display:inline-flex;gap:6px}.calendar-month{text-transform:capitalize}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:16px}.calendar-weekdays span{color:var(--text-muted);font-size:.72rem;font-weight:800;text-align:center;text-transform:uppercase}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:6px}.calendar-cell{display:grid;gap:4px;align-content:start;width:100%;min-height:86px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:inherit;cursor:pointer;font:inherit;padding:6px;text-align:left;transition:border-color .12s ease,background .12s ease}.calendar-cell:hover,.calendar-cell:focus-visible{border-color:#c2272f66;outline:none}.calendar-cell.is-empty{cursor:default}.calendar-cell.is-empty:hover{border-color:transparent}.calendar-cell.is-empty{border:0;background:transparent}.calendar-cell.is-today{border-color:#c2272f80;background:#c2272f0d}.calendar-day-number{color:var(--text-muted);font-size:.78rem;font-weight:800}.calendar-cell.is-today .calendar-day-number{color:var(--red-brand)}.calendar-day-tasks{display:grid;gap:3px}.calendar-task{overflow:hidden;border:0;border-radius:5px;background:var(--surface-muted);color:var(--text-main);cursor:pointer;padding:3px 6px;font-size:.72rem;font-weight:720;text-align:left;text-overflow:ellipsis;white-space:nowrap}.calendar-task.danger{background:#c2272f1f;color:var(--red-brand)}.calendar-task.warning{background:#b7791f24;color:var(--amber-warning)}.calendar-task.success{background:#2f855a1f;color:var(--green-success)}.calendar-more{color:var(--text-muted);font-size:.68rem;font-weight:800}.dashboard-activity-list{display:grid;gap:10px;max-height:560px;margin-top:16px;overflow:auto;padding-right:2px}.dashboard-activity-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:10px}.dashboard-activity-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#c2272f1a;color:var(--red-brand)}.dashboard-activity-item strong{color:var(--gray-brand);font-size:.86rem;font-weight:820}.dashboard-activity-item p{margin-top:3px;color:var(--text-muted);font-size:.82rem;line-height:1.35}.dashboard-activity-item>div>span{display:block;margin-top:5px;color:var(--text-muted);font-size:.72rem;font-weight:720}@media(max-width:1180px){.dashboard-alerts{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1100px){.dashboard-grid{grid-template-columns:1fr}}@media(max-width:820px){.topbar-search{width:100%}}@media(max-width:680px){.dashboard-alerts{grid-template-columns:repeat(2,minmax(0,1fr))}}.calendar-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.calendar-view-toggle{display:inline-flex;overflow:hidden;border:1px solid var(--border);border-radius:8px}.calendar-view-toggle button{min-height:34px;border:0;background:var(--surface);color:var(--text-muted);cursor:pointer;padding:0 12px;font-size:.82rem;font-weight:760}.calendar-view-toggle button.is-active{background:#c2272f1a;color:var(--red-brand)}.calendar-task{display:block}.calendar-months.is-quarter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px}.calendar-month-name{display:block;margin-bottom:6px;color:var(--gray-brand);font-size:.82rem;font-weight:820;text-transform:capitalize}.calendar-months.is-quarter .calendar-weekdays{margin-top:0}.calendar-months.is-quarter .calendar-weekdays span{font-size:.6rem}.calendar-months.is-quarter .calendar-cell{min-height:40px;place-items:center;gap:2px}.calendar-months.is-quarter .calendar-day-number{font-size:.72rem}.calendar-dot{width:6px;height:6px;border-radius:999px;background:var(--red-brand)}.alerts-list{display:grid;gap:8px;max-height:560px;margin-top:16px;overflow:auto;padding-right:2px}.alert-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--border);border-left:3px solid var(--text-muted);border-radius:8px;background:var(--surface);cursor:pointer;padding:10px 12px;text-align:left;transition:border-color .12s ease,background .12s ease}.alert-row:hover,.alert-row:focus-visible{background:#3c3c3b06;outline:none}.alert-row.danger{border-left-color:var(--red-brand)}.alert-row.warning{border-left-color:var(--amber-warning)}.alert-row.review{border-left-color:var(--violet-review)}.alert-row.success{border-left-color:var(--green-success)}.alert-row-tag{align-self:start;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);padding:3px 8px;font-size:.66rem;font-weight:820;text-transform:uppercase;white-space:nowrap}.alert-row.danger .alert-row-tag{background:#c2272f1f;color:var(--red-brand)}.alert-row.warning .alert-row-tag{background:#b7791f24;color:var(--amber-warning)}.alert-row.review .alert-row-tag{background:#6d5bd01f;color:var(--violet-review)}.alert-row.success .alert-row-tag{background:#2f855a1f;color:var(--green-success)}.alert-row-body{display:grid;gap:2px;min-width:0}.alert-row-body strong{overflow:hidden;color:var(--gray-brand);font-size:.88rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.alert-row-body small{overflow:hidden;color:var(--text-muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.alert-row-date{color:var(--text-muted);font-size:.76rem;font-weight:740;white-space:nowrap}@media(max-width:980px){.calendar-months.is-quarter{grid-template-columns:1fr}}.db-view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.db-view-toggle button{border:0;border-right:1px solid var(--border);background:transparent;padding:8px 13px;font:inherit;font-size:.84rem;color:var(--text-muted);cursor:pointer}.db-view-toggle button:last-child{border-right:0}.db-view-toggle button.is-active{background:#c2272f1a;color:var(--red-brand);font-weight:700}.db-list-table .gridtbl-head,.db-list-table .gridtbl-row{grid-template-columns:88px minmax(110px,1.1fr) minmax(150px,1.5fr) minmax(90px,.8fr) minmax(110px,1fr) 76px 96px}.db-list-table .db-list-empty>span{grid-column:1 / -1;color:var(--text-muted)}.db-list-more{padding:5px 11px;min-height:30px;font-size:.8rem}.db-audit-actor{color:var(--text-muted);font-size:.74rem}.db-table{display:grid;gap:6px;border:1px solid var(--border);border-radius:10px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12;padding:12px}.db-table-head{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:12px;padding:4px 12px 10px;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.db-client{border:1px solid transparent;border-radius:8px}.db-client.is-expanded{border-color:var(--border);background:var(--surface);box-shadow:0 12px 40px #3c3c3b0f}.db-client-row{display:grid;grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:12px;width:100%;min-height:52px;border-radius:8px;background:transparent;padding:0 12px}.db-client-row:hover{background:var(--surface-muted)}.db-client-lead{display:flex;align-items:center;gap:8px;min-width:0}.db-client-main{display:inline-flex;align-items:center;min-width:0;border:0;border-radius:6px;background:transparent;cursor:pointer;padding:8px 4px 8px 0;text-align:left}.db-client-main:focus-visible{outline:2px solid rgba(194,39,47,.4);outline-offset:2px}.db-row-actions{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px}.db-icon-action{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-muted);cursor:pointer}.db-icon-action:hover:not(:disabled),.db-icon-action:focus-visible{border-color:#c2272f57;color:var(--red-brand);outline:none}.db-icon-action:disabled{cursor:default;opacity:.55}.db-table-head .column-hint:nth-child(2){justify-self:center}.db-client-row .state-chip{justify-self:center;min-height:26px;padding:0 10px;font-size:.78rem}.db-client-row .db-count{justify-self:center}.trash-head,.trash-row{display:grid;grid-template-columns:minmax(0,1.4fr) 96px minmax(0,1fr) minmax(0,1.2fr) 150px 150px;gap:12px;align-items:center}.trash-head{padding:4px 12px 10px;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.trash-row{min-height:48px;border-bottom:1px solid rgba(60,60,59,.08);padding:8px 12px}.trash-row>strong,.trash-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row>span{color:var(--text-muted);font-size:.86rem}.db-filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.db-filter-combo{flex:0 0 auto;width:240px;max-width:100%}.db-filter-combo .combo-input{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.9rem;padding:0 34px 0 12px}.db-filter-combo .combo-input::-moz-placeholder{color:var(--text-muted)}.db-filter-combo .combo-input::placeholder{color:var(--text-muted)}.db-filter-combo .combo-input:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.1)}.db-filter-combo .combo-box.is-disabled .combo-input{background:var(--surface-muted);color:var(--text-muted);cursor:not-allowed}.db-filter-combo .combo-box.is-disabled .combo-toggle{opacity:.5;cursor:not-allowed}.db-filter-reset{display:inline-flex;align-items:center;gap:5px;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--gray-brand);font-size:.82rem;font-weight:700;padding:0 12px;cursor:pointer}.db-filter-reset:hover,.db-filter-reset:focus-visible{border-color:#c2272f73;color:var(--red-brand);outline:none}.db-search{display:flex;align-items:center;gap:8px;min-height:42px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);margin-bottom:12px;padding:0 12px}.db-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--text-main);font:inherit;font-size:.88rem;font-weight:640;outline:none}.db-search-clear{display:inline-grid;place-items:center;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer}.db-search-clear:hover{color:var(--red-brand)}button.db-drive-link{background:transparent;cursor:pointer;font-family:inherit}button.db-drive-link:disabled{cursor:default;opacity:.6}.db-client-summary{color:var(--text-muted);font-size:.8rem;font-weight:640}.form-modal-actions .push-left{margin-right:auto}.combo-input.is-invalid{border-color:var(--red-brand);background:#c2272f0d;color:var(--red-brand)}.template-fields{display:grid;gap:10px;border:1px dashed var(--border);border-radius:8px;padding:12px}.template-fields-title{color:var(--text-muted);font-size:.78rem;font-weight:780;text-transform:uppercase}.template-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.template-fields-grid label{display:grid;gap:4px;font-size:.8rem}@media(max-width:640px){.template-fields-grid{grid-template-columns:minmax(0,1fr)}}.nav-chevron{transition:transform .14s ease}.nav-chevron.is-open{transform:rotate(90deg)}.nav-subitems{display:grid;gap:2px;border-left:2px solid rgba(194,39,47,.22);margin:4px 0 6px 22px;padding-left:8px}.nav-subitem{display:flex;align-items:center;gap:8px;min-height:34px;border:0;border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer;padding:0 10px;font-size:.82rem;font-weight:700;text-align:left}.nav-subitem svg{flex:0 0 auto;color:currentColor}.nav-subitem:hover,.nav-subitem:focus-visible{background:var(--surface-muted);color:var(--text-main);outline:none}.nav-subitem.is-active{background:#c2272f1a;color:var(--red-brand)}.combo-box{position:relative;display:grid}.combo-box .combo-input{padding-right:34px}.combo-toggle{position:absolute;top:50%;right:6px;display:inline-grid;place-items:center;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transform:translateY(-50%)}.combo-toggle:hover{color:var(--red-brand)}.combo-menu{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;display:grid;max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 18px 46px #3c3c3b29;padding:4px}.combo-option{display:block;width:100%;border:0;border-radius:6px;background:transparent;color:var(--text-main);cursor:pointer;padding:8px 10px;font-size:.88rem;font-weight:500;text-align:left}.combo-option:hover,.combo-option.is-active{background:#c2272f14;color:var(--red-brand)}.combo-empty{color:var(--text-muted);padding:10px;font-size:.82rem;font-weight:640}.cat-table{display:grid;border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-top:18px}.cat-table-head,.cat-row{display:grid;grid-template-columns:minmax(0,1fr) 96px 84px 84px 120px 96px}.cat-table-head{background:var(--surface-muted);border-bottom:1px solid var(--border)}.cat-table-head .cat-cell{color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.cat-row:not(:last-child){border-bottom:1px solid var(--border)}.cat-row:hover{background:var(--surface-muted)}.cat-cell{display:flex;align-items:center;min-height:54px;padding:8px 14px}.cat-cell+.cat-cell{border-left:1px solid var(--border)}.cat-cell-mid{justify-content:center}.cat-cell-actions{justify-content:flex-end;gap:5px}.cat-name{gap:8px;min-width:0}.cat-name strong{overflow:hidden;color:var(--gray-brand);font-size:.94rem;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.cat-name em{color:var(--text-muted);font-size:.76rem;font-style:normal;font-weight:700}.cat-count{color:var(--gray-brand);font-size:.92rem;font-weight:780}.cat-row .state-chip{min-height:26px;padding:0 10px;font-size:.78rem}.panel-note{color:var(--text-muted);margin-bottom:12px;font-size:.82rem;font-weight:640}.config-placeholder{display:grid;justify-items:center;gap:10px;border:1px dashed var(--border);border-radius:12px;background:#fff9;padding:60px 24px;text-align:center}.config-placeholder svg{color:var(--red-brand)}.config-placeholder h2{color:var(--gray-brand);font-size:1.2rem}.config-placeholder p{max-width:440px;color:var(--text-muted);font-size:.9rem;font-weight:600}.tpl-block{display:grid;gap:8px;border:1px solid var(--border);border-radius:10px;padding:12px}.tpl-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.tpl-block-title{color:var(--gray-brand);font-size:.86rem;font-weight:820}.tpl-block-hint{color:var(--text-muted);font-size:.78rem;font-weight:620;line-height:1.4}.tpl-rows{display:grid;gap:8px}.tpl-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px}.tpl-empty{color:var(--text-muted);font-size:.8rem;font-weight:620}.tpl-add{display:inline-flex;align-items:center;gap:6px;justify-self:start;min-height:34px;border:1px dashed var(--border);border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer;padding:0 12px;font-size:.82rem;font-weight:740}.tpl-add:hover:not(:disabled){border-color:#c2272f57;color:var(--red-brand)}.tpl-add:disabled{cursor:default;opacity:.5}.tpl-number{display:inline-flex;align-items:center;gap:8px}.tpl-number input{width:64px;text-align:center}.tpl-number em{color:var(--text-muted);font-size:.8rem;font-style:normal;font-weight:680}.tpl-catalog-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:10px}.tpl-catalog-create.has-unit{grid-template-columns:minmax(0,1fr) 96px auto}.tpl-unit-tag{margin-left:8px;padding:1px 7px;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:600}.reports-shell{display:grid;gap:16px}.reports-hero{display:flex;align-items:center;gap:14px}.reports-hero>div{flex:1 1 auto}.reports-hero-actions{display:flex;align-items:center;gap:8px}.reports-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.reports-filters>.combo-box{min-width:220px}.reports-presets{display:inline-flex;border:1px solid var(--border);border-radius:9px;overflow:hidden}.reports-preset{border:0;background:var(--surface);color:var(--text-muted);padding:8px 14px;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;border-right:1px solid var(--border)}.reports-preset:last-child{border-right:0}.reports-preset.is-active{background:var(--red-brand);color:#fff}.reports-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}@media(max-width:1200px){.reports-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.reports-note{color:var(--text-muted);font-size:.82rem;margin:-4px 2px 0}.reports-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:1000px){.reports-grid{grid-template-columns:1fr}}.reports-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:16px 18px;box-shadow:0 1px 2px #0f172a0a}.reports-card h3{margin:0 0 12px;font-size:.95rem;color:var(--gray-brand)}.reports-card-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.reports-card-head h3{margin:0}.reports-count{color:var(--text-muted);font-size:.82rem}.reports-empty{color:var(--text-muted);font-size:.85rem;padding:8px 2px}.rep-bar-row{display:grid;grid-template-columns:minmax(90px,150px) minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 0}.rep-bar-label{font-size:.84rem;color:var(--gray-brand);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rep-bar-label em{color:var(--text-muted);font-style:normal}.rep-bar-track{height:12px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.rep-bar-fill{height:100%;border-radius:999px;background:var(--red-brand);min-width:2px}.rep-bar-fill.is-type{background:#2f7d6b}.rep-bar-value{font-size:.8rem;color:var(--gray-brand);font-variant-numeric:tabular-nums;white-space:nowrap}.rep-months{display:flex;align-items:flex-end;gap:8px;overflow-x:auto;padding-top:8px}.rep-month{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:42px;flex:1 1 0}.rep-month-track{height:120px;width:100%;display:flex;align-items:flex-end;justify-content:center}.rep-month-bar{width:60%;min-height:2px;border-radius:6px 6px 0 0;background:var(--red-brand)}.rep-month-label{font-size:.72rem;color:var(--text-muted);white-space:nowrap}.reports-table-scroll{overflow-x:auto}.reports-table{min-width:860px}.reports-table-head,.reports-table-row{display:grid;grid-template-columns:minmax(160px,1.6fr) minmax(120px,1fr) minmax(90px,.9fr) repeat(5,minmax(96px,.9fr));align-items:center;gap:8px}.reports-table-head{padding:0 6px 8px;border-bottom:1px solid var(--border)}.reports-table-head>span,.reports-sort{font-size:.76rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em}.reports-sort{border:0;background:none;padding:0;cursor:pointer;text-align:right;font-family:inherit}.reports-table-head>.reports-sort:hover{color:var(--red-brand)}.reports-table-row{padding:8px 6px;border-bottom:1px solid var(--border);font-size:.85rem}.reports-num{text-align:right;font-variant-numeric:tabular-nums;color:var(--gray-brand)}.reports-tabs{display:inline-flex;gap:4px;border-bottom:1px solid var(--border)}.reports-tab{border:0;background:none;padding:8px 16px;font:inherit;font-size:.9rem;font-weight:600;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.reports-tab.is-active{color:var(--red-brand);border-bottom-color:var(--red-brand)}.rel-explorer{display:grid;gap:16px}.rel-builder{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:16px 18px;font-size:1rem;line-height:2.2;color:var(--gray-brand)}.rel-slot{display:inline-block;min-width:180px;vertical-align:middle}.rel-answer{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:16px 20px;box-shadow:0 1px 2px #0f172a0a}.rel-answer-main{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.rel-answer-main strong{font-size:2.4rem;line-height:1;color:var(--red-brand);font-variant-numeric:tabular-nums}.rel-answer-main span{color:var(--gray-brand);font-size:.95rem}.rel-answer-sub{margin-top:6px;color:var(--text-muted);font-size:.85rem}.rel-strength{margin:10px 0 0;color:var(--gray-brand);font-size:.9rem}.rel-chart{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:16px 18px}.rel-chart svg{width:100%;height:auto}.rel-axis{stroke:var(--border);stroke-width:1.5}.rel-grid{stroke:var(--surface-muted);stroke-width:1}.rel-tick{fill:var(--text-muted);font-size:11px}.rel-axis-label{fill:var(--gray-brand);font-size:12px;font-weight:600}.rel-point{fill:var(--red-brand);fill-opacity:.78;stroke:#fff;stroke-width:1}.rel-guide{stroke:var(--text-muted);stroke-width:1.5;stroke-dasharray:5 4}.rel-trend{stroke:#2f7d6b;stroke-width:2}.rel-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:10px;color:var(--text-muted);font-size:.8rem}.rel-legend span{display:inline-flex;align-items:center;gap:6px}.rel-legend i{display:inline-block;width:14px;height:0}.rel-legend-dot{width:10px;height:10px;border-radius:50%;background:var(--red-brand)}.rel-legend-guide{border-top:2px dashed var(--text-muted)}.rel-legend-trend{border-top:2px solid #2f7d6b}.rel-filters{display:grid;gap:10px}.rel-filters-toggle{justify-self:start;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:7px 12px;font:inherit;font-size:.85rem;font-weight:600;color:var(--gray-brand);cursor:pointer}.rel-filters-body{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:14px 16px}.rel-filter{display:grid;gap:5px}.rel-filter>span{font-size:.78rem;color:var(--text-muted);font-weight:600}.rel-filter .combo-box{min-width:200px}.rel-range{display:inline-flex;align-items:center;gap:8px}.rel-range input{width:90px;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:0 10px;font:inherit;font-size:.85rem}.rel-range span{color:var(--text-muted)}.est-value{display:inline-flex;align-items:center;gap:6px;min-width:120px}.est-value input{width:90px;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:0 10px;font:inherit;font-size:.95rem}.est-value em{color:var(--text-muted);font-style:normal;font-size:.9rem}.est-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:720px){.est-cards{grid-template-columns:1fr}}.est-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:18px 20px;display:grid;gap:4px;box-shadow:0 1px 2px #0f172a0a}.est-label{font-size:.82rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.est-card strong{font-size:1.9rem;line-height:1.1;color:var(--red-brand);font-variant-numeric:tabular-nums}.est-band{color:var(--gray-brand);font-size:.88rem}.est-conf{color:var(--text-muted);font-size:.8rem}.est-nodata{color:var(--text-muted);font-size:.9rem;padding:6px 0}.est-warn{margin:0;border:1px solid var(--border);border-left:3px solid var(--red-brand);border-radius:8px;background:var(--surface-muted);padding:10px 14px;color:var(--gray-brand);font-size:.86rem}.est-chart-title{margin:0 0 10px;font-size:.95rem;color:var(--gray-brand)}.est-point{fill:#2f7d6b;stroke:#fff;stroke-width:2}.est-legend-point{width:11px;height:11px;border-radius:50%;background:#2f7d6b}.est-base>summary{cursor:pointer;color:var(--text-muted);font-size:.85rem;padding:6px 0}.est-base-list{display:grid;gap:4px;margin-top:6px}.est-base-row{display:grid;grid-template-columns:minmax(120px,1.6fr) minmax(70px,1fr) minmax(70px,1fr) minmax(90px,1fr);gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;font-size:.84rem;color:var(--gray-brand)}.calendar-day-head{display:flex;align-items:center;justify-content:space-between;gap:4px}.calendar-count{min-width:17px;height:17px;padding:0 5px;border-radius:999px;background:var(--red-brand);color:#fff;font-size:.68rem;font-weight:700;line-height:17px;text-align:center}.calendar-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.calendar-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}.cal-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 10px;font-size:.76rem;font-weight:700;line-height:1.2;white-space:nowrap;border:1px solid transparent}.cal-badge.neutral{background:var(--surface-muted);color:var(--text-muted);border-color:var(--border)}.cal-badge.danger{background:#c2272f1a;color:var(--red-brand);border-color:#c2272f3d}.cal-badge.process{background:#3182ce1f;color:#2b6cb0;border-color:#3182ce42}button.cal-badge{cursor:pointer;font-family:inherit;transition:filter .12s ease,box-shadow .12s ease}button.cal-badge:hover:not(:disabled){filter:brightness(.96);box-shadow:0 1px 6px #3c3c3b24}button.cal-badge:disabled{cursor:default;opacity:.65}.calendar-legend{display:flex;flex-wrap:wrap;gap:14px;color:var(--text-muted);font-size:.8rem}.calendar-legend span{display:inline-flex;align-items:center;gap:6px}.cal-legend{width:11px;height:11px;border-radius:3px;display:inline-block}.cal-legend.danger{background:var(--red-brand)}.cal-legend.warning{background:#d69e2e}.cal-legend.process{background:#3182ce}.cal-legend.neutral{background:#a0aec0}.alerts-panel .dashboard-alerts{margin-top:18px;margin-bottom:14px}.day-table{display:grid;gap:0}.day-table-head,.day-table-row{display:grid;grid-template-columns:minmax(88px,.6fr) minmax(150px,1.4fr) minmax(110px,1fr) minmax(96px,.9fr) minmax(80px,.6fr) 48px;align-items:center;gap:10px}.day-table-head{padding:0 8px 8px;border-bottom:1px solid var(--border);font-size:.74rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em}.day-table-row{border:0;background:none;text-align:left;padding:9px 8px;border-bottom:1px solid var(--border);cursor:pointer;font:inherit}.day-table-row:hover{background:var(--surface-muted)}.day-cell-title,.day-cell-sub{display:grid;gap:2px;min-width:0}.day-cell-title strong,.day-cell-sub strong{font-size:.88rem;color:var(--gray-brand);font-weight:640}.day-cell-title em,.day-cell-sub em{font-style:italic;font-size:.78rem;color:var(--text-muted)}.day-cell-plazo{font-size:.83rem;color:var(--gray-brand)}.day-cell-plazo.is-over{color:var(--red-brand);font-weight:600}.day-cell-adj{display:inline-flex;align-items:center;gap:4px;font-size:.83rem;color:var(--text-muted)}.tpl-catalog-create input{min-height:40px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:0 12px;font:inherit;font-size:.88rem}.tpl-catalog-list{display:grid;gap:6px;max-height:260px;overflow-y:auto;margin-top:10px}.tpl-catalog-item{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:8px 12px}.tpl-catalog-item strong{color:var(--gray-brand);font-size:.88rem;font-weight:720}.modal-backdrop.is-stacked{z-index:60}.user-tbl{display:grid;gap:4px}.user-tbl-head,.user-tbl-row{display:grid;grid-template-columns:minmax(0,1fr) 220px 160px;align-items:center;gap:12px;padding:6px 12px}.user-tbl-head{border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.user-tbl-row{min-height:50px;border-radius:8px}.user-tbl-row:hover{background:var(--surface-muted)}.user-tbl-name{display:inline-flex;align-items:center;gap:8px;min-width:0}.user-tbl-name>span{overflow:hidden;color:var(--gray-brand);font-size:.88rem;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.user-tbl-name svg{flex:0 0 auto;color:var(--text-muted)}.user-tbl-row select{min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:0 10px;font:inherit;font-size:.86rem}.perm-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}.perm-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--border);border-left:3px solid var(--border);border-radius:7px;padding:6px 10px}.perm-row.is-active{border-left-color:var(--green-success)}.perm-row.is-inactive{background:var(--surface-muted)}.perm-row.is-inactive .perm-label strong{color:var(--text-muted);font-weight:680}.perm-label{display:grid;gap:1px;min-width:0}.perm-label strong{overflow:hidden;color:var(--gray-brand);font-size:.82rem;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.perm-label span{color:var(--text-muted);font-size:.68rem;font-weight:620}.perm-toggle{display:inline-flex;gap:4px;justify-content:flex-end}@media(max-width:720px){.perm-list{grid-template-columns:minmax(0,1fr)}}.roles-modal-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px}.roles-list{display:grid;align-content:start;gap:6px;border-right:1px solid var(--border);padding-right:12px}.roles-list-item{display:grid;gap:1px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer;padding:6px 10px;text-align:left}.roles-list-item span{color:var(--text-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.roles-list-item strong{color:var(--gray-brand);font-size:.85rem;font-weight:760}.roles-list-item.is-active{border-color:var(--red-brand);background:#c2272f0f}.roles-list-item.is-active strong{color:var(--red-brand)}.roles-detail{display:grid;align-content:start;gap:10px}.roles-detail-head{display:flex;align-items:baseline;gap:10px}.roles-detail-head h3{color:var(--gray-brand);font-size:.98rem;font-weight:820}.roles-desc{min-height:34px}.roles-detail-head span{color:var(--text-muted);font-size:.74rem;font-weight:760;text-transform:uppercase}.roles-desc{min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:0 12px;font:inherit;font-size:.88rem}.perm-groups{display:grid;gap:9px}.perm-group{display:grid;gap:4px}.perm-group>span{color:var(--text-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.perm-group>div{display:flex;flex-wrap:wrap;gap:5px}@media(max-width:900px){.user-tbl-head{display:none}.user-tbl-row{grid-template-columns:minmax(0,1fr);gap:8px;border:1px solid var(--border);margin-bottom:8px}.roles-modal-grid{grid-template-columns:minmax(0,1fr)}.roles-list{border-right:0;border-bottom:1px solid var(--border);padding-right:0;padding-bottom:12px}}.audit-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:start}.audit-filters .db-search{margin-bottom:0}.audit-range{display:flex;flex-wrap:wrap;align-items:center;gap:12px;border:1px dashed var(--border);border-radius:8px;padding:10px 12px}.audit-range-label{color:var(--gray-brand);font-size:.84rem;font-weight:800}.audit-range label{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.8rem;font-weight:720}.audit-range input[type=date]{min-height:36px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);padding:0 10px;font:inherit;font-size:.84rem}.audit-range-hint{color:var(--text-muted);font-size:.78rem;font-weight:640}.audit-head,.audit-row{display:grid;grid-template-columns:96px 200px 180px minmax(0,1fr);align-items:center;gap:12px;padding:8px 12px}.audit-head{border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.audit-row{border-radius:7px}.audit-row:hover{background:var(--surface-muted)}.audit-date{color:var(--text-muted);font-size:.8rem;font-weight:700;white-space:nowrap}.audit-user{overflow:hidden;color:var(--gray-brand);font-size:.84rem;font-weight:780;text-overflow:ellipsis;white-space:nowrap}.audit-action{display:inline-flex;align-items:center;min-height:24px;max-width:100%;border-radius:999px;background:#c2272f17;color:var(--red-brand);padding:0 10px;font-size:.76rem;font-weight:780;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;justify-self:start}.audit-detail{overflow:hidden;color:var(--text-main);font-size:.85rem;font-weight:640;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.audit-filters{grid-template-columns:minmax(0,1fr)}.audit-head{display:none}.audit-row{grid-template-columns:minmax(0,1fr);gap:4px;border:1px solid var(--border);margin-bottom:8px;padding:10px 12px}.audit-detail{white-space:normal}}.db-client-name{display:inline-flex;align-items:center;gap:9px;min-width:0}.db-client-name strong{overflow:hidden;color:var(--gray-brand);font-size:.96rem;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.db-chevron{flex:0 0 auto;color:var(--text-muted);transition:transform .14s ease}.db-client.is-expanded>.db-client-row .db-chevron,.db-project.is-open>.db-project-row .db-chevron{transform:rotate(90deg);color:var(--red-brand)}.db-cell-muted{overflow:hidden;color:var(--text-muted);font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.db-count{display:inline-grid;place-items:center;min-width:30px;height:24px;border-radius:999px;background:var(--surface-muted);color:var(--text-main);font-size:.8rem;font-weight:820}.db-client-detail{display:grid;gap:12px;border-top:1px solid var(--border);margin:0 6px;padding:14px 6px 12px}.db-client-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.db-meta-facts{display:flex;flex-wrap:wrap;gap:18px}.db-meta-facts span{display:grid;gap:2px;color:var(--gray-brand);font-size:.86rem;font-weight:700}.db-meta-facts small{color:var(--text-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.db-meta-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.db-drive-link{display:inline-flex;align-items:center;gap:6px;min-height:32px;border:1px solid var(--border);border-radius:7px;color:var(--gray-brand);padding:0 10px;font-size:.76rem;font-weight:760;text-decoration:none}.db-drive-link:hover{border-color:#c2272f57;color:var(--red-brand)}.db-project-list{display:grid;gap:8px;border-left:2px solid rgba(194,39,47,.18);margin-left:8px;padding-left:12px}.db-project{border:1px solid var(--border);border-radius:8px;background:var(--surface)}.db-project-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 10px}.db-project-main{display:inline-flex;align-items:center;gap:8px;min-width:0;border:0;background:transparent;cursor:pointer;padding:0;text-align:left}.db-project-main>span{display:grid;gap:1px;min-width:0}.db-project-main strong{overflow:hidden;color:var(--gray-brand);font-size:.9rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.db-project-main small{color:var(--text-muted);font-size:.74rem;font-weight:700}.db-payment-mini{color:var(--text-muted);font-size:.76rem;font-weight:760;white-space:nowrap}.db-project-actions{display:inline-flex;gap:6px}.db-project-detail{display:grid;gap:12px;border-top:1px solid var(--border);margin:0 10px;padding:12px 0}.db-empty-projects{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;border:1px dashed rgba(60,60,59,.28);border-radius:8px;background:#f0f0ef80;padding:12px 14px;color:var(--text-muted);font-size:.86rem}.db-add-project{display:inline-flex;align-items:center;gap:7px;justify-self:start;min-height:34px;border:1px dashed var(--border);border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer;padding:0 12px;font-size:.82rem;font-weight:740}.db-add-project:hover{border-color:#c2272f57;color:var(--red-brand)}@media(max-width:820px){.db-table-head{display:none}.db-client-row{grid-template-columns:minmax(0,1fr) auto}.db-cell-muted,.db-count{display:none}}.demo-seed-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--border);border-left:4px solid var(--red-brand);border-radius:10px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12;padding:18px}.demo-seed-card p{max-width:760px;margin-top:7px;color:var(--text-muted);font-size:.92rem;line-height:1.45}.demo-seed-card .demo-seed-msg{margin-top:10px;color:var(--green-success);font-weight:760}.alerts-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}.alerts-toolbar .filter-search{flex:1 1 260px}.alert-row.danger .alert-row-date{color:var(--red-brand);font-weight:820}.day-task-list{display:grid;gap:8px;max-height:52vh;overflow:auto;padding-right:2px}.day-task-row{display:grid;gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer;padding:12px;text-align:left}.day-task-badges{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.day-task-overdue{display:inline-flex;align-items:center;border-radius:999px;background:#c2272f1f;color:var(--red-brand);padding:3px 9px;font-size:.72rem;font-weight:820;text-transform:uppercase}.day-task-row>strong{color:var(--gray-brand);font-size:.92rem;font-weight:820}.day-task-row>small{color:var(--text-muted);font-size:.78rem}.project-tabs{display:inline-flex;flex-wrap:wrap;gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);padding:4px}.project-tabs button{display:inline-flex;align-items:center;gap:6px;min-height:32px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;padding:0 12px;font-size:.82rem;font-weight:760}.project-tabs button.is-active{background:var(--surface);color:var(--red-brand);box-shadow:0 4px 14px #3c3c3b14}.tags-editor{display:grid;gap:12px}.tags-chip-row{display:flex;flex-wrap:wrap;gap:8px}.tags-empty{color:var(--text-muted);font-size:.86rem;line-height:1.45}.tag-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;border-radius:999px;background:#c2272f14;color:var(--red-brand);padding:0 6px 0 12px;font-size:.82rem;font-weight:760}.tag-chip button{display:grid;place-items:center;width:20px;height:20px;border:0;border-radius:999px;background:#c2272f24;color:var(--red-brand);cursor:pointer}.tags-input-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tags-input-row input{flex:1 1 220px;min-width:0;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.9rem;padding:0 12px}.tags-input-row input:focus{border-color:#c2272f73;outline:3px solid rgba(194,39,47,.1)}.project-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick-action-card{display:inline-flex;align-items:center;gap:10px;min-height:56px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--gray-brand);cursor:pointer;padding:10px 14px;text-align:left;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.quick-action-card svg{flex:0 0 auto;color:var(--red-brand)}.quick-action-card span{display:grid;gap:1px;min-width:0}.quick-action-card strong{font-size:.9rem;font-weight:820}.quick-action-card small{color:var(--text-muted);font-size:.75rem;font-weight:700}.quick-action-card:hover,.quick-action-card:focus-visible{border-color:#c2272f59;box-shadow:0 12px 30px #3c3c3b1a;outline:none;transform:translateY(-1px)}.form-modal.is-wide{width:min(640px,100%)}.form-modal.is-xwide{width:min(920px,100%)}.form-modal.has-scroll-body{display:flex;flex-direction:column;max-height:calc(100vh - 40px)}.form-modal.has-scroll-body>.form-modal-head,.form-modal.has-scroll-body>.form-modal-actions,.form-modal.has-scroll-body>.panel-note,.form-modal.has-scroll-body>.tpl-catalog-create,.form-modal.has-scroll-body>.db-search{flex:0 0 auto}.form-modal.has-scroll-body>.perm-list,.form-modal.has-scroll-body>.roles-modal-grid,.form-modal.has-scroll-body>.tpl-catalog-list{flex:1 1 auto;min-height:0;overflow-y:auto;max-height:none}.confirm-type-input{width:100%;min-height:40px;margin-top:12px;border:1px solid var(--red-brand);border-radius:7px;background:var(--surface);padding:0 12px;font:inherit;font-size:.9rem}@media(max-width:680px){.project-quick-actions{grid-template-columns:1fr}}.day-task-row:hover,.day-task-row:focus-visible{background:var(--surface-muted);outline:none}.day-task-body{display:grid;gap:2px;min-width:0}.day-task-body strong{overflow:hidden;color:var(--gray-brand);font-size:.88rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.day-task-body small{overflow:hidden;color:var(--text-muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.explorer-main-panel{min-width:0;overflow-x:hidden}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;border-radius:999px;background:var(--red-brand);color:#fff;font-size:.72rem;font-weight:800}.node-pending-chip{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;background:#d69e2e29;color:#9a6b00;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.icon-button.compact-icon.warning{color:#9a6b00}.drive-search-bar{display:flex;align-items:center;gap:10px;margin-top:14px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.drive-search-bar svg{color:var(--text-muted);flex:0 0 auto}.drive-search-bar input{flex:1 1 auto;min-width:0;border:none;background:transparent;font-size:.9rem;outline:none}.drive-search-results{margin-top:12px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.drive-search-results-head{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;color:var(--text-muted);font-size:.82rem}.drive-search-results-head strong{color:var(--red-brand);font-size:1rem}.drive-search-empty{color:var(--text-muted);font-size:.86rem}.drive-search-list{display:grid;gap:6px}.drive-search-hit{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--gray-brand);text-decoration:none}.drive-search-hit:hover{border-color:#c2272f5c;background:#c2272f0a}.drive-search-hit svg{color:var(--red-brand)}.drive-search-hit strong{overflow:hidden;font-size:.88rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.upload-menu-wrap{position:relative}.upload-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:40;display:grid;gap:2px;min-width:170px;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 12px 28px #00000024}.upload-menu-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:7px;color:var(--gray-brand);font-size:.86rem;font-weight:600;cursor:pointer}.upload-menu-item:hover{background:#c2272f0f}.roles-detail-actions{display:flex;gap:10px;align-items:center}.secondary-action.danger{border-color:#c2272f66;color:var(--red-brand)}.secondary-action.danger:hover{background:#c2272f0f}.form-modal.is-narrow{width:min(460px,94vw)}.dense-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.trash-subtitle{margin:18px 0 10px;font-size:.92rem;font-weight:820}.trash-node-head,.trash-node-row{display:grid;grid-template-columns:minmax(160px,1.3fr) 90px minmax(140px,1fr) 150px 150px minmax(160px,.9fr);gap:10px;align-items:center;min-width:0}.trash-node-head{min-height:34px;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:820;text-transform:uppercase}.trash-node-row{min-height:48px;padding:6px 0;border-bottom:1px solid var(--border);font-size:.84rem}.trash-node-row>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-node-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}.section-hero{border-left:4px solid var(--red-brand)}.section-hero-lead{display:flex;align-items:center;gap:14px;min-width:0}.section-hero-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 auto;border-radius:12px;background:#c2272f17;color:var(--red-brand)}.section-metrics{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;align-items:stretch}.metric-tile.is-accent strong{color:var(--gray-brand)}.metric-tile.is-ok strong{color:var(--green-success)}.metric-tile.is-warn strong{color:#9a6b00}.metric-tile.is-danger strong{color:var(--red-brand)}.metric-tile.is-muted strong{color:var(--text-muted)}.filters-panel{margin:0;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.filters-results{margin-left:auto;color:var(--text-muted);font-size:.8rem;font-weight:700;white-space:nowrap}.filters-panel>.combo-box{flex:0 0 auto;width:200px;max-width:100%}.filters-panel .combo-input{width:100%;min-height:38px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.86rem;padding:0 34px 0 12px}.filters-panel .combo-input::-moz-placeholder{color:var(--text-muted)}.filters-panel .combo-input::placeholder{color:var(--text-muted)}.filters-panel .combo-input:focus{outline:none;border-color:var(--red-brand)}.requests-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0}.requests-filters .filter-search{display:flex;align-items:center;gap:8px;flex:1 1 280px;min-width:220px;padding:7px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.requests-filters .filter-search svg{color:var(--text-muted)}.requests-filters .filter-search input{flex:1 1 auto;min-width:0;border:none;background:transparent;outline:none;font-size:.86rem}.requests-filters>select{height:38px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);font-size:.86rem}.requests-date{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-muted)}.requests-date input{height:38px;padding:0 8px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.requests-head,.requests-row{grid-template-columns:104px minmax(150px,1.1fr) minmax(130px,1fr) minmax(140px,1.1fr) minmax(120px,1fr) 116px minmax(150px,1.2fr) 96px}.requests-role{color:var(--text-muted);font-size:.72rem;font-style:normal}.requests-path{color:var(--text-muted)}.requests-status{display:inline-flex;align-items:center;justify-content:center;padding:3px 12px;border-radius:999px;font-size:.72rem;font-weight:800;text-align:center}.requests-status.is-pending{background:#d69e2e29;color:#9a6b00}.requests-status.is-approved{background:#38763d24;color:#2f6b34}.requests-status.is-rejected{background:#c2272f1f;color:var(--red-brand)}.requests-status.is-cancelled{background:#78787829;color:#666}.gridtbl-row>.requests-actions{flex-direction:row;gap:6px}.section-metrics.is-money .metric-tile strong{font-size:1.2rem}.payments-head,.payments-row{grid-template-columns:88px 104px minmax(92px,.9fr) minmax(110px,.9fr) 46px 106px minmax(112px,130px) minmax(196px,224px) 110px}.payments-proj-head,.payments-proj-row{grid-template-columns:minmax(150px,1.5fr) minmax(120px,1fr) 118px 118px 118px 118px 118px 68px}.pay-amount{font-variant-numeric:tabular-nums;font-weight:760}.pay-debt{color:var(--red-brand)}.pay-clear{color:var(--green-success)}.pay-client{color:var(--text-muted)}.pay-num{font-variant-numeric:tabular-nums;color:var(--text-muted)}.pay-obs{color:var(--text-muted)}.pay-project-link{border:none;color:var(--red-brand);font:inherit;font-weight:760;cursor:pointer}.pay-project-link:hover,.pay-project-link:focus-visible{text-decoration:underline;outline:none}.pay-summary{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,4fr);gap:14px}@media(max-width:1180px){.pay-summary{grid-template-columns:minmax(0,1fr)}}.pay-summary-card{display:grid;gap:11px;padding:13px 15px 15px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 1px 2px #0f17180d}.pay-summary-title{display:flex;align-items:center;gap:9px}.pay-summary-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px}.pay-summary-card.is-in .pay-summary-icon{background:#38763d21;color:#2f6b34}.pay-summary-card.is-out .pay-summary-icon{background:#d69e2e29;color:#9a6b00}.pay-summary-title strong{color:var(--gray-brand);font-size:.92rem;font-weight:820}.pay-summary-title span{color:var(--text-muted);font-size:.72rem;font-weight:760;text-transform:uppercase;letter-spacing:.02em}.pay-summary-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px}.pay-summary-tiles .metric-tile{flex-direction:column;align-items:flex-start;gap:3px;min-height:0;border:none;border-radius:10px;background:var(--surface-muted);padding:10px 12px}.pay-summary-tiles .metric-tile strong{font-size:1.16rem}.pay-summary-tiles .metric-tile span{max-width:none}.pay-commission{display:grid;gap:2px;min-width:0}.pay-com-badge{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;max-width:100%;overflow:hidden;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:800;white-space:nowrap;text-overflow:ellipsis}.pay-com-badge.is-liquidada{background:#38763d24;color:#2f6b34}.pay-com-badge.is-paid_unconfirmed{background:#d69e2e29;color:#9a6b00}.pay-com-badge.is-confirmed_unpaid{background:#2f6eb424;color:#2a5d99}.pay-com-badge.is-pending{background:#78787824;color:#6a6a6a}.pay-com-badge.is-rejected{background:#c2272f1f;color:var(--red-brand)}.pay-com-badge.is-observed{background:#d69e2e29;color:#9a6b00}.pay-com-badge.is-mov-cobro{background:#38763d24;color:#2f6b34}.pay-com-badge.is-mov-comision{background:#d69e2e29;color:#9a6b00}.pay-com-badge.is-agg-liquidada{background:#38763d24;color:#2f6b34}.pay-com-badge.is-agg-partial{background:#d69e2e29;color:#9a6b00}.pay-com-badge.is-agg-pending{background:#78787824;color:#6a6a6a}.pay-com-badge.is-agg-none{background:#c2272f1a;color:var(--red-brand)}.pay-comm-list{display:grid;gap:8px;margin:8px 0 0;padding:0;list-style:none}.pay-comm-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid var(--surface-muted);border-radius:8px;background:#f7f7f6b8;padding:8px 10px}.pay-comm-who{display:grid;gap:3px;min-width:0}.pay-comm-email{overflow:hidden;color:var(--text-main);font-size:.84rem;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.pay-comm-amount{white-space:nowrap}.pay-comm-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.proyectista-multi{display:grid;gap:8px}.proyectista-chips{display:flex;flex-wrap:wrap;gap:6px}.proyectista-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-muted);color:var(--text-main);font-size:.8rem;font-weight:700}.proyectista-chip button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:999px;background:#7878782e;color:var(--text-muted);cursor:pointer}.proyectista-chip button:hover{background:#c2272f29;color:var(--red-brand)}.proyectista-empty{color:var(--text-muted);font-size:.8rem}.pay-com-badge.is-hist{background:#7878781f;color:var(--text-muted)}.pay-com-badge.is-commission_paid,.pay-com-badge.is-payment_marked_paid{background:#d69e2e29;color:#9a6b00}.pay-com-badge.is-commission_confirmed{background:#38763d24;color:#2f6b34}.pay-com-badge.is-payment_voided,.pay-com-badge.is-commission_paid_undone,.pay-com-badge.is-commission_confirmed_undone{background:#c2272f1f;color:var(--red-brand)}.pay-approval{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.pay-appr{display:inline-flex;align-items:center;gap:4px;min-height:27px;padding:3px 8px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-muted);font:inherit;font-size:.72rem;font-weight:760;white-space:nowrap;cursor:pointer}.pay-appr.is-confirm:not(:disabled){border-color:#38763d66;color:#2f6b34}.pay-appr.is-confirm.is-on{background:#38763d24;border-color:#38763d80;color:#2f6b34}.pay-appr.is-reject.is-on{background:#c2272f1f;border-color:#c2272f73;color:var(--red-brand)}.pay-appr.is-observe.is-on{background:#d69e2e2e;border-color:#d69e2e80;color:#9a6b00}.pay-appr.is-icon{padding:3px 6px}.pay-comm-note{color:var(--text-muted);font-size:.76rem;font-style:italic}.pay-appr:disabled{opacity:.45;cursor:not-allowed}.pay-actions{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:4px}.pay-act.icon-button{width:30px;height:30px;color:var(--text-muted)}.pay-act.icon-button:hover{color:var(--gray-brand)}.payments-row .pay-approval{flex-direction:row;flex-wrap:wrap;justify-content:center}.payments-row .pay-actions{flex-direction:row;flex-wrap:nowrap;justify-content:center}.pay-edit-card{max-width:460px}.pay-reason-card{max-width:440px}.primary-action.is-danger{background:var(--red-brand);border-color:var(--red-brand);color:#fff}.pay-global-hist{display:inline-flex;align-items:center;gap:6px;margin-left:auto;min-height:38px;padding:0 14px;border:1px solid rgba(194,39,47,.35);border-radius:9px;background:#c2272f0f;color:var(--red-brand);font:inherit;font-size:.82rem;font-weight:780;cursor:pointer}.pay-global-hist:hover,.pay-global-hist:focus-visible{background:#c2272f1c;outline:none}.pay-globalhist-card{width:min(940px,100%);max-width:940px}.pay-globalhist-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.pay-globalhist-cards .metric-tile{flex-direction:column;align-items:flex-start;gap:3px;min-height:0;border:none;border-radius:10px;background:var(--surface-muted);padding:10px 12px}.pay-globalhist-cards .metric-tile strong{font-size:1.16rem}.pay-globalhist-cards .metric-tile span{max-width:none}.pay-globalhist-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.pay-globalhist-filters .filter-search{flex:1 1 220px}.pay-hist-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.pay-hist-mov{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--surface-muted);border-radius:8px;background:#f7f7f6b8;padding:8px 11px}.pay-hist-when{color:var(--text-muted);font-size:.74rem;font-variant-numeric:tabular-nums;white-space:nowrap}.pay-hist-desc{display:grid;gap:1px;min-width:0}.pay-hist-proj{overflow:hidden;color:var(--gray-brand);font-size:.85rem;font-weight:740;text-overflow:ellipsis;white-space:nowrap}.pay-hist-sub{overflow:hidden;color:var(--text-muted);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.pay-hist-amount{white-space:nowrap}.pay-hist-amount.is-in{color:var(--green-success)}.pay-hist-amount.is-out{color:#9a6b00}.pay-chip{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:3px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.76rem;font-weight:760;cursor:pointer}.pay-chip:hover:not(:disabled){border-color:var(--gray-brand)}.pay-chip:disabled{opacity:.55;cursor:default}.pay-chip.is-on{border-color:#38763d80;background:#38763d1f;color:#2f6b34}.pay-chip-ghost{color:var(--text-muted)}.pay-history-card{max-width:620px}.pay-history-body{max-height:60vh;overflow-y:auto;padding-right:4px}.pay-history-empty{padding:8px 2px;color:var(--text-muted);font-size:.86rem}.pay-history-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.pay-history-item{display:grid;gap:3px;border:1px solid var(--surface-muted);border-radius:8px;background:#f7f7f6b8;padding:8px 10px}.pay-history-line{display:flex;align-items:center;justify-content:space-between;gap:10px}.pay-history-when{color:var(--text-muted);font-size:.74rem;font-variant-numeric:tabular-nums;white-space:nowrap}.pay-history-detail{margin:0;color:var(--text-main);font-size:.84rem;line-height:1.35}.pay-history-actor{color:var(--text-muted);font-size:.74rem}.payments-viewtoggle{display:inline-flex;border:1px solid var(--border);border-radius:9px;overflow:hidden}.payments-viewtoggle button{height:38px;padding:0 14px;border:none;background:var(--surface);color:var(--text-muted);cursor:pointer;font-size:.82rem;font-weight:720}.payments-viewtoggle button+button{border-left:1px solid var(--border)}.payments-viewtoggle button.is-active{background:var(--red-brand);color:#fff}.pay-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:4px 0 6px}.pay-detail-metrics .metric-tile{min-height:66px;flex-direction:column;align-items:flex-start;gap:4px}.pay-detail-metrics .metric-tile strong{font-size:1.15rem}.pay-detail-section{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.pay-detail-title{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.pay-detail-folders{display:flex;flex-wrap:wrap;gap:8px}.pay-detail-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.pay-detail-field{display:grid;gap:2px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.pay-detail-field span{color:var(--text-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.pay-detail-field strong{font-size:.92rem}.pay-detail-tags{display:flex;flex-wrap:wrap;gap:6px}.pay-tag{padding:3px 11px;border-radius:999px;background:#c2272f17;color:var(--red-brand);font-size:.78rem;font-weight:700}.drive-tree{margin-top:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.tree-row{display:flex;align-items:center;gap:8px;min-height:44px;padding-right:10px;border-bottom:1px solid rgba(60,60,59,.06)}.tree-row:hover{background:#c2272f09}.tree-node-main{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.tree-node-main>svg{color:var(--red-brand);flex:0 0 auto}.tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;background:transparent;color:var(--text-muted);cursor:pointer;flex:0 0 auto}.tree-toggle-spacer{display:inline-block;width:22px;flex:0 0 auto}.tree-chevron{transition:transform .15s ease}.tree-chevron.is-open{transform:rotate(90deg)}.tree-name{display:flex;align-items:center;gap:8px;min-width:0;padding:0;border:none;background:transparent;color:var(--gray-brand);text-align:left;cursor:pointer}.tree-name:disabled{cursor:default}.tree-name strong{overflow:hidden;font-size:.9rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.tree-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.tree-hint{min-height:34px;display:flex;align-items:center;color:var(--text-muted);font-size:.8rem;font-style:italic;border-bottom:1px solid rgba(60,60,59,.06)}.trash-hero{border-left:4px solid var(--red-brand)}.trash-hero-lead{display:flex;align-items:center;gap:14px;min-width:0}.trash-hero-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 auto;border-radius:12px;background:#c2272f17;color:var(--red-brand)}.trash-hero p{margin-top:0}.trash-metrics{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:12px;align-items:stretch}.trash-metrics .metric-tile strong{color:var(--gray-brand)}.trash-metrics .metric-tile.is-ok strong{color:var(--green-success)}.trash-metrics .metric-tile.is-restore strong{color:var(--red-brand)}.trash-metrics .metric-tile.is-muted strong{color:var(--text-muted)}.trash-history-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:58px;padding:8px 16px;border:1px dashed rgba(60,60,59,.4);border-radius:10px;background:transparent;color:var(--gray-brand);cursor:pointer;font-size:.82rem;font-weight:760;white-space:nowrap}.trash-history-button:hover,.trash-history-button:focus-visible{border-color:var(--red-brand);background:#c2272f0d;color:var(--red-brand);outline:none}.trash-filters{margin:0;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fffffff0;box-shadow:0 18px 52px #3c3c3b12}.trash-clear-filters{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border:1px dashed rgba(194,39,47,.45);border-radius:9px;background:transparent;color:var(--red-brand);cursor:pointer;font-size:.82rem;font-weight:760;white-space:nowrap}.trash-clear-filters:hover,.trash-clear-filters:focus-visible{background:#c2272f12;outline:none}.trash-results{margin-left:auto;color:var(--text-muted);font-size:.8rem;font-weight:700;white-space:nowrap}.gridtbl{display:grid;gap:1px;border:1px solid var(--border);border-radius:10px;background:var(--border);box-shadow:0 18px 52px #3c3c3b12}.gridtbl>.gridtbl-head:first-child>*:first-child{border-top-left-radius:9px}.gridtbl>.gridtbl-head:first-child>*:last-child{border-top-right-radius:9px}.gridtbl>.gridtbl-row:last-child>*:first-child,.gridtbl>.gridtbl-head:last-child>*:first-child{border-bottom-left-radius:9px}.gridtbl>.gridtbl-row:last-child>*:last-child,.gridtbl>.gridtbl-head:last-child>*:last-child{border-bottom-right-radius:9px}.gridtbl-head,.gridtbl-row{display:grid;gap:1px;align-items:stretch;min-width:0;background:var(--border)}.gridtbl-head>*,.gridtbl-row>*{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;padding:9px 12px;background:var(--surface);text-align:center}.gridtbl-head>*{min-height:42px;background:var(--surface);color:var(--gray-brand);font-size:.72rem;font-weight:820;text-transform:uppercase}.gridtbl-row>*{min-height:52px;font-size:.84rem}.gridtbl-head .column-hint{flex-direction:row;justify-content:center}.gridtbl-clip{display:block;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gridtbl>.empty-state{background:var(--surface)}.cell-date{gap:1px;color:var(--text-muted);font-variant-numeric:tabular-nums}.cell-date-day{color:var(--gray-brand);font-size:.8rem;font-weight:640}.cell-date-time{font-size:.72rem}.gridtbl-row>.trash-uni-actions{flex-direction:row}.trash-uni-head,.trash-uni-row{grid-template-columns:104px minmax(140px,1.4fr) 116px minmax(120px,1fr) 190px minmax(160px,1.1fr) 216px}.trash-name{font-size:.92rem}.trash-loc{color:var(--text-muted);font-size:.8rem}.trash-by>strong{max-width:100%;overflow:hidden;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.trash-kind{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-size:.74rem;font-weight:800}.trash-kind svg{flex:0 0 auto}.trash-kind.is-client{background:#3c3c3b1a;color:var(--gray-brand)}.trash-kind.is-project{background:#c2272f1a;color:var(--red-brand)}.trash-kind.is-folder{background:#d69e2e29;color:#9a6b00}.trash-kind.is-file{background:#38763d24;color:#2f6b34}.trash-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.7rem;font-weight:800;white-space:nowrap}.trash-status:before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:currentColor}.trash-status.is-ok{background:#38763d24;color:#2f6b34}.trash-status.is-gone{background:#78787829;color:#666}.trash-uni-actions{flex-direction:row;gap:8px}.trash-restore{border-color:#2f855a80;color:var(--green-success)}.trash-restore:hover:not(:disabled),.trash-restore:focus-visible{border-color:var(--green-success);background:#2f855a14;color:var(--green-delivered)}.trash-empty{grid-template-columns:56px minmax(0,1fr);min-height:120px}.trash-empty-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#c2272f14;color:var(--red-brand)}.trash-empty h3,.trash-history-filters{margin:0}.trash-history-list{max-height:44vh;overflow:hidden auto;box-shadow:none}.trash-history-head,.trash-history-row{grid-template-columns:108px minmax(140px,1.3fr) 108px minmax(120px,1fr) minmax(150px,1fr)}.trash-history-head{position:sticky;top:0;z-index:1}.pending-delete-note{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:#d69e2e24;color:#9a6b00;font-size:.82rem;font-weight:700}.gridtbl-head{background:var(--red-brand)}.gridtbl-head>*{background:var(--red-brand);color:#fff}.gridtbl-head span,.gridtbl-head strong{color:#fff}.gridtbl-head .column-hint-trigger{color:#ffffffd1}.gridtbl-head .column-hint-trigger:hover,.gridtbl-head .column-hint-trigger:focus-visible{color:#fff;background:#ffffff2e}.task-metric-groups{display:flex;align-items:stretch;gap:22px;padding:16px 20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 12px 34px #3c3c3b0f}.task-metric-group{display:grid;gap:9px;align-content:start;min-width:0}.task-metric-group+.task-metric-group{border-left:1px solid var(--border);padding-left:22px}.task-metric-group-label{color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.task-metric-pair{display:flex;gap:10px}.task-metric-tile{flex:1;display:grid;gap:6px;align-content:center;min-width:0;min-height:74px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 6px 18px #3c3c3b0d;padding:12px 15px;cursor:pointer;text-align:left;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.task-metric-tile strong{font-size:1.8rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:var(--gray-brand)}.task-metric-tile span{color:var(--text-muted);font-size:.8rem;font-weight:560;line-height:1.2}.task-metric-tile:hover,.task-metric-tile:focus-visible{border-color:#c2272f47;box-shadow:0 12px 30px #3c3c3b1a;outline:none;transform:translateY(-1px)}.task-metric-tile.is-active{border-color:#c2272f80;box-shadow:0 0 0 1px #c2272f47}@media(max-width:1180px){.task-metric-groups{flex-direction:column}}.tasks-table{margin-top:16px}.tasks-head,.tasks-row{grid-template-columns:86px minmax(150px,1.2fr) minmax(104px,.68fr) minmax(82px,.5fr) 116px minmax(78px,.44fr) 48px minmax(198px,224px)}.tasks-date-cell{justify-content:center}.tasks-date{font-size:.8rem;color:var(--gray-brand);font-variant-numeric:tabular-nums}.tasks-email{font-size:.68rem}.tasks-project-cell{border:0;background:var(--surface);font:inherit;text-align:left;align-items:flex-start;cursor:pointer}.tasks-project-cell:hover strong{color:var(--red-brand);text-decoration:underline}.tasks-action-cell .icon-button.act-ok{color:#2f855a}.tasks-action-cell .icon-button.act-warn{color:#b7791f}.tasks-action-cell .icon-button.act-danger{color:var(--red-brand)}.folder-tree{display:grid;gap:3px;max-height:58vh;overflow-y:auto}.folder-row{display:flex;align-items:center;gap:8px;width:100%;border:1px solid transparent;border-radius:8px;background:var(--surface);padding:8px 12px;font:inherit;font-size:.88rem;color:var(--gray-brand);text-decoration:none;cursor:pointer;text-align:left}.folder-row:hover{border-color:var(--border);background:var(--surface-muted)}.folder-name{flex:1 1 auto;min-width:0}.folder-caret{flex:0 0 auto;color:var(--text-muted);transition:transform .12s ease}.folder-caret.is-open{transform:rotate(90deg)}.folder-caret-space{width:14px;flex:0 0 auto}.folder-loading{margin:0;padding:4px 12px;color:var(--text-muted);font-size:.8rem}.manage-danger-actions{margin-right:auto;display:inline-flex;gap:8px}.task-toolbar-actions{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.task-history-btn.is-on{background:var(--red-brand);color:#fff;border-color:var(--red-brand)}.task-date-filter{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}.task-date-filter input{min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.82rem;padding:0 8px}.task-date-filter span{color:var(--text-muted)}.task-history-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.task-history-toolbar .task-history-search{flex:1 1 240px}.tasks-head>*{font-weight:720}.tasks-cell strong{color:var(--gray-brand);font-weight:600}.tasks-sub{color:var(--text-muted);font-size:.74rem;font-weight:400;font-style:italic}.tasks-state{display:inline-flex;align-items:center;gap:5px;color:var(--text-muted);font-size:.8rem;font-weight:500}.tasks-state svg{flex:0 0 auto;opacity:.7}.tasks-deadline{color:var(--text-muted);font-size:.8rem;font-weight:500;font-variant-numeric:tabular-nums}.tasks-deadline-alert{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:6px;font-size:.76rem;font-weight:600;font-variant-numeric:tabular-nums}.tasks-deadline-alert svg{flex:0 0 auto}.tasks-deadline-alert.is-over{background:#c2272f1a;color:var(--red-brand)}.tasks-deadline-alert.is-soon{background:#b7791f21;color:var(--amber-warning)}.gridtbl-row>.tasks-adj-cell{padding-left:6px;padding-right:6px}.tasks-adj-btn{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:2px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-muted);font-size:.8rem;font-weight:600;cursor:pointer;transition:border-color .12s ease,color .12s ease}.tasks-adj-btn:hover{border-color:#c2272f66;color:var(--red-brand)}.tasks-adj-empty{color:var(--text-muted);opacity:.45}.attach-list{display:grid;gap:6px;margin:4px 0 0;padding:0;max-height:60vh;overflow-y:auto;list-style:none}.attach-row{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:10px;width:100%;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:10px 12px;text-align:left;color:var(--text-main);cursor:pointer;transition:border-color .12s ease}.attach-row:hover{border-color:#c2272f59}.attach-row-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem}.attach-row-view{color:var(--red-brand);font-size:.78rem;font-weight:700}.attach-preview{display:grid;gap:10px}.attach-preview-bar{display:flex;align-items:center;gap:10px}.attach-preview-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gray-brand);font-size:.9rem;font-weight:600}.attach-preview-frame{width:100%;height:68vh;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.task-toolbar-info{display:flex;align-items:center;justify-content:space-between;gap:12px}.task-history-btn{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:38px;padding:0 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--red-brand);font-size:.86rem;font-weight:640;cursor:pointer;transition:background .12s ease,border-color .12s ease}.task-history-btn:hover,.task-history-btn:focus-visible{border-color:#c2272f66;background:#c2272f14;outline:none}.task-history-search{margin-top:4px}.task-history-list{display:grid;gap:4px;margin:10px 0 0;padding:0;max-height:60vh;overflow-y:auto;list-style:none}.task-history-item{display:grid;grid-template-columns:170px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:8px 12px}.task-history-action{color:var(--gray-brand);font-size:.82rem;font-weight:640}.task-history-task{color:var(--text-main);font-size:.84rem}.task-history-meta{color:var(--text-muted);font-size:.74rem;white-space:nowrap}.tasks-draft-tag{display:inline-flex;align-items:center;margin-top:1px;padding:2px 8px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:.62rem;font-weight:820;letter-spacing:.04em;text-transform:uppercase}.gridtbl-row>.tasks-action-cell{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:3px 0;padding:6px 4px;overflow:hidden;min-width:0}.tasks-action-group{display:flex;flex-direction:row;align-items:center;gap:2px;padding:0 4px}.tasks-action-group:first-child{padding-left:0}.tasks-action-group:last-child{padding-right:0}.tasks-action-group+.tasks-action-group{border-left:1px solid var(--border)}.tasks-action-cell .icon-button.compact-icon{width:28px;height:28px;padding:0}.tasks-action-cell .icon-button.compact-icon svg{width:15px;height:15px}.tasks-action-cell .icon-button:disabled{opacity:.4}.tasks-muted-dash{color:var(--text-muted)}.tasks-row.is-observed>*{background:#fbbf242e}.tasks-row.is-rejected>*{background:#ed893626}.tasks-row.is-delivered>*{background:var(--surface-muted)}.tasks-row.is-delivered .tasks-cell-title strong,.tasks-row.is-delivered .tasks-cell-title .tasks-sub,.tasks-row.is-delivered .tasks-sub,.tasks-row.is-delivered .tasks-email,.tasks-row.is-delivered .tasks-state,.tasks-row.is-delivered .tasks-date{color:var(--text-muted)}.tasks-row.is-delivered .icon-button{opacity:.5}.tasks-row.is-delivered .icon-button:hover{opacity:1}.tasks-row.is-discarded>*{background:#c2272f14}.tasks-row.is-discarded .tasks-cell-title strong,.tasks-row.is-discarded .tasks-cell-title .tasks-sub{text-decoration:line-through;opacity:.72}.tasks-discard-tag{display:inline-flex;align-items:center;max-width:100%;margin-top:1px;padding:2px 8px;border-radius:999px;background:#c2272f24;color:var(--red-brand);font-size:.66rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-restore-btn{min-height:32px;padding:0 12px;font-size:.82rem}.icon-button.compact-icon.solid{border-color:var(--red-brand);background:var(--red-brand);color:#fff}.icon-button.compact-icon.solid:hover,.icon-button.compact-icon.solid:focus-visible{border-color:#a81f27;background:#a81f27;color:#fff}.icon-button.compact-icon.solid.is-active{border-color:#8f1a21;background:#8f1a21}.icon-button.compact-icon.success{border-color:var(--green-success);background:var(--green-success);color:#fff}.icon-button.compact-icon.success:hover,.icon-button.compact-icon.success:focus-visible{border-color:#266f49;background:#266f49;color:#fff}.column-hint-tooltip:has(.column-hint-legend){width:320px;max-width:320px}.column-hint-legend{display:grid;gap:7px}.column-hint-legend em{font-style:normal;font-weight:700;opacity:.82}.column-hint-legend-row{display:grid;grid-template-columns:18px 1fr;align-items:center;gap:9px;text-align:left;font-weight:600}.column-hint-legend-icon{display:inline-flex;align-items:center;justify-content:center;color:#fff}.task-review-body{display:grid;gap:14px;padding:4px 2px 2px}.task-review-hint{color:var(--text-muted);font-size:.86rem;line-height:1.45}.task-review-options{display:grid;gap:9px}.task-review-option{display:grid;grid-template-columns:26px 1fr;align-items:start;gap:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:12px 14px;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.task-review-option:hover{border-color:#3c3c3b47}.task-review-option-icon{display:inline-flex;align-items:center;justify-content:center;margin-top:1px;color:var(--text-muted)}.task-review-option-text{display:grid;gap:2px;min-width:0}.task-review-option-text strong{color:var(--gray-brand);font-size:.92rem;font-weight:780}.task-review-option-text span{color:var(--text-muted);font-size:.78rem;line-height:1.35}.task-review-option.is-active{box-shadow:inset 0 0 0 1px currentColor}.task-review-option.is-active.is-approved{border-color:var(--green-success);color:var(--green-success);background:#2f855a0f}.task-review-option.is-active.is-observed{border-color:var(--amber-warning);color:var(--amber-warning);background:#b7791f12}.task-review-option.is-active.is-rejected{border-color:var(--red-brand);color:var(--red-brand);background:#c2272f0f}.task-review-option.is-active .task-review-option-icon{color:currentColor}.task-review-note{display:grid;gap:6px}.task-review-note>span{color:var(--gray-brand);font-size:.8rem;font-weight:720}.task-review-note textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-main);font:inherit;font-size:.88rem;padding:9px 11px;resize:vertical}.task-review-note textarea:focus{outline:none;border-color:var(--red-brand)}.tasks-review-note{display:inline-flex;align-items:center;gap:4px;max-width:100%;margin-top:1px;color:var(--amber-warning);font-size:.72rem;font-weight:620}.tasks-review-note svg{flex:0 0 auto}
