:root{--font-ui: "Anuphan", "Noto Sans Thai", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Consolas, monospace;--blue: #185fa5;--blue-50: #efe6fb;--blue-100: #B5D4F4;--blue-600: #185FA5;--blue-800: #0C447C;--blue-900: #042C53;--green: #3B6D11;--green-50: #EAF3DE;--green-200: #97C459;--amber: #854F0B;--amber-50: #FAEEDA;--amber-200: #EF9F27;--red: #A32D2D;--red-50: #FCEBEB;--red-200: #F09595;--gray: #5F5E5A;--gray-50: #F1EFE8;--gray-200: #B4B2A9;--purple: #3C3489;--purple-50: #EEEDFE;--bg: #F4F3EF;--surface: #FFFFFF;--border: rgba(0,0,0,.07);--border-md: rgba(0,0,0,.12);--text: #1C1C1A;--text-2: #5F5E5A;--text-3: #A09E98;--r: 10px;--r-sm: 6px;--sidebar-w: 196px;--sidebar-rail-w: 64px;--sidebar-pill-w: 48px;--sidebar-pill-h: 28px;--chrome-gutter: 22px;--chrome-control-r: 8px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-ui);font-synthesis:none;background:var(--bg);color:var(--text);font-size:14px;line-height:1.6;display:flex;flex-direction:column;height:100vh;overflow:hidden}.layout{display:flex;flex:1;overflow:hidden}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:30;transition:width .24s cubic-bezier(.22,1,.36,1),box-shadow .22s ease}.sb-logo{height:58px;min-height:58px;padding:0 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:9px;width:var(--sidebar-w);overflow:hidden;transition:width .22s cubic-bezier(.22,1,.36,1),padding .22s ease}.sb-logo>div:not(.sb-dot){flex-shrink:0;white-space:nowrap;transition:opacity .14s ease,transform .22s cubic-bezier(.22,1,.36,1)}.sb-dot{width:34px;height:34px;display:block;flex-shrink:0}.sb-dot img{width:100%;height:100%;display:block;object-fit:contain}.sb-brand{font-size:12px;font-weight:600;color:var(--text);line-height:1.3}.sb-brand-sub{font-size:10px;color:var(--text-3);font-weight:400}.sb-nav{padding:12px 8px;flex:1;overflow-y:auto;overflow-x:hidden;width:var(--sidebar-w);transition:width .22s cubic-bezier(.22,1,.36,1),padding .22s ease}.sb-section{font-size:9px;font-weight:600;color:var(--text-3);letter-spacing:.7px;text-transform:uppercase;padding:0 8px;margin:12px 0 4px;white-space:nowrap;transition:opacity .14s ease,transform .22s cubic-bezier(.22,1,.36,1)}.sb-section:first-child{margin-top:0}.sb-item{display:flex;align-items:center;gap:8px;width:calc(var(--sidebar-w) - 16px);min-height:var(--sidebar-pill-h);padding:7px 10px;border-radius:var(--chrome-control-r);cursor:pointer;color:var(--text-2);font-size:12px;font-weight:500;margin-bottom:5px;transition:background-color .12s,border-color .12s,box-shadow .12s,color .16s ease;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden}.sb-item svg{width:16px;height:16px;flex-shrink:0;opacity:.74;transition:opacity .12s,transform .22s cubic-bezier(.22,1,.36,1)}.sb-item:hover{background:var(--bg);color:var(--text)}.sb-item:hover svg{opacity:1}.sb-item.active{background:var(--blue-50);color:var(--blue-800)}.sb-item.active svg{opacity:1;fill:var(--blue-800);stroke:var(--blue-800)}.sb-item .sb-badge{margin-left:auto;font-size:9px;font-weight:700;padding:1px 6px;border-radius:10px;background:var(--amber-50);color:var(--amber);transition:opacity .14s ease,transform .22s cubic-bezier(.22,1,.36,1)}.sb-sub{margin-left:4px}.sb-sub-item{display:flex;align-items:center;gap:7px;width:calc(var(--sidebar-w) - 20px);min-height:var(--sidebar-pill-h);padding:6px 8px 6px 20px;border-radius:var(--chrome-control-r);cursor:pointer;color:var(--text-3);font-size:11px;margin-bottom:5px;border-left:2px solid transparent;transition:background-color .12s,border-color .12s,box-shadow .12s,color .16s ease;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden}.sb-sub-item svg{width:15px;height:15px;flex-shrink:0;transition:opacity .12s,transform .22s cubic-bezier(.22,1,.36,1)}.sb-sub-item:hover{background:var(--bg);color:var(--text-2)}.sb-sub-item.active{color:var(--blue);font-weight:600;border-left-color:var(--blue);background:var(--blue-50)}.sb-sub-item .sb-badge{margin-left:auto;font-size:9px;font-weight:700;padding:1px 6px;border-radius:10px;background:var(--amber-50);color:var(--amber);transition:opacity .14s ease,transform .22s cubic-bezier(.22,1,.36,1)}.sb-footer{padding:8px;border-top:1px solid var(--border);width:var(--sidebar-w);overflow:hidden;transition:width .22s cubic-bezier(.22,1,.36,1)}.sb-user{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--r-sm);cursor:pointer;transition:background .12s}.sb-user:hover{background:var(--bg)}.sb-avatar{width:28px;height:28px;border-radius:50%;background:var(--blue-50);color:var(--blue-800);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sb-uname{font-size:12px;font-weight:600;color:var(--text)}.sb-urole{font-size:10px;color:var(--text-3)}.sidebar.collapsed{width:var(--sidebar-rail-w);overflow:visible}.sidebar.collapsed .sb-logo,.sidebar.collapsed .sb-nav,.sidebar.collapsed .sb-footer{width:var(--sidebar-rail-w);background:transparent;position:relative;z-index:1}.sidebar.collapsed:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--sidebar-rail-w);background:var(--surface);border-right:1px solid var(--border);pointer-events:none;z-index:0;transition:width .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease}.sidebar.collapsed:hover .sb-logo,.sidebar.collapsed:focus-within .sb-logo,.sidebar.collapsed:hover .sb-nav,.sidebar.collapsed:focus-within .sb-nav,.sidebar.collapsed:hover .sb-footer,.sidebar.collapsed:focus-within .sb-footer{width:var(--sidebar-w);background:transparent}.sidebar.collapsed:hover:before,.sidebar.collapsed:focus-within:before{width:var(--sidebar-w);box-shadow:18px 10px 40px #0f172a29}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-logo{border-bottom-color:transparent}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-logo>div:not(.sb-dot){opacity:0;transform:translate(-6px);pointer-events:none}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-brand,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-brand-sub,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-section,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-badge{opacity:0;transform:translate(-6px);pointer-events:none}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item svg{color:var(--text-2);opacity:.76;transform:translate(5px)}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item svg{color:var(--text-2);opacity:.76;transform:translate(-8px)}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item:hover,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item:hover{background:color-mix(in srgb,var(--blue) 10%,var(--surface))}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item.active,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item.active{background:color-mix(in srgb,var(--blue) 14%,var(--surface));border-color:var(--blue-100);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--blue) 10%,transparent)}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item.active svg,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item.active svg{color:var(--blue-800);opacity:1}.sidebar.collapsed:not(:hover):not(:focus-within) .theme-toggle{border-color:transparent}.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.topbar{height:48px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--chrome-gutter);flex-shrink:0}.topbar-left{display:flex;align-items:center;gap:10px}body.sidebar-is-collapsed .topbar-left{gap:12px}.topbar-title{font-size:14px;font-weight:600;color:var(--text)}.topbar-crumb{font-size:12px;color:var(--text-3)}.topbar-right{display:flex;align-items:center;gap:8px}.topbar-btn{width:34px;height:34px;border-radius:var(--chrome-control-r);border:1px solid var(--border-md);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-2);transition:background .12s}.topbar-btn:hover{background:var(--bg)}.topbar-btn svg{width:16px;height:16px}.sidebar-toggle{position:relative;margin-left:-2px}body.sidebar-is-collapsed .sidebar-toggle{margin-left:2px}.sidebar-toggle svg{position:absolute;left:50%;top:50%;transition:opacity .14s ease,transform .18s ease;transform:translate(-50%,-50%) scale(1)}.sidebar-toggle .sidebar-toggle-closed,body.sidebar-is-collapsed .sidebar-toggle .sidebar-toggle-open{opacity:0;transform:translate(-50%,-50%) scale(.82)}body.sidebar-is-collapsed .sidebar-toggle .sidebar-toggle-closed{opacity:1;transform:translate(-50%,-50%) scale(1)}.content{flex:1;overflow-y:auto;padding:20px var(--chrome-gutter)}.view{display:none}.view.active{display:block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;margin-bottom:12px}.card-head{display:flex;align-items:center;gap:9px;padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:14px}.card-num{width:22px;height:22px;border-radius:50%;background:var(--blue-50);color:var(--blue-800);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-title{font-size:13px;font-weight:600;color:var(--text)}.card-subtitle{font-size:11px;color:var(--text-3);margin-left:4px}.txn-modal-backdrop{position:fixed;inset:0;background:#00000073;z-index:310;display:flex;align-items:center;justify-content:center}.txn-modal-card{width:720px;max-width:95vw;max-height:86vh;overflow:auto;padding:0}.txn-modal-card--form{width:680px;max-height:92vh;padding:22px}.txn-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border)}.txn-modal-body{padding:16px}.pmo-modal-backdrop{position:fixed;inset:0;background:#00000073;z-index:310;display:flex;align-items:center;justify-content:center}.pmo-modal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:0 20px 60px #0003;width:560px;max-width:95vw;max-height:90vh;overflow-y:auto;padding:24px}.pmo-modal-card--wide{width:680px}.pmo-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.pmo-modal-title{font-size:15px;font-weight:700;color:var(--text)}.pmo-modal-close{background:none;border:none;cursor:pointer;color:var(--text-3);font-size:20px;line-height:1;padding:2px 4px}.pmo-modal-footer{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.pmo-month-control{display:inline-flex;width:160px;min-width:160px}.pmo-month-trigger{width:100%;height:32px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--font-ui);font-size:12px;padding:6px 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);cursor:pointer}.pmo-month-trigger:hover{border-color:var(--blue-100)}.pmo-month-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pmo-month-trigger b{color:var(--text-3);font-size:10px}.pmo-month-picker{position:fixed;z-index:950;width:286px;background:var(--surface);border:1px solid var(--border-md);border-radius:var(--r);box-shadow:0 20px 60px #00000038;padding:12px;display:none}.pmo-month-picker.is-open{display:block}.pmo-month-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.pmo-month-year{font-size:14px;font-weight:700;color:var(--text)}.pmo-month-nav{width:30px;height:30px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-2);cursor:pointer;font-size:18px;line-height:1}.pmo-month-nav:hover{background:var(--bg);color:var(--text)}.pmo-month-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pmo-month-option{height:34px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text);cursor:pointer;font:inherit;font-size:12px}.pmo-month-option:hover{background:var(--blue-50);border-color:var(--blue-100)}.pmo-month-option.is-selected{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:700}.pmo-month-actions{display:flex;justify-content:flex-end;margin-top:10px}.pmo-month-cancel{border:0;background:transparent;color:var(--text-2);cursor:pointer;font:inherit;font-size:12px;padding:4px 6px}.pmo-month-cancel:hover{color:var(--text)}.txn-title{font-size:14px;font-weight:500;color:var(--text-1,var(--color-text-primary));margin-bottom:4px}.txn-description{font-size:11px;color:var(--text-2,var(--color-text-secondary));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px}.txn-badge-row{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin-top:5px}.txn-muted{font-size:11px;color:var(--text-2,var(--color-text-secondary))}.txn-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;background:var(--bg-2,var(--color-background-secondary));border-radius:var(--r-sm,var(--border-radius-md));padding:10px 12px}.txn-field-label{display:block;font-size:9px;font-weight:500;color:var(--text-3,var(--color-text-tertiary));text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.txn-field-value{font-size:12px;font-weight:500;color:var(--text-1,var(--color-text-primary));overflow-wrap:anywhere}.txn-section{margin-top:14px}.txn-section-title{font-size:9px;font-weight:500;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px}.txn-table-wrap{border:.5px solid var(--border);border-radius:var(--r-sm);overflow:auto}.txn-helper{margin:12px 16px 0;padding:9px 11px;background:var(--blue-50);color:var(--blue);border-radius:var(--r-sm);font-size:11px}.txn-form-subtitle{font-size:11px;color:var(--text-3)}.type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.type-btn{padding:12px 8px;border:1.5px solid var(--border-md);border-radius:var(--r);background:var(--surface);cursor:pointer;text-align:center;transition:all .15s}.type-btn:hover{border-color:var(--blue-100);background:var(--blue-50)}.type-btn.selected{border-color:var(--blue);background:var(--blue-50);box-shadow:0 0 0 3px #185fa51a}.type-code{display:block;font-size:15px;font-weight:700;color:var(--blue-800);margin-bottom:3px;font-family:IBM Plex Mono,monospace}.type-name{display:block;font-size:10px;color:var(--text-3);line-height:1.3}.type-btn.selected .type-name{color:var(--blue-600)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.fg{display:flex;flex-direction:column;gap:4px}.fg label{font-size:11px;font-weight:600;color:var(--text-2);letter-spacing:.1px}.fg input,.fg select,.fg textarea{font-family:var(--font-ui);font-size:13px;padding:7px 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);width:100%;transition:border-color .15s,box-shadow .15s;outline:none}.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #185fa514}.fg input[readonly]{background:var(--bg);color:var(--text-3);border-color:var(--border);cursor:default}.fg input[readonly]:focus{box-shadow:none;border-color:var(--border)}.fg textarea{resize:vertical;min-height:64px}.form-note{font-size:11px;color:var(--text-3);margin-top:6px}.device-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px;margin-bottom:16px}.device-form-grid .fg{min-width:0}.device-form-wide{grid-column:1 / -1}.device-memo-link-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}.device-memo-link-control .btn-sm{height:33px;white-space:nowrap}@media(max-width:640px){.device-form-grid{grid-template-columns:1fr}.device-form-wide{grid-column:auto}.device-memo-link-control{grid-template-columns:1fr}.device-memo-link-control .btn-sm{width:100%}}.items-hdr{display:grid;gap:7px;padding-bottom:6px;margin-bottom:6px;border-bottom:1px solid var(--border)}.items-hdr span{font-size:10px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.3px}.item-row{display:grid;gap:7px;align-items:center;margin-bottom:6px}.ri{font-family:var(--font-ui);font-size:13px;padding:6px 9px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);width:100%;transition:border-color .15s;outline:none}.ri:focus{border-color:var(--blue)}.rm-btn{width:30px;height:30px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:none;color:var(--red);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s;flex-shrink:0}.rm-btn:hover{background:var(--red-50)}.rm-btn svg{width:13px;height:13px}.add-btn{width:100%;margin-top:6px;font-family:var(--font-ui);font-size:12px;font-weight:500;color:var(--blue);background:var(--blue-50);border:1px dashed var(--blue-100);border-radius:var(--r-sm);padding:7px;cursor:pointer;transition:background .12s;text-align:center}.add-btn:hover{background:var(--blue-100)}.total-box{display:flex;align-items:center;justify-content:space-between;background:var(--blue-50);border:1px solid var(--blue-100);border-radius:var(--r-sm);padding:10px 14px;margin-top:10px}.total-label{font-size:12px;font-weight:600;color:var(--blue-800)}.total-val{font-size:18px;font-weight:600;color:var(--blue-900);font-family:IBM Plex Mono,monospace}.row-name{display:grid;grid-template-columns:20px 1fr 30px;gap:6px;align-items:center;margin-bottom:5px}.name-num{font-size:11px;color:var(--text-3);text-align:center}.fs{display:none}.fs.active{display:block}.action-row{display:flex;gap:8px;justify-content:flex-end;padding-top:6px}.btn-primary{font-family:var(--font-ui);font-size:13px;font-weight:600;padding:9px 20px;background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .15s}.btn-primary:hover{background:var(--blue-800)}.btn-ghost{font-family:var(--font-ui);font-size:13px;font-weight:500;padding:9px 16px;background:transparent;color:var(--text-2);border:1px solid var(--border-md);border-radius:var(--r-sm);cursor:pointer;transition:background .15s}.btn-ghost:hover{background:var(--bg)}.form-hint{text-align:center;padding:40px 20px;color:var(--text-3)}.form-hint svg{width:36px;height:36px;margin-bottom:10px;opacity:.4}.form-hint p{font-size:13px}.badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;display:inline-block;white-space:nowrap}.badge-blue{background:var(--blue-50);color:var(--blue-800)}.badge-amber{background:var(--amber-50);color:var(--amber)}.badge-purple{background:var(--purple-50);color:var(--purple)}.mono{font-family:IBM Plex Mono,monospace;font-size:11px}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px}.metric-label{font-size:11px;color:var(--text-3);margin-bottom:4px}.metric-val{font-size:24px;font-weight:600}.metric-sub{font-size:11px;color:var(--text-3);margin-top:2px}.sec-label{font-size:10px;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;margin-top:16px}.sec-label:first-child{margin-top:0}.pend-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;margin-bottom:8px;transition:border-color .15s}.pend-card:hover{border-color:var(--blue-100)}.pend-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.pend-title{font-size:13px;font-weight:600;color:var(--text)}.pend-meta{font-size:11px;color:var(--text-3);margin-top:3px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pend-amount{font-size:14px;font-weight:700;color:var(--blue-800);font-family:IBM Plex Mono,monospace}.pend-detail{font-size:12px;color:var(--text-2);background:var(--bg);border-radius:var(--r-sm);padding:8px 12px;margin-bottom:10px;line-height:1.6}.pend-actions{display:flex;gap:6px}.btn-approve{font-family:var(--font-ui);font-size:12px;font-weight:600;padding:6px 14px;background:var(--green-50);color:var(--green);border:1px solid var(--green-200);border-radius:var(--r-sm);cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .12s}.btn-approve:hover{background:#c0dd97}.btn-reject{font-family:var(--font-ui);font-size:12px;font-weight:500;padding:6px 14px;background:var(--red-50);color:var(--red);border:1px solid var(--red-200);border-radius:var(--r-sm);cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .12s}.btn-reject:hover{background:#f7c1c1}.btn-sm{font-family:var(--font-ui);font-size:12px;padding:6px 12px;background:transparent;color:var(--text-3);border:1px solid var(--border-md);border-radius:var(--r-sm);cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .12s}.btn-sm:hover{background:var(--bg);color:var(--text-2)}.divider{border:none;border-top:1px solid var(--border);margin:16px 0}.filter-row{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;align-items:center}.filter-row select{font-family:var(--font-ui);font-size:12px;padding:6px 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);cursor:pointer;outline:none}.ms-wrap{position:relative}.ms-trigger{font-family:var(--font-ui);font-size:12px;padding:6px 10px;min-width:110px;max-width:220px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);cursor:pointer;outline:none;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ms-trigger:focus,.ms-trigger:hover{border-color:var(--blue)}.ms-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:60;min-width:220px;max-height:300px;overflow-y:auto;background:var(--surface);border:1px solid var(--border-md);border-radius:var(--r-sm);box-shadow:0 6px 20px #0000001f;padding:8px}.ms-panel .ms-search{width:100%;box-sizing:border-box;font-size:12px;padding:6px 8px;border:1px solid var(--border-md);border-radius:var(--r-sm);outline:none;margin-bottom:6px}.ms-actions{display:flex;gap:6px;margin-bottom:6px}.ms-actions button{font-size:11px;padding:3px 8px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--bg);color:var(--text-2);cursor:pointer}.ms-actions button:hover{background:var(--blue-50, #E6F1FB);color:var(--blue)}.ms-option{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:var(--r-sm);font-size:12px;cursor:pointer}.ms-option:hover{background:var(--bg)}.ms-option input{width:14px;height:14px;accent-color:var(--blue);cursor:pointer}.ms-option.ms-hidden{display:none}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll table{min-width:820px}.lic-tab-btn{padding:5px 14px;font-size:12px;font-weight:400;font-family:inherit;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text-2);cursor:pointer;transition:background .12s,color .12s,box-shadow .12s;white-space:nowrap}.lic-tab-btn:hover{background:var(--surface);color:var(--text)}.lic-tab-btn.lic-tab-active{background:var(--surface)!important;color:var(--blue-800)!important;font-weight:600;box-shadow:0 1px 4px #0000001a;border-bottom-color:transparent!important}.lic-expand{display:inline-block;transition:transform .15s;margin-right:4px;font-size:10px;color:var(--text-3)}.filter-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-bottom:14px}.filter-control--search{flex:1 1 263px;min-width:180px;max-width:460px}.filter-search,.filter-toolbar input[type=search],.filter-toolbar input[type=text].filter-search{width:100%;min-width:0;height:38px;min-height:38px;box-sizing:border-box;font-family:var(--font-ui);font-size:12px;padding:7px 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);outline:none}.filter-toolbar select,.actual-spend-toolbar select,.filter-input,.filter-select{font-family:var(--font-ui);font-size:12px;padding:7px 10px;width:100%;min-width:0;height:38px;min-height:38px;box-sizing:border-box;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);cursor:pointer}.filter-toolbar input[type=month],.filter-toolbar input[type=date],.actual-spend-toolbar input[type=month],.actual-spend-toolbar input[type=date],.filter-control input[type=month],.filter-control input[type=date],.filter-date,.filter-month{font-family:var(--font-ui);font-size:12px;padding:7px 10px;width:100%;min-width:0;height:38px;min-height:38px;box-sizing:border-box;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text)}.filter-control{display:flex;flex:0 0 169px;flex-direction:column;align-items:stretch;gap:0;min-width:0}.filter-control:has(input[type=month]),.filter-control:has(input[type=date]){flex-basis:130px}.filter-control--compact,.filter-control--date,.filter-control:has(#as-year),.filter-control:has(#as-from),.filter-control:has(#as-to),.filter-control:has(#as-manual-from),.filter-control:has(#as-manual-to),.filter-control:has(#bva-year),.filter-control:has(#bset-year),.filter-control:has(#sl-forecast-period){flex-basis:130px}.filter-toolbar--dense .filter-control{flex-basis:160px}.filter-toolbar--dense .filter-control--compact,.filter-toolbar--dense .filter-control--date,.filter-toolbar--dense .filter-control:has(#as-year),.filter-toolbar--dense .filter-control:has(#as-from),.filter-toolbar--dense .filter-control:has(#as-to),.filter-toolbar--dense .filter-control:has(#as-manual-from),.filter-toolbar--dense .filter-control:has(#as-manual-to){flex-basis:130px}.filter-toolbar--single-line{display:grid;grid-template-columns:var(--filter-toolbar-columns, minmax(180px,1.4fr) minmax(120px,.9fr) minmax(130px,.9fr) 130px 130px auto);gap:8px;align-items:end}.filter-toolbar--single-line .filter-control,.filter-toolbar--single-line .filter-control--search,.filter-toolbar--single-line .ms-wrap{width:auto;min-width:0;max-width:none;flex:initial}.filter-toolbar--single-line .filter-actions{min-width:max-content;margin-left:0;justify-content:flex-end}.filter-toolbar--actual-report{--filter-toolbar-columns: 130px 130px 130px minmax(120px,.9fr) minmax(120px,.9fr) minmax(120px,.9fr) minmax(145px,.95fr) auto}.filter-toolbar--actual-manual{--filter-toolbar-columns: minmax(130px,1.35fr) minmax(90px,.85fr) minmax(90px,.85fr) minmax(110px,.9fr) 100px 100px minmax(110px,.9fr) auto}.filter-toolbar--device{--filter-toolbar-columns: minmax(180px,1.35fr) minmax(90px,.85fr) minmax(90px,.85fr) minmax(90px,.85fr) minmax(90px,.85fr) minmax(90px,.85fr) auto}.filter-toolbar--license{--filter-toolbar-columns: minmax(220px,1.35fr) minmax(120px,.85fr) minmax(140px,.9fr) minmax(150px,.95fr) auto}.filter-toolbar--resource-style{margin-bottom:12px}.filter-toolbar--resource-style .filter-control,.filter-toolbar--resource-style .filter-control--search,.filter-toolbar--resource-style .ms-wrap{flex:1 1 150px;max-width:none}.filter-toolbar--resource-style .filter-control--compact,.filter-toolbar--resource-style .filter-control--date{flex:0 1 150px}.filter-action-row{display:flex;gap:8px;align-items:flex-end;flex-wrap:nowrap;margin:0 0 14px}.filter-action-row .filter-control--search{flex:1 1 360px;max-width:none}.filter-action-row .filter-actions{margin-left:auto}.filter-action-row .filter-meta{align-self:center;font-size:11px;color:var(--text-3);white-space:nowrap}.actual-spend-toolbar{display:grid;gap:8px;align-items:end;margin-bottom:12px}.actual-spend-toolbar--report{grid-template-columns:repeat(7,minmax(0,1fr))}.actual-spend-toolbar--manual{grid-template-columns:repeat(6,minmax(0,1fr))}.actual-spend-toolbar .filter-control,.actual-spend-toolbar .filter-control--compact,.actual-spend-toolbar .filter-control--date,.actual-spend-toolbar .ms-wrap{width:auto;min-width:0;max-width:none;flex:initial}.actual-spend-actions{padding-top:10px;border-top:1px solid var(--border);align-items:flex-end}.actual-spend-actions .filter-control--search{max-width:none}@media(max-width:1100px){.actual-spend-toolbar--report,.actual-spend-toolbar--manual{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:960px){.actual-spend-actions{flex-wrap:wrap}.actual-spend-actions .filter-control--search{flex:1 1 100%}.actual-spend-actions .filter-actions{margin-left:auto}}@media(max-width:760px){.actual-spend-toolbar--report,.actual-spend-toolbar--manual{grid-template-columns:repeat(2,minmax(0,1fr))}}.filter-label{display:block;font-size:10px;font-weight:700;color:var(--text-3);text-transform:uppercase;margin-bottom:5px}.filter-toolbar .ms-wrap,.actual-spend-toolbar .ms-wrap{width:auto;min-width:0}.filter-toolbar .ms-trigger,.actual-spend-toolbar .ms-trigger{width:100%;min-width:0;max-width:none;height:38px;min-height:38px;box-sizing:border-box;padding:7px 10px}.filter-toolbar .pmo-select-trigger{height:38px;min-height:38px;padding:7px 10px;font-weight:500}.ov-filter-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.ov-filter-menu{position:relative}.ov-filter-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;min-width:150px;height:38px;padding:0 12px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}.ov-filter-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ov-filter-trigger b{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--text-3);font-size:13px;line-height:1}.ov-filter-menu.open .ov-filter-trigger{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 14%,transparent)}.ov-filter-popover{display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:45;width:260px;max-width:78vw;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:0 14px 34px #0f172a2e;overflow:hidden}.ov-filter-menu.open .ov-filter-popover{display:block}.ov-filter-actions{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--bg)}.ov-filter-actions button{border:0;background:transparent;color:var(--blue);font-family:inherit;font-size:11px;font-weight:800;cursor:pointer}.ov-filter-options{max-height:246px;overflow:auto;padding:5px}.ov-filter-option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;border-radius:6px;font-size:12px;cursor:pointer;transition:background .16s ease,transform .16s ease,color .16s ease}.ov-filter-option:hover{background:var(--bg);transform:translateY(-1px)}.ov-filter-option input{width:14px;height:14px;accent-color:var(--blue);transition:transform .16s ease,box-shadow .18s ease}.ov-filter-option input:checked{transform:scale(1.08);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 16%,transparent)}.ov-filter-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ov-filter-option em{font-style:normal;color:var(--text-3);font-size:11px}.ov-filter-empty{padding:12px;color:var(--text-3);font-size:12px;text-align:center}.filter-range{display:contents}.filter-checkbox{display:inline-flex;align-items:center;gap:6px;min-height:38px;box-sizing:border-box;font-size:12px;color:var(--text-2);white-space:nowrap}.filter-checkbox input{width:14px;height:14px;accent-color:var(--blue)}.filter-actions{display:flex;gap:8px;align-items:center;align-self:flex-end;flex:0 0 auto;flex-wrap:nowrap;margin-left:auto}.filter-actions .btn-export{margin-left:0}.filter-actions button{height:38px;box-sizing:border-box;white-space:nowrap}@media(max-width:1100px){.filter-control,.filter-control--search,.filter-toolbar--dense .filter-control{flex:1 1 calc(50% - 4px);max-width:none}.filter-actions{margin-left:0}}@media(min-width:761px)and (max-width:1399px){.filter-toolbar--single-line{display:flex;flex-wrap:wrap}.filter-toolbar--single-line .filter-control,.filter-toolbar--single-line .filter-control--search,.filter-toolbar--single-line .ms-wrap{flex:1 1 calc(25% - 6px);max-width:none}.filter-toolbar--single-line .filter-actions{margin-left:auto}}@media(max-width:760px){.filter-toolbar--single-line{display:flex;flex-wrap:wrap}.filter-toolbar--single-line .filter-control,.filter-toolbar--single-line .filter-control--search,.filter-toolbar--single-line .ms-wrap{flex:1 1 calc(50% - 4px);max-width:none}.filter-toolbar--single-line .filter-actions{margin-left:0}.filter-action-row{flex-wrap:wrap}.filter-action-row .filter-control--search{flex-basis:100%}}#view-history>.filter-toolbar,#view-pending>.filter-toolbar{margin-bottom:14px}#view-history .card,#view-pending .card{margin-top:0}.load-more-bar{padding:12px 16px;text-align:center;border-top:1px solid var(--border)}.load-more-bar button{font-size:12px;padding:6px 20px;background:var(--surface);border:1px solid var(--border-md);border-radius:var(--r-sm);cursor:pointer;color:var(--blue);font-weight:500}.load-more-bar button:hover{background:var(--bg)}.btn-export{font-family:var(--font-ui);font-size:12px;font-weight:500;padding:6px 12px;background:var(--surface);color:var(--text-2);border:1px solid var(--border-md);border-radius:var(--r-sm);cursor:pointer;display:inline-flex;align-items:center;gap:5px;margin-left:auto;transition:background .12s}.btn-export:hover{background:var(--bg)}.hist-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.hist-table th{text-align:left;padding:8px 12px;font-size:10px;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border)}.hist-table td{padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.hist-table tr:last-child td{border-bottom:none}.hist-table tbody tr.hist-row{transition:background .1s;cursor:pointer}.hist-table tbody tr.hist-row:hover td{background:var(--bg)}.bpool-table tbody tr:nth-child(2n) td{background:var(--bg)}.filter-row input[type=search],.filter-row input[type=text]{font-family:var(--font-ui);font-size:12px;padding:6px 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);outline:none;min-width:200px;flex:1 1 200px}.filter-row input[type=date],.filter-row input[type=number]{font-family:var(--font-ui);font-size:12px;padding:6px 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text)}.hist-adv-panel{display:none;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r)}.hist-adv-panel.is-open{display:flex}.hist-adv-sep{font-size:11px;color:var(--text-3)}.hist-amt-input{width:96px}.hist-actions{display:inline-flex;align-items:center;gap:4px;justify-content:center}.hist-act-btn{padding:4px 7px!important;min-width:28px;justify-content:center}.hist-act-btn svg{width:13px;height:13px;flex-shrink:0}.hist-memo-no{font-weight:600;color:var(--blue-800)}.hist-cell-clip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hist-table tbody tr.hist-row{cursor:pointer}.hist-amt{text-align:right;white-space:nowrap}.hist-dt{font-size:11px;color:var(--text-2);white-space:nowrap}.hist-reject-btn{background:none;border:none;padding:0;margin:0;cursor:pointer;font-size:11px;color:var(--red);text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hist-reject-btn:hover{text-decoration:underline}.hist-reject-popover{display:none;position:fixed;z-index:400;max-width:320px;padding:10px 12px;background:var(--surface);border:1px solid var(--border-md);border-radius:var(--r-sm);box-shadow:0 8px 24px #0000001f;font-size:12px;line-height:1.5}.hist-empty{text-align:center;padding:32px 16px!important;color:var(--text-3)}.hist-detail-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:14px;padding:12px;background:var(--bg);border-radius:var(--r-sm)}.hist-detail-meta .lbl{display:block;font-size:9px;font-weight:700;color:var(--text-3);text-transform:uppercase;margin-bottom:2px}.hist-detail-block{margin-bottom:14px}.hist-detail-block-title{font-size:11px;font-weight:700;color:var(--text-3);text-transform:uppercase;margin-bottom:8px}.hist-detail-note{padding:10px;border-radius:var(--r-sm);font-size:12px;margin-bottom:10px}.hist-detail-note--ok{background:var(--green-50)}.hist-detail-note--err{background:var(--red-50)}.hist-timeline{border-left:2px solid var(--border-md);margin-left:6px;padding-left:14px}.hist-timeline-item{position:relative;margin-bottom:12px}.hist-timeline-dot{position:absolute;left:-21px;top:4px;width:8px;height:8px;border-radius:50%;background:var(--blue);border:2px solid var(--surface)}.hist-timeline-dot.reject{background:var(--red)}.hist-timeline-dot.done{background:var(--green)}.hist-audit-log{max-height:160px;overflow-y:auto}.hist-audit-row{display:flex;gap:10px;padding:6px 0;border-bottom:1px solid var(--border);font-size:11px}.hist-audit-time{color:var(--text-3);white-space:nowrap;min-width:100px}.hist-linked-row{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid var(--border);font-size:12px}.placeholder{text-align:center;padding:60px 20px;color:var(--text-3)}.placeholder svg{width:40px;height:40px;margin-bottom:12px;opacity:.3}.placeholder h3{font-size:15px;font-weight:600;color:var(--text-2);margin-bottom:4px}.placeholder p{font-size:13px}.pdf-stage{position:fixed;left:-9999px;top:0;width:794px;background:#fff;color:#111;font-family:IBM Plex Sans Thai,sans-serif}.pdf-page{width:794px;min-height:1123px;padding:54px 64px;background:#fff;font-size:13px;line-height:1.72}.pdf-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #185FA5;padding-bottom:14px;margin-bottom:18px}.pdf-brand{font-size:18px;font-weight:700;color:#185fa5}.pdf-subbrand{font-size:11px;color:#5f5e5a}.pdf-memo-no{font-family:IBM Plex Mono,monospace;font-size:12px;color:#5f5e5a;text-align:right}.pdf-title{text-align:center;font-size:18px;font-weight:700;margin:18px 0}.pdf-meta{display:grid;grid-template-columns:86px 1fr;gap:5px 12px;margin-bottom:18px}.pdf-label{font-weight:700;color:#444}.pdf-section{margin-top:14px}.pdf-section-title{font-weight:700;color:#185fa5;margin-bottom:6px}.pdf-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:12px}.pdf-table th,.pdf-table td{border:1px solid #d9d9d9;padding:6px 8px;vertical-align:top}.pdf-table th{background:#e6f1fb;color:#0c447c;font-weight:700;text-align:left}.pdf-table .num{text-align:right;font-family:IBM Plex Mono,monospace;white-space:nowrap}.pdf-total{display:flex;justify-content:flex-end;gap:14px;margin-top:10px;font-weight:700;color:#042c53}.pdf-signatures{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:54px}.pdf-sign-box{text-align:center;min-height:110px}.pdf-sign-line{border-top:1px solid #222;margin:54px 18px 8px}.pdf-muted{color:#666}.pdf-alert{margin-top:10px;padding:8px 10px;border:1px solid #B5D4F4;background:#e6f1fb;border-radius:6px;color:#0c447c;font-size:12px}@media print{body.printing-pdf .layout{display:none}body.printing-pdf .pdf-stage{position:static;width:auto}body.printing-pdf .pdf-page{width:auto;min-height:auto;padding:32px}}svg.icon{display:inline-block;vertical-align:middle}.cost-tab-bar{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid rgba(0,0,0,.12);margin-bottom:0}#cost-subtab-bar{display:flex;gap:4px}.cost-stab,.tab-btn,.pend-tab-btn{height:40px;padding:0 15px;font-size:12px;font-weight:800;font-family:inherit;border:1px solid transparent;border-bottom:none;border-radius:var(--chrome-control-r) var(--chrome-control-r) 0 0;background:#94a3b81a;color:#5f5e5a;cursor:pointer;position:relative;opacity:.68;white-space:nowrap}.cost-stab:hover,.tab-btn:hover,.pend-tab-btn:hover{background:#94a3b82e;color:#1c1c1a;opacity:1}.cost-stab.active,.tab-btn.active,.pend-tab-btn.active{background:#fff;color:#0f172a;border-color:#ffffffeb;font-weight:800;box-shadow:0 -1px #fff inset,0 -2px #185fa5,0 6px 16px #00000024;opacity:1}.cost-stab.active:after,.tab-btn.active:after,.pend-tab-btn.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:#fff}.cost-tab-panel{border:1px solid rgba(0,0,0,.12);border-top:none;border-radius:0 var(--chrome-control-r) var(--chrome-control-r) var(--chrome-control-r);padding:14px;background:#fff;margin-bottom:14px}:root,:root[data-theme=dark]{color-scheme:dark;--blue: #3b82f6;--blue-50: rgba(59,130,246,.13);--blue-100: rgba(96,165,250,.28);--blue-600: #3b82f6;--blue-800: #93c5fd;--blue-900: #dbeafe;--green: #34d399;--green-50: rgba(52,211,153,.12);--green-200: rgba(52,211,153,.3);--amber: #fbbf24;--amber-50: rgba(251,191,36,.12);--amber-200: rgba(251,191,36,.3);--red: #fb7185;--red-50: rgba(251,113,133,.12);--red-200: rgba(251,113,133,.3);--gray: #94a3b8;--gray-50: rgba(148,163,184,.1);--gray-200: rgba(148,163,184,.24);--purple: #a78bfa;--purple-50: rgba(167,139,250,.12);--bg: #000000;--surface: #070707;--surface-2: #0f0f10;--surface-3: #18181a;--border: rgba(226,232,240,.1);--border-md: rgba(226,232,240,.18);--text: #f4f4f5;--text-2: #b8bec7;--text-3: #717782;--shadow: 0 18px 55px rgba(0,0,0,.48);--focus-ring: rgba(59,130,246,.22);--r: 10px;--r-sm: 7px;--sidebar-w: 220px}:root[data-theme=light]{color-scheme:light;--blue: #2563eb;--blue-50: #eaf2ff;--blue-100: #bfd6ff;--blue-600: #2563eb;--blue-800: #1d4ed8;--blue-900: #172554;--green: #087f5b;--green-50: #e6fcf5;--green-200: #96f2d7;--amber: #a15c00;--amber-50: #fff4d6;--amber-200: #ffd27a;--red: #c92a2a;--red-50: #fff0f0;--red-200: #ffc9c9;--gray: #526071;--gray-50: #f1f5f9;--gray-200: #cbd5e1;--purple: #6d4aff;--purple-50: #f0edff;--bg: #f3f6fb;--surface: #fff;--surface-2: #f8fafc;--surface-3: #eef3f9;--border: rgba(15,23,42,.09);--border-md: rgba(15,23,42,.16);--text: #101827;--text-2: #536176;--text-3: #8491a5;--shadow: 0 14px 40px rgba(30,64,175,.08);--focus-ring: rgba(37,99,235,.14)}html{background:var(--bg)}body{background:radial-gradient(circle at 72% -20%,rgba(37,99,235,.12),transparent 32rem),var(--bg);color:var(--text);transition:background-color .2s ease,color .2s ease}:root[data-theme=dark] body{background:var(--bg)}.sidebar{background:color-mix(in srgb,var(--surface) 94%,transparent);border-color:var(--border);box-shadow:1px 0 #ffffff04;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar.collapsed .sb-logo,.sidebar.collapsed .sb-nav,.sidebar.collapsed .sb-footer{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.sidebar.collapsed:before{background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar.collapsed:hover .sb-logo,.sidebar.collapsed:focus-within .sb-logo,.sidebar.collapsed:hover .sb-nav,.sidebar.collapsed:focus-within .sb-nav,.sidebar.collapsed:hover .sb-footer,.sidebar.collapsed:focus-within .sb-footer{background:transparent}.sidebar.collapsed:hover:before,.sidebar.collapsed:focus-within:before{box-shadow:22px 12px 45px #00000038}.sb-logo{height:58px;min-height:58px;border-color:var(--border);padding:0 14px}.sb-dot{filter:drop-shadow(0 5px 10px rgba(14,165,233,.16))}.sb-brand{font-size:12px;letter-spacing:.01em}.sb-section{color:var(--text-3);letter-spacing:.12em;margin-top:17px}.sb-item,.sb-sub-item{border:1px solid transparent}.sb-item:hover,.sb-sub-item:hover,.sb-user:hover{background:var(--surface-2);color:var(--text)}.sb-item.active,.sb-sub-item.active{color:var(--blue-800);background:var(--blue-50);border-color:var(--blue-100)}.sb-item.active svg,.sb-sub-item.active svg{fill:none;stroke:currentColor}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item{color:transparent}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item:hover,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item:hover{background:color-mix(in srgb,var(--blue) 10%,var(--surface));color:var(--blue-800)}.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item.active,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item.active{background:color-mix(in srgb,var(--blue) 15%,var(--surface));border-color:var(--blue-100)}.sb-footer{border-color:var(--border)}.sb-avatar{background:var(--blue-50);color:var(--blue-800);border:1px solid var(--blue-100)}.topbar{min-height:58px;background:color-mix(in srgb,var(--surface) 90%,transparent);border-color:var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar-title{font-size:13px;letter-spacing:.01em}.topbar-btn,.theme-toggle{color:var(--text-2);border:1px solid var(--border-md);background:var(--surface-2)}.topbar-btn:hover,.theme-toggle:hover{color:var(--text);background:var(--surface-3)}.notification-btn{position:relative;overflow:visible}.notification-btn.motion-ripple-host{overflow:visible}.notification-btn svg{position:relative;z-index:1;transform-origin:50% 6px}.notification-btn--active{color:var(--amber);border-color:var(--amber-200);background:var(--amber-50)}.notification-btn--active svg{animation:notification-bell-ring 2.6s cubic-bezier(.36,.07,.19,.97) infinite}.notification-badge{position:absolute;top:-7px;right:-7px;box-sizing:border-box;min-width:17px;height:17px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;border:2px solid var(--surface);font-size:9px;font-weight:800;line-height:17px;box-shadow:0 0 0 3px var(--red-50);z-index:2}.notification-badge[hidden]{display:none}.notification-panel{position:fixed!important;top:64px;right:20px;width:min(380px,calc(100vw - 24px));max-height:min(480px,calc(100vh - 84px));display:none;z-index:5000;overflow:hidden;border:1px solid var(--border-md);border-radius:8px;background:color-mix(in srgb,var(--surface) 98%,#000);color:var(--text);box-shadow:0 24px 70px #0000009e,0 0 0 1px #ffffff09 inset;isolation:isolate;contain:layout paint;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.notification-panel.is-open{display:flex;flex-direction:column;animation:motion-panel-in .18s var(--motion-ease) both}.notification-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 12px 10px;border-bottom:1px solid var(--border);background:var(--surface)}.notification-head strong{font-size:13px}.notification-head span{font-size:10px;color:var(--text-3);display:block;margin-top:1px}.notification-actions{display:inline-flex;gap:6px}.notification-list{flex:1 1 auto;min-height:0;max-height:356px;overflow:auto;padding:6px;background:color-mix(in srgb,var(--surface) 92%,var(--surface-2))}.notification-item{width:100%;display:grid;grid-template-columns:8px minmax(0,1fr);gap:9px;text-align:left;padding:10px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);cursor:pointer;box-shadow:0 1px #ffffff05 inset}.notification-item:hover{background:var(--surface-2);border-color:var(--border)}.notification-item+.notification-item{margin-top:6px}.notification-item.is-read{opacity:.66}.notification-dot{width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--blue)}.notification-item.is-read .notification-dot{background:var(--gray)}.notification-title{font-size:12px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-meta{font-size:10px;color:var(--text-3);margin-top:2px}.notification-note{font-size:11px;color:var(--text-2);margin-top:4px;line-height:1.35}.notification-empty{padding:28px 16px;text-align:center;color:var(--text-3);font-size:12px}.notification-foot{flex:0 0 auto;display:flex;justify-content:flex-end;padding:8px 10px;border-top:1px solid var(--border);background:var(--surface)}.theme-toggle{position:relative;width:calc(var(--sidebar-w) - 16px);height:38px;border-radius:999px;padding:5px 6px;display:inline-flex;align-items:center;justify-content:center;gap:0;cursor:pointer;font:500 11px var(--font-ui);box-shadow:0 1px #ffffff09 inset}.theme-toggle:disabled{cursor:default;opacity:1}.theme-toggle-label{display:none}.theme-toggle-track{width:48px;height:26px;border-radius:999px;position:relative;overflow:hidden;background:var(--bg);display:flex;align-items:center;justify-content:space-around;color:var(--text-3)}.theme-toggle-track{transition:transform .22s cubic-bezier(.22,1,.36,1)}.sidebar.collapsed:not(:hover):not(:focus-within) .theme-toggle-track{transform:translate(calc((var(--sidebar-rail-w) - var(--sidebar-w)) / 2))}.theme-toggle-thumb{position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:transparent;box-shadow:none;transition:transform .2s ease;z-index:1}.theme-icon{width:14px;height:14px;z-index:2;transition:color .2s ease,filter .2s ease}.theme-icon *{transition:fill .2s ease,stroke .2s ease}.theme-toggle-cloud{position:absolute;left:0;top:6px;width:22px;height:10px;border-radius:999px;background:#fffffffa;box-shadow:0 0 4px #ffffffdb,0 2px 5px #94a3b82e;opacity:0;pointer-events:none;z-index:4}.theme-toggle-cloud:before,.theme-toggle-cloud:after{content:"";position:absolute;bottom:3px;border-radius:50%;background:inherit}.theme-toggle-cloud:before{left:3px;width:10px;height:10px}.theme-toggle-cloud:after{right:3px;width:11px;height:11px}.theme-toggle[data-cover=sun]:not(.theme-toggle--clouding) .theme-toggle-cloud{opacity:1;transform:translate(0) scale(1.08)}.theme-toggle[data-cover=moon]:not(.theme-toggle--clouding) .theme-toggle-cloud{opacity:1;transform:translate(22px) scale(1.08)}.theme-toggle--clouding[data-cover=sun] .theme-toggle-cloud{animation:theme-cloud-sun .72s cubic-bezier(.22,1,.36,1) both}.theme-toggle--clouding[data-cover=moon] .theme-toggle-cloud{animation:theme-cloud-moon .72s cubic-bezier(.22,1,.36,1) both}:root[data-theme=dark] .theme-toggle-thumb{transform:translate(24px)}:root[data-theme=dark] .theme-icon-moon{color:#fde68a;filter:drop-shadow(0 0 3px rgba(254,240,138,.95)) drop-shadow(0 0 8px rgba(250,204,21,.6))}:root[data-theme=dark] .theme-icon-moon path{fill:#facc1559;stroke:#fef3c7}:root[data-theme=light] .theme-icon-sun{color:#f59e0b;filter:drop-shadow(0 0 3px rgba(255,247,237,.95)) drop-shadow(0 0 8px rgba(245,158,11,.55))}:root[data-theme=light] .theme-icon-sun circle{fill:#fbbf246b;stroke:#f59e0b}:root[data-theme=light] .theme-icon-sun path{stroke:#f59e0b}@keyframes theme-cloud-sun{0%{opacity:0;transform:translate(-28px) scale(.82)}22%{opacity:1;transform:translate(-2px) scale(1.08)}48%{opacity:1;transform:translate(1px) scale(1.16)}to{opacity:1;transform:translate(0) scale(1.08)}}@keyframes theme-cloud-moon{0%{opacity:0;transform:translate(52px) scale(.82)}22%{opacity:1;transform:translate(25px) scale(1.08)}48%{opacity:1;transform:translate(21px) scale(1.16)}to{opacity:1;transform:translate(22px) scale(1.08)}}@keyframes notification-bell-ring{0%,72%,to{transform:rotate(0)}4%{transform:rotate(16deg)}8%{transform:rotate(-14deg)}12%{transform:rotate(11deg)}16%{transform:rotate(-8deg)}20%{transform:rotate(5deg)}24%{transform:rotate(0)}}.content{padding:22px}.card,.metric-card,.pend-card,.cost-tab-panel,.hist-filters-advanced,.hist-menu-dropdown,.hist-reject-popover{background:var(--surface);border-color:var(--border);box-shadow:0 1px #ffffff05 inset,var(--shadow)}.card:hover,.metric-card:hover,.pend-card:hover{border-color:var(--blue-100)}.card-head,.items-hdr,.hist-table th,.hist-table td,.divider,.cost-tab-bar{border-color:var(--border)}.card-num{background:var(--blue-50);color:var(--blue-800);border:1px solid var(--blue-100)}.type-btn{background:var(--surface-2);border-color:var(--border)}.type-btn:hover{background:var(--blue-50);border-color:var(--blue-100)}.type-btn.selected,.total-box,.hist-pdf-btn,.add-btn{background:var(--blue-50);border-color:var(--blue-100);color:var(--blue-800)}.fg input,.fg select,.fg textarea,.ri,.hist-search,.hist-toolbar select,.hist-filters-advanced select,.hist-filters-advanced input[type=date],.hist-amt-input,.filter-row select,.btn-ghost,.btn-sm,.hist-menu-btn,.btn-export,#approve-note,#reject-reason-select,#reject-comment{background:var(--surface-2)!important;color:var(--text)!important;border-color:var(--border-md)!important}.fg input:focus,.fg select:focus,.fg textarea:focus,.ri:focus,.hist-search:focus{border-color:var(--blue)!important;box-shadow:0 0 0 3px var(--focus-ring)!important}.fg select,select.ri,.hist-toolbar select,.hist-filters-advanced select,.filter-row select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%)!important;background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;padding-right:34px!important}.fg select:hover,select.ri:hover,.hist-toolbar select:hover,.hist-filters-advanced select:hover,.filter-row select:hover{border-color:var(--blue-100)!important;background-color:var(--surface)!important}.fg select:disabled,select.ri:disabled{opacity:.62;cursor:not-allowed}.fg input[type=date],input.ri[type=date],.hist-filters-advanced input[type=date],.filter-row input[type=date]{position:relative;min-height:38px;padding-right:38px!important;font-variant-numeric:tabular-nums;color-scheme:light dark}.fg input[type=date]::-webkit-calendar-picker-indicator,input.ri[type=date]::-webkit-calendar-picker-indicator,.hist-filters-advanced input[type=date]::-webkit-calendar-picker-indicator,.filter-row input[type=date]::-webkit-calendar-picker-indicator{width:18px;height:18px;margin-right:-4px;padding:6px;border-radius:8px;cursor:pointer;opacity:.78;background-color:color-mix(in srgb,var(--blue-50) 76%,transparent);transition:opacity var(--motion-fast) var(--motion-ease),background-color var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}.fg input[type=date]::-webkit-calendar-picker-indicator:hover,input.ri[type=date]::-webkit-calendar-picker-indicator:hover,.hist-filters-advanced input[type=date]::-webkit-calendar-picker-indicator:hover,.filter-row input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1;background-color:var(--blue-50);transform:scale(1.04)}.fg input[type=date]::-webkit-datetime-edit,input.ri[type=date]::-webkit-datetime-edit,.hist-filters-advanced input[type=date]::-webkit-datetime-edit,.filter-row input[type=date]::-webkit-datetime-edit{padding:0}.fg input[type=date]::-webkit-datetime-edit-fields-wrapper,input.ri[type=date]::-webkit-datetime-edit-fields-wrapper,.hist-filters-advanced input[type=date]::-webkit-datetime-edit-fields-wrapper,.filter-row input[type=date]::-webkit-datetime-edit-fields-wrapper{color:var(--text)}.fg input[type=date]::-webkit-datetime-edit-text,input.ri[type=date]::-webkit-datetime-edit-text,.hist-filters-advanced input[type=date]::-webkit-datetime-edit-text,.filter-row input[type=date]::-webkit-datetime-edit-text{color:var(--text-3);padding:0 2px}.fg input[type=date]::-webkit-datetime-edit-month-field,.fg input[type=date]::-webkit-datetime-edit-day-field,.fg input[type=date]::-webkit-datetime-edit-year-field,input.ri[type=date]::-webkit-datetime-edit-month-field,input.ri[type=date]::-webkit-datetime-edit-day-field,input.ri[type=date]::-webkit-datetime-edit-year-field{border-radius:5px;padding:1px 2px}.fg input[type=date]:focus::-webkit-calendar-picker-indicator,input.ri[type=date]:focus::-webkit-calendar-picker-indicator{opacity:1;background-color:color-mix(in srgb,var(--blue) 14%,transparent)}.pmo-date-input{cursor:pointer;caret-color:transparent;font-variant-numeric:tabular-nums}.pmo-date-input::selection{background:color-mix(in srgb,var(--blue) 22%,transparent)}.pmo-date-picker{position:fixed;z-index:2200;width:286px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 24px 60px color-mix(in srgb,var(--text) 18%,transparent),0 1px #ffffff0a inset;opacity:0;transform:translateY(8px) scale(.98);pointer-events:none;transition:opacity var(--motion-base) var(--motion-ease),transform var(--motion-base) var(--motion-ease)}.pmo-date-picker.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.pmo-date-head{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;margin-bottom:10px}.pmo-date-month{text-align:center;font-size:12px;font-weight:800;color:var(--text)}.pmo-date-nav{width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--text-2);font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer}.pmo-date-nav:hover{background:var(--surface-2);color:var(--text)}.pmo-date-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:12px}.pmo-date-current{min-height:32px;display:flex;align-items:center;padding:0 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);font-size:12px;font-weight:600}.pmo-date-today,.pmo-date-cancel,.pmo-date-apply{min-height:32px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text-2);font-family:inherit;font-size:11px;font-weight:800;cursor:pointer}.pmo-date-today:hover,.pmo-date-cancel:hover{border-color:var(--blue-100);color:var(--text);background:var(--surface)}.pmo-date-weekdays,.pmo-date-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.pmo-date-weekdays{margin-bottom:5px}.pmo-date-weekdays span{text-align:center;font-size:10px;font-weight:800;color:var(--text-2)}.pmo-date-day{width:30px;height:30px;border:0;border-radius:999px;background:transparent;color:var(--text);font-family:inherit;font-size:11px;font-weight:700;cursor:pointer;justify-self:center}.pmo-date-day:hover{background:var(--blue-50);color:var(--blue-800)}.pmo-date-day.is-muted{color:var(--text-3);opacity:.62}.pmo-date-day.is-today{box-shadow:inset 0 0 0 1px var(--blue-100)}.pmo-date-day.is-selected{background:linear-gradient(135deg,#7c3aed,#5b4ee6);color:#fff;box-shadow:0 8px 18px #5b4ee647}.pmo-date-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.pmo-date-apply{border-color:transparent;color:#fff;background:linear-gradient(135deg,#7c3aed,#5b4ee6);box-shadow:0 8px 18px #5b4ee63d}.pmo-date-apply:hover{filter:brightness(1.05)}.pmo-select{position:relative;display:flex;align-items:stretch;width:100%;min-width:0;max-width:100%;min-height:38px;line-height:1;box-sizing:border-box}.card:has(.pmo-select.is-open),.cost-tab-panel:has(.pmo-select.is-open){position:relative;z-index:3000}.modal:has(.pmo-select.is-open),.settings-shell:has(.pmo-select.is-open),#view-resource:has(.pmo-select.is-open){overflow:visible}.pmo-select.is-open{z-index:3001}.pmo-select-native{display:none!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;background-image:none!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;opacity:0!important;pointer-events:none!important}.pmo-select>select.pmo-select-native,.fg .pmo-select>select.pmo-select-native,select.ri.pmo-select-native{display:none!important;width:0!important;max-width:0!important;height:0!important;min-width:0!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;background-image:none!important}.pmo-select-trigger{flex:1 1 auto;width:100%;height:100%;max-width:100%;box-sizing:border-box;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-family:inherit;font-size:12px;font-weight:700;text-align:left;line-height:1;cursor:pointer;transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-base) ease,transform var(--motion-fast) var(--motion-ease)}.pmo-select-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pmo-select-trigger b{color:var(--text-3);font-size:13px;line-height:1}.pmo-select-trigger:hover{border-color:color-mix(in srgb,var(--blue) 45%,var(--border-md));background:var(--surface)}.pmo-select.is-open .pmo-select-trigger{border-color:var(--blue);box-shadow:0 0 0 3px var(--focus-ring)}.pmo-select-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:2400;box-sizing:border-box;width:100%;min-width:100%;max-width:100%;max-height:260px;overflow:auto;padding:5px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text);box-shadow:0 14px 34px #0f172a2e}.pmo-select.is-open .pmo-select-menu{display:block;animation:motion-popover-in .18s var(--motion-ease) both;transform-origin:top center}.pmo-select-option{width:100%;min-height:32px;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;padding:7px;border:0;border-radius:6px;background:transparent;color:var(--text);font-family:inherit;font-size:12px;font-weight:700;text-align:left;cursor:pointer;transition:background .16s ease,transform .16s ease,color .16s ease}.pmo-select-option:hover{background:var(--bg);transform:none}.pmo-select-option.is-selected{color:var(--blue);background:color-mix(in srgb,var(--blue) 10%,transparent)}.pmo-select-option span{overflow:hidden;overflow-wrap:anywhere;white-space:normal}.pmo-select-option b{color:var(--blue);font-size:13px;text-align:center}.pmo-select-option:disabled{opacity:.55;cursor:not-allowed;transform:none}.pmo-select-empty{padding:12px;color:var(--text-3);font-size:12px;text-align:center}.fg input[readonly],.pend-detail,.hist-detail-meta{background:var(--surface-2);color:var(--text-2)}option{background:var(--surface);color:var(--text)}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 8px 20px #2563eb33}.btn-primary:hover{background:linear-gradient(135deg,#60a5fa,#2563eb)}.btn-ghost:hover,.btn-sm:hover,.btn-export:hover,.hist-menu-btn:hover{background:var(--surface-3)!important;color:var(--text)!important}.hist-table tbody tr:hover td{background:var(--surface-2)}.hist-table--dense th{background:var(--surface)}.cost-stab,.tab-btn,.pend-tab-btn{background:#94a3b81a!important;color:color-mix(in srgb,var(--text-2) 66%,transparent)!important;border-color:transparent!important;border-radius:var(--chrome-control-r, 8px) var(--chrome-control-r, 8px) 0 0!important;box-shadow:none!important}.cost-stab:hover,.tab-btn:hover,.pend-tab-btn:hover{background:#94a3b82e!important;color:var(--text)!important;opacity:1}.cost-stab.active,.tab-btn.active,.pend-tab-btn.active{background:#fff!important;color:#0f172a!important;border-color:#ffffffeb!important;box-shadow:0 -1px #fff inset,0 -2px 0 var(--blue),0 6px 16px #00000024!important;opacity:1}.cost-stab.active:after,.tab-btn.active:after,.pend-tab-btn.active:after{background:#fff!important}:root[data-theme=dark] .cost-stab,:root[data-theme=dark] .tab-btn,:root[data-theme=dark] .pend-tab-btn{background:#ffffff0e!important;color:#f4f4f594!important}:root[data-theme=dark] .cost-stab:hover,:root[data-theme=dark] .tab-btn:hover,:root[data-theme=dark] .pend-tab-btn:hover{background:#ffffff1c!important;color:#fff!important}:root[data-theme=dark] .cost-stab.active,:root[data-theme=dark] .tab-btn.active,:root[data-theme=dark] .pend-tab-btn.active{background:#e5e7eb!important;color:#0b0f16!important;border-color:#e5e7eb!important;box-shadow:0 -1px #e5e7eb inset,0 -2px 0 var(--blue),0 6px 16px #0000004d!important}:root[data-theme=dark] .cost-stab.active:after,:root[data-theme=dark] .tab-btn.active:after,:root[data-theme=dark] .pend-tab-btn.active:after{background:#e5e7eb!important}.cost-tab-panel{border-color:var(--border-md);border-radius:0 var(--chrome-control-r, 8px) var(--chrome-control-r, 8px) var(--chrome-control-r, 8px)}.badge-blue,.badge-purple{background:var(--blue-50);color:var(--blue-800)}.badge-green{background:var(--green-50);color:var(--green)}.badge-amber,.badge-orange{background:var(--amber-50);color:var(--amber)}.badge-red{background:var(--red-50);color:var(--red)}.badge-gray{background:var(--gray-50);color:var(--gray)}.btn-approve{background:var(--green-50);color:var(--green);border-color:var(--green-200)}.btn-reject,.rm-btn:hover{background:var(--red-50);color:var(--red);border-color:var(--red-200)}*[style*="background:var(--surface)"]{color:var(--text)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-3) 55%,transparent);border:3px solid transparent;border-radius:999px;background-clip:content-box}:root{--motion-fast: .14s;--motion-base: .2s;--motion-slow: .28s;--motion-ease: cubic-bezier(.22, 1, .36, 1);--motion-pop: cubic-bezier(.2, .9, .2, 1.18)}button,.btn-primary,.btn-ghost,.btn-sm,.btn-export,.btn-approve,.btn-reject,.add-btn,.rm-btn,.type-btn,.cost-stab,.tab-btn,.sb-item,.sb-sub-item,.pend-tab-btn,.res-tab,.hist-filter-toggle,.hist-menu-btn,.hist-pdf-btn,[role=button]{-webkit-tap-highlight-color:transparent;transform:translateZ(0);transition-property:transform,box-shadow,background-color,border-color,color,opacity;transition-duration:var(--motion-fast);transition-timing-function:var(--motion-ease)}button:not(:disabled):active,.btn-primary:not(:disabled):active,.btn-ghost:not(:disabled):active,.btn-sm:not(:disabled):active,.btn-export:not(:disabled):active,.btn-approve:not(:disabled):active,.btn-reject:not(:disabled):active,.add-btn:not(:disabled):active,.rm-btn:not(:disabled):active,.type-btn:active,.cost-stab:active,.tab-btn:active,.sb-item:active,.sb-sub-item:active,.pend-tab-btn:active,.res-tab:active,.hist-filter-toggle:active,.hist-menu-btn:active,.hist-pdf-btn:active,[role=button]:active{transform:translateY(1px) scale(.975);transition-duration:70ms}button:focus-visible,.type-btn:focus-visible,.cost-stab:focus-visible,.tab-btn:focus-visible,.sb-item:focus-visible,.sb-sub-item:focus-visible,.pend-tab-btn:focus-visible,.res-tab:focus-visible,.hist-filter-toggle:focus-visible,.hist-menu-btn:focus-visible,.hist-pdf-btn:focus-visible,[role=button]:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.motion-ripple-host{position:relative;overflow:hidden;isolation:isolate}.motion-ripple{position:absolute;z-index:0;width:12px;height:12px;border-radius:50%;pointer-events:none;background:currentColor;opacity:.16;transform:translate(-50%,-50%) scale(0);animation:motion-ripple .52s ease-out forwards}.view.active{animation:motion-view-in var(--motion-base) var(--motion-ease) both}.fs.active,.cost-tab-panel[style*="display: block"]{animation:motion-panel-in .18s var(--motion-ease) both}[id$=-modal][style*="display: flex"]{animation:motion-backdrop-in var(--motion-base) ease-out both}[id$=-modal][style*="display: flex"]>:first-child{animation:motion-dialog-in .24s var(--motion-ease) both;transform-origin:center center}[id$=-modal].motion-closing{animation:motion-backdrop-out .16s ease-in both}[id$=-modal].motion-closing>:first-child{animation:motion-dialog-out .16s ease-in both;transform-origin:center center}.motion-enter{animation:motion-item-in .22s var(--motion-ease) both}.motion-tap{animation:motion-tap-pop .28s var(--motion-pop) both}.motion-value-change{animation:motion-value-change .36s var(--motion-ease) both}.motion-row-tap{animation:motion-row-tap .26s var(--motion-ease) both}.card,.metric-card,.pend-card{transition:transform var(--motion-base) var(--motion-ease),border-color var(--motion-fast) ease,box-shadow var(--motion-base) ease}.card:hover,.metric-card:hover,.pend-card:hover{transform:translateY(-1px)}.filter-row select,.filter-row input[type=search],.filter-row input[type=text],.filter-row input[type=date],.filter-row input[type=number],.hist-toolbar select,.hist-filters-advanced select,.hist-filters-advanced input[type=date],.hist-amt-input,.fg input,.fg select,.fg textarea,.ri,.hist-search{transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-base) ease,transform var(--motion-fast) var(--motion-ease)}.filter-row select:hover,.filter-row input:hover,.hist-toolbar select:hover,.hist-filters-advanced select:hover,.hist-filters-advanced input[type=date]:hover,.hist-amt-input:hover,.fg input:hover,.fg select:hover,.fg textarea:hover,.ri:hover,.hist-search:hover{border-color:color-mix(in srgb,var(--blue) 45%,var(--border-md))!important}.hist-filters-advanced.is-open,.hist-row-menu.open .hist-menu-dropdown,.hist-reject-popover[style*="display: block"],.res-filter-menu.open .res-filter-popover{animation:motion-popover-in .18s var(--motion-ease) both;transform-origin:top center}.hist-table tbody tr,.notification-item,.settings-matrix tbody tr td{transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,transform var(--motion-fast) var(--motion-ease),box-shadow var(--motion-base) ease,opacity var(--motion-fast) ease}.hist-table tbody tr:hover td{box-shadow:inset 3px 0 color-mix(in srgb,var(--blue) 55%,transparent)}.notification-item:hover{transform:translateY(-1px);border-color:var(--blue-100)}@keyframes motion-ripple{70%{opacity:.1}to{opacity:0;transform:translate(-50%,-50%) scale(24)}}@keyframes motion-view-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes motion-panel-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes motion-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes motion-dialog-in{0%{opacity:0;transform:translateY(10px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes motion-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes motion-dialog-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(7px) scale(.985)}}@keyframes motion-item-in{0%{opacity:0;transform:translateY(-5px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes motion-popover-in{0%{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes motion-tap-pop{0%{transform:scale(.985)}55%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes motion-value-change{0%{box-shadow:0 0 color-mix(in srgb,var(--blue) 0%,transparent)}35%{transform:translateY(-1px);box-shadow:0 0 0 3px var(--focus-ring)}to{transform:translateY(0);box-shadow:0 0 color-mix(in srgb,var(--blue) 0%,transparent)}}@keyframes motion-row-tap{0%{transform:scale(.997)}45%{transform:scale(1.004)}to{transform:scale(1)}}@media(max-width:820px){:root,:root[data-theme=dark]{--sidebar-w: 178px}.content{padding:14px}.theme-toggle-label{display:none}.theme-toggle{width:calc(var(--sidebar-w) - 16px)}.metric-row{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.card:hover,.metric-card:hover,.pend-card:hover,button:active,.type-btn:active,.cost-stab:active,.tab-btn:active,.sb-item:active,.sb-sub-item:active,[role=button]:active{transform:none!important}.motion-ripple{display:none!important}.motion-tap,.motion-value-change,.motion-row-tap{animation:none!important}}@media print{:root{color-scheme:light}}[data-page-access][hidden],[data-permission][hidden],.sb-section[hidden],#nav-memo[hidden],#memo-sub[hidden]{display:none!important}.pmo-page{display:grid;gap:12px}.pmo-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.pmo-toolbar .pmo-search{flex:1 1 280px}.pmo-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px}.pmo-section.is-muted{background:var(--bg)}.pmo-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.pmo-title{font-size:15px;font-weight:800;color:var(--text);line-height:1.25}.pmo-subtitle{font-size:12px;color:var(--text-3);line-height:1.4}.pmo-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px}.pmo-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.pmo-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pmo-field{display:flex;flex-direction:column;gap:4px}.pmo-field label{font-size:11px;font-weight:700;color:var(--text-2)}.pmo-input,select.pmo-select,.pmo-textarea{width:100%;font-family:inherit;font-size:12px;color:var(--text);background:var(--surface);border:1px solid var(--border-md);border-radius:var(--r-sm);outline:none}.pmo-input,select.pmo-select{height:34px;padding:6px 10px}.pmo-textarea{min-height:72px;padding:8px 10px;resize:vertical}.pmo-input:focus,select.pmo-select:focus,.pmo-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #185fa514}.pmo-btn{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border-radius:var(--r-sm);border:1px solid var(--border-md);background:transparent;color:var(--text-2);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.pmo-btn:hover{background:var(--bg);color:var(--text)}.pmo-btn:disabled{opacity:.55;cursor:not-allowed}.pmo-btn-primary{border-color:var(--blue);background:var(--blue);color:#fff}.pmo-btn-primary:hover{background:var(--blue-800);color:#fff}.pmo-btn-danger{color:var(--red)}.pmo-btn-danger:hover{background:var(--red-50);border-color:var(--red-200);color:var(--red)}.pmo-icon-btn{width:34px;padding:0}.pmo-pill{display:inline-flex;align-items:center;gap:4px;min-height:20px;padding:2px 8px;border-radius:999px;background:var(--gray-50);color:var(--gray);font-size:10px;font-weight:800;line-height:1.2;white-space:nowrap}.pmo-pill-blue{background:var(--blue-50);color:var(--blue-800)}.pmo-pill-green{background:var(--green-50);color:var(--green)}.pmo-pill-amber{background:var(--amber-50);color:var(--amber)}.pmo-pill-red{background:var(--red-50);color:var(--red)}.pmo-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pmo-detail-field span{display:block;font-size:11px;color:var(--text-3);line-height:1.2}.pmo-detail-field strong{display:block;margin-top:3px;font-size:12px;color:var(--text);line-height:1.35}.pmo-empty{padding:32px 16px;text-align:center;color:var(--text-3);font-size:12px}.pmo-drawer{position:fixed;top:0;right:0;height:100vh;width:460px;max-width:94vw;background:var(--surface);border-left:1px solid var(--border);box-shadow:-8px 0 24px #0000001f;z-index:1100;overflow:auto}.pmo-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media(max-width:720px){.pmo-form-grid,.pmo-detail-grid{grid-template-columns:1fr}.pmo-toolbar{align-items:stretch}.pmo-toolbar .pmo-search,.pmo-toolbar .pmo-btn{width:100%}}:root{--ui-control-h: 34px;--ui-card-r: 8px;--ui-gap: 10px;--ui-section-gap: 14px;--ui-table-min: 760px;--ui-focus-ring: 0 0 0 3px color-mix(in srgb, var(--blue) 16%, transparent)}button,input,select,textarea{font-family:var(--font-ui);font-synthesis:none}.main,.content,.view,.view.active{min-width:0}.content{padding:18px clamp(14px,1.55vw,22px);overscroll-behavior:contain}.view.active{width:100%;animation:pmo-view-in .16s ease-out}@keyframes pmo-view-in{0%{opacity:.72;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.card,.metric-card,.pend-card,.cost-tab-panel{border-color:var(--border);border-radius:var(--ui-card-r);box-shadow:none}.card{padding:14px}.card-head{min-height:38px;padding-bottom:10px;margin-bottom:12px}.metric-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:var(--ui-gap)!important;margin-bottom:var(--ui-section-gap)!important}.metric-card{min-width:0;min-height:86px;padding:12px 14px}.metric-label,.metric-sub{line-height:1.35}.metric-val{line-height:1.15;margin-top:4px}.filter-toolbar,.actual-spend-toolbar,.filter-action-row{gap:8px}.filter-toolbar,.actual-spend-toolbar{padding:10px;border:1px solid var(--border);border-radius:var(--ui-card-r);background:var(--surface)}.filter-label{margin-bottom:4px;font-size:10px;font-weight:700;line-height:1.2;letter-spacing:.35px;text-transform:uppercase}.filter-toolbar input,.filter-toolbar select,.actual-spend-toolbar input,.actual-spend-toolbar select,.filter-input,.filter-select,.filter-search,.ri,.fg input,.fg select,.fg textarea,.pmo-select-trigger,.ms-trigger,.pmo-month-trigger{min-height:var(--ui-control-h);border-radius:6px}.filter-toolbar input[type=search],.filter-toolbar input[type=text].filter-search,.filter-toolbar select,.actual-spend-toolbar input,.actual-spend-toolbar select,.filter-input,.filter-select,.filter-toolbar .ms-trigger,.filter-toolbar .pmo-select-trigger{height:var(--ui-control-h);min-height:var(--ui-control-h);padding-block:5px}.filter-toolbar input:focus,.filter-toolbar select:focus,.actual-spend-toolbar input:focus,.actual-spend-toolbar select:focus,.ri:focus,.fg input:focus,.fg select:focus,.fg textarea:focus,.pmo-select-trigger:focus-visible,.ms-trigger:focus-visible{border-color:var(--blue);box-shadow:var(--ui-focus-ring);outline:0}.filter-actions,.action-row,.pmo-modal-footer,.pend-actions{align-items:center;gap:8px}.btn-primary,.btn-ghost,.btn-sm,.btn-export,.btn-approve,.btn-reject{min-height:var(--ui-control-h);border-radius:6px;justify-content:center;white-space:nowrap}.btn-primary{padding:7px 14px}.btn-ghost,.btn-sm,.btn-export,.btn-approve,.btn-reject{padding:6px 11px}.tab-bar,.cost-tab-bar,#cost-subtab-bar{min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.tab-btn,.cost-stab,.pend-tab-btn{min-height:40px;border-radius:7px 7px 0 0!important}.hist-tab-btn,.lic-tab-btn{min-height:34px;white-space:nowrap}.history-tabs-shell{min-width:0;max-width:100%}.history-tabs-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.table-scroll,.txn-table-wrap,.card:has(>table),.card:has(>.hist-table){max-width:100%;overflow-x:auto!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.hist-table{min-width:var(--ui-table-min)}.hist-table th{height:38px;padding-top:8px;padding-bottom:8px;background:color-mix(in srgb,var(--surface) 84%,var(--bg));color:var(--text-3);font-size:10px;font-weight:700;letter-spacing:.25px;text-transform:uppercase;white-space:nowrap}.hist-table td{height:42px;padding-top:8px;padding-bottom:8px;vertical-align:middle}.hist-table tbody tr{transition:background-color .12s ease}.hist-table tbody tr:hover td{background:color-mix(in srgb,var(--blue) 5%,var(--surface))}.form-grid,.form-grid-3,.device-form-grid,.system-split-grid{min-width:0}#resource-detail-drawer{position:fixed;top:0;right:0;width:min(560px,96vw);max-width:96vw;height:100dvh;padding:24px;overflow-x:hidden;overflow-y:auto;background:var(--surface);border-left:1px solid var(--border);box-shadow:-8px 0 24px #0000001f;transition:transform .22s ease,visibility 0s linear .22s}#resource-detail-drawer.open{transition-delay:0s}.pmo-modal-backdrop,.txn-modal-backdrop,[id$=-modal][style*="position:fixed"]{padding:18px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.pmo-modal-card,.txn-modal-card,[id$=-modal]>.card,[id$=-modal]>div:not([class]){border:1px solid var(--border-md);border-radius:var(--ui-card-r);box-shadow:0 20px 56px #0f172a33}.pmo-modal-header{min-height:34px;margin-bottom:14px}.pmo-modal-close{width:32px;height:32px;border:1px solid var(--border);border-radius:6px}.pmo-modal-close:hover{background:var(--bg);color:var(--text)}@media(max-width:1100px){.content{padding:16px}.system-split-grid{grid-template-columns:1fr!important}.form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-toolbar--single-line,.actual-spend-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.filter-toolbar--single-line .filter-control,.filter-toolbar--single-line .filter-control--search,.filter-toolbar--single-line .ms-wrap,.actual-spend-toolbar .filter-control,.actual-spend-toolbar .ms-wrap{width:100%;max-width:none}.filter-toolbar--single-line .filter-control--search,.filter-toolbar--single-line .filter-actions,.actual-spend-actions,.actual-spend-toolbar .filter-actions{grid-column:1 / -1}}@media(max-width:760px){:root{--sidebar-rail-w: 56px;--chrome-gutter: 12px;--ui-table-min: 680px}.sidebar,.sidebar.collapsed{width:var(--sidebar-rail-w);overflow:hidden}.sidebar .sb-logo,.sidebar .sb-nav,.sidebar .sb-footer,.sidebar.collapsed .sb-logo,.sidebar.collapsed .sb-nav,.sidebar.collapsed .sb-footer{width:var(--sidebar-rail-w)}.sidebar:before,.sidebar.collapsed:before{width:var(--sidebar-rail-w)!important}.sidebar .sb-logo{padding-inline:11px}.sidebar .sb-logo>div:not(.sb-dot),.sidebar .sb-brand,.sidebar .sb-brand-sub,.sidebar .sb-section,.sidebar .sb-badge,.sidebar .theme-toggle-label{display:none}.sidebar .sb-item,.sidebar .sb-sub-item{width:40px;min-width:40px;height:36px;min-height:36px;margin-inline:0;padding:9px 11px;color:transparent;overflow:hidden}.sidebar .sb-item svg,.sidebar .sb-sub-item svg,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-item svg,.sidebar.collapsed:not(:hover):not(:focus-within) .sb-sub-item svg{color:var(--text-2);opacity:.82;transform:none}.sidebar .sb-item.active svg,.sidebar .sb-sub-item.active svg{color:var(--blue-800);opacity:1}.sidebar .sb-sub{margin-left:0}.sidebar .theme-toggle{width:40px;padding-inline:4px}.sidebar-toggle{display:none}.topbar{height:52px;min-height:52px;padding-inline:12px}.topbar-title{font-size:13px}.content,.card{padding:12px}.metric-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.metric-card{min-height:80px;padding:11px 12px}.metric-val{font-size:21px}.form-grid,.form-grid-3,.device-form-grid,.settings-grid,.settings-grid-tight{grid-template-columns:1fr!important}.type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-toolbar,.filter-toolbar--single-line,.actual-spend-toolbar{display:grid;grid-template-columns:1fr;padding:10px}.filter-control,.filter-control--search,.filter-toolbar--single-line .filter-control,.filter-toolbar--single-line .filter-control--search,.filter-toolbar--single-line .ms-wrap,.actual-spend-toolbar .filter-control,.actual-spend-toolbar .ms-wrap,.filter-actions,.actual-spend-actions{width:100%;max-width:none;grid-column:1}.filter-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-left:0}.filter-actions>*{min-width:0}.filter-actions>:only-child{grid-column:1 / -1}.filter-action-row,.action-row,.pmo-modal-footer,.pend-actions{flex-wrap:wrap}.tab-bar,.cost-tab-bar{margin-inline:0;padding-inline:0}.pmo-modal-backdrop,.txn-modal-backdrop,[id$=-modal][style*="position:fixed"]{align-items:flex-end!important;padding:0}.pmo-modal-card,.txn-modal-card,[id$=-modal]>.card,[id$=-modal]>div:not([class]){width:100%!important;max-width:100%!important;max-height:92dvh!important;margin:0;padding:18px!important;border-radius:14px 14px 0 0!important;overflow-y:auto}#resource-detail-drawer{width:min(100%,520px)!important}}@media(max-width:480px){:root{--sidebar-rail-w: 52px;--ui-table-min: 620px}.content{padding:10px}.topbar{padding-inline:10px}.metric-row{grid-template-columns:1fr!important}.metric-card{min-height:72px}.filter-actions{grid-template-columns:1fr}.filter-actions>*{grid-column:1;width:100%}.pmo-modal-footer>*,.action-row>*{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){.view.active{animation:none}}.pmo-workspace-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 18px;padding:2px 0 16px;border-bottom:1px solid var(--border)}.workspace-page-copy{min-width:0}.workspace-eyebrow{display:block;margin-bottom:5px;color:var(--blue-700, #1d4ed8);font-size:9px;font-weight:800;letter-spacing:.11em}.workspace-page-copy h1{margin:0;color:var(--text);font-size:clamp(20px,2vw,26px);line-height:1.15;letter-spacing:-.025em}.workspace-page-copy p,.workspace-action-hero p,.workspace-panel-head p{margin:5px 0 0;color:var(--text-3);font-size:11px;line-height:1.5}.workspace-page-tools,.workspace-saved-tools{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}.workspace-saved-tools{padding:5px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.workspace-saved-tools label{padding-left:5px;color:var(--text-3);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.workspace-saved-tools select{min-width:126px;height:30px;border:0;background:var(--bg);color:var(--text);font:inherit;font-size:11px}.workspace-delete-view{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--text-3);font-size:17px;cursor:pointer}.workspace-delete-view:hover{background:var(--red-50, #fef2f2);color:var(--red)}.workspace-page-primary{min-height:40px;white-space:nowrap}.workspace-action-hero{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;overflow:hidden;margin-bottom:14px;padding:24px;border:1px solid color-mix(in srgb,var(--blue) 20%,var(--border));border-radius:var(--ui-card-r);background:linear-gradient(130deg,color-mix(in srgb,var(--blue-50) 86%,var(--surface)),var(--surface) 65%)}.workspace-action-hero:after{content:"";position:absolute;right:-50px;top:-70px;width:220px;height:220px;border-radius:50%;background:color-mix(in srgb,var(--blue) 8%,transparent);pointer-events:none}.workspace-action-hero>*{position:relative;z-index:1}.workspace-action-hero h2{max-width:680px;margin:0;color:var(--text);font-size:clamp(22px,2.4vw,31px);line-height:1.16;letter-spacing:-.035em}.workspace-role-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:360px}.workspace-role-list span{padding:6px 9px;border:1px solid color-mix(in srgb,var(--blue) 25%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--blue-800, #1e40af);font-size:10px;font-weight:700}.workspace-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.workspace-kpi-card{min-width:0;min-height:118px;padding:16px;border:1px solid var(--border);border-radius:var(--ui-card-r);background:var(--surface);color:var(--text);text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.workspace-kpi-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--blue) 38%,var(--border));box-shadow:0 8px 22px #0f172a12}.workspace-kpi-label{display:block;color:var(--text-2);font-size:10px;font-weight:700}.workspace-kpi-card strong{display:block;margin:6px 0 4px;color:var(--text);font-size:29px;line-height:1;letter-spacing:-.04em}.workspace-kpi-card small{display:block;overflow:hidden;color:var(--text-3);font-size:10px;line-height:1.4;text-overflow:ellipsis}.workspace-action-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.8fr);gap:14px}.workspace-panel{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--ui-card-r);background:var(--surface)}.workspace-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}.workspace-panel-head h3{margin:0;color:var(--text);font-size:13px}.workspace-task-list,.workspace-quick-list{display:flex;flex-direction:column}.workspace-task,.workspace-quick{display:grid;width:100%;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:pointer}.workspace-task{grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 18px}.workspace-quick{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 18px}.workspace-task:last-child,.workspace-quick:last-child{border-bottom:0}.workspace-task:hover,.workspace-quick:hover{background:var(--bg)}.workspace-task strong,.workspace-quick strong{display:block;overflow:hidden;color:var(--text);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.workspace-task small,.workspace-quick small{display:block;margin-top:3px;overflow:hidden;color:var(--text-3);font-size:10px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.workspace-task-dot{width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 12%,transparent)}.workspace-task-dot--resource{background:var(--amber);box-shadow:0 0 0 3px color-mix(in srgb,var(--amber) 15%,transparent)}.workspace-task-dot--device{background:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 15%,transparent)}.workspace-task-arrow,.workspace-quick>span:last-child{color:var(--text-3);font-size:20px}.workspace-empty{display:flex;flex-direction:column;align-items:center;padding:42px 18px;text-align:center}.workspace-empty strong{color:var(--text);font-size:12px}.workspace-empty span{margin-top:5px;color:var(--text-3);font-size:10px}.workspace-quick--primary strong{color:var(--blue-700, #1d4ed8)}.workspace-save-modal{display:none;position:fixed;inset:0;z-index:1600;align-items:center;justify-content:center;background:#0f172a75}.workspace-save-modal.open{display:flex}.workspace-save-card{width:min(420px,calc(100vw - 28px));padding:20px;background:var(--surface)}.workspace-save-card .pmo-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.workspace-save-card .pmo-modal-header strong,.workspace-save-card .pmo-modal-header small{display:block}.workspace-save-card .pmo-modal-header small{margin-top:4px;color:var(--text-3);font-size:10px}.workspace-save-label{display:block;margin:18px 0 6px;color:var(--text-2);font-size:10px;font-weight:700}.workspace-save-card input:not([type=hidden]){width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--border-md);border-radius:7px;background:var(--surface);color:var(--text)}.workspace-save-card .pmo-modal-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.pmo-detail-drawer-backdrop{align-items:stretch!important;justify-content:flex-end!important;padding:0!important}.pmo-detail-drawer-backdrop>div{width:min(720px,96vw)!important;max-width:96vw!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;padding:22px 24px!important;border-radius:0!important;border:0!important;border-left:1px solid var(--border)!important;overflow-y:auto!important;box-shadow:-12px 0 36px #0f172a29!important}@media(max-width:980px){.workspace-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-action-grid{grid-template-columns:1fr}}@media(max-width:760px){.pmo-workspace-page-head,.workspace-action-hero{align-items:flex-start;flex-direction:column}.workspace-page-tools{align-items:stretch;flex-direction:column;width:100%}.workspace-saved-tools{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;width:100%}.workspace-saved-tools select{min-width:0;width:100%}.workspace-page-primary{width:100%}.workspace-action-hero{padding:18px}.workspace-role-list{justify-content:flex-start;max-width:none}.workspace-kpi-card{min-height:104px}.pmo-detail-drawer-backdrop{align-items:stretch!important}.pmo-detail-drawer-backdrop>div{width:100%!important;max-width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}}@media(max-width:480px){.workspace-kpi-grid{grid-template-columns:1fr}.workspace-kpi-card{min-height:90px}.workspace-saved-tools{grid-template-columns:auto minmax(0,1fr) auto auto}.workspace-task{padding-inline:14px}}#view-device{padding:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}#view-device>.pmo-workspace-page-head{margin-bottom:14px}#view-budget>.cost-tab-bar,#view-license>.tab-bar,#view-device>.tab-bar,#view-cost>.cost-tab-bar,#view-history .history-tabs-shell{display:flex;align-items:flex-end;gap:0;min-height:40px;margin:0 0 14px!important;padding:0;overflow-x:auto;border-bottom:1px solid var(--border-md);background:transparent}#view-history .history-tabs-scroll{display:flex!important;align-items:flex-end;gap:0!important;min-height:40px;padding:0!important;border-radius:0!important;background:transparent!important}:is(#view-budget,#view-license,#view-device,#view-cost) :is(.tab-btn,.cost-stab),#view-history .hist-tab-btn{position:relative;height:40px;padding:0 15px;border:0!important;border-radius:0!important;background:transparent!important;color:var(--text-3)!important;box-shadow:none!important;opacity:1}:is(#view-budget,#view-license,#view-device,#view-cost) :is(.tab-btn,.cost-stab):hover,#view-history .hist-tab-btn:hover{background:color-mix(in srgb,var(--blue) 6%,transparent)!important;color:var(--text)!important;opacity:1}:is(#view-budget,#view-license,#view-device,#view-cost) :is(.tab-btn,.cost-stab).active,#view-license :is(.tab-btn,.lic-tab-btn).lic-tab-active,#view-history .hist-tab-btn.active{background:transparent!important;color:var(--blue-800)!important;font-weight:700!important;box-shadow:none!important;opacity:1}:is(#view-budget,#view-license,#view-device,#view-cost) :is(.tab-btn,.cost-stab).active:after,#view-license :is(.tab-btn,.lic-tab-btn).lic-tab-active:after,#view-history .hist-tab-btn.active:after{content:"";position:absolute;right:14px;bottom:0;left:14px;height:2px;border-radius:2px 2px 0 0;background:var(--blue)}#dev-panel-registry>.metric-row,#dev-panel-orders>.metric-row{padding-top:0;margin-bottom:12px!important}#dev-panel-registry .metric-card,#dev-panel-orders .metric-card{min-height:86px;border-radius:7px;border-color:var(--border);background:var(--surface)}#dev-panel-registry>.system-split-grid{gap:10px!important;margin-bottom:12px!important}#dev-panel-registry>.system-split-grid>.card,#dev-panel-orders>.card,#dev-panel-registry>.card{margin:0;border-radius:7px;border-color:var(--border);background:var(--surface)}#dev-panel-registry>.system-split-grid>.card>div:first-child{min-height:40px;padding:11px 14px 9px!important;font-size:11px!important;font-weight:700!important}#view-device .filter-toolbar--device{display:grid;grid-template-columns:repeat(5,minmax(112px,1fr));gap:8px;margin:0 0 10px;padding:10px;border:1px solid var(--border);border-radius:var(--ui-card-r);background:var(--surface)}#view-device .filter-toolbar--device>.filter-control:not(.filter-control--search){grid-row:1}#view-device .filter-toolbar--device>.filter-control--search{grid-row:2;grid-column:1 / 4;width:100%;max-width:none}#view-device .filter-toolbar--device>.filter-actions{grid-row:2;grid-column:4 / 6;display:flex;justify-content:flex-end;width:100%;margin-left:0}#view-device .filter-toolbar--device .filter-label{display:none}#view-device .filter-toolbar--device .filter-control,#view-device .filter-toolbar--device .ms-wrap,#view-device .filter-toolbar--device .ms-trigger{width:100%;min-width:0;max-width:none}#view-device .filter-toolbar--device .filter-search{border-color:color-mix(in srgb,var(--blue) 58%,var(--border-md))}#view-device .hist-table th{height:38px}@media(max-width:1100px){#view-device .filter-toolbar--device{grid-template-columns:repeat(2,minmax(0,1fr))}#view-device .filter-toolbar--device>.filter-control,#view-device .filter-toolbar--device>.filter-control:not(.filter-control--search),#view-device .filter-toolbar--device>.filter-control--search,#view-device .filter-toolbar--device>.filter-actions{grid-row:auto;grid-column:auto}#view-device .filter-toolbar--device>.filter-control--search,#view-device .filter-toolbar--device>.filter-actions{grid-column:1 / -1}#view-device .filter-toolbar--device>.filter-actions{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:760px){#view-device{padding:0}#view-device .filter-toolbar--device{grid-template-columns:1fr;padding-inline:10px}#view-device .filter-toolbar--device>.filter-control--search,#view-device .filter-toolbar--device>.filter-actions{grid-column:1}#view-device .filter-toolbar--device>.filter-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){#view-device .filter-toolbar--device>.filter-actions{grid-template-columns:1fr}}#resource-detail-drawer{transform:translate(100%);visibility:hidden;z-index:1100}#resource-detail-drawer.open{transform:translate(0);visibility:visible}.badge-purple{background:#e9d5ff;color:#6b21a8}.badge-teal{background:#ccfbf1;color:#115e59}.badge-yellow{background:#fef9c3;color:#854d0e}.pend-tab-btn.active{font-weight:800!important}.log-filter-grid{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(120px,.9fr) minmax(130px,.9fr) 130px 130px auto;gap:8px;align-items:end}.log-field label{display:block;font-size:10px;font-weight:700;color:var(--text-3);text-transform:uppercase;margin-bottom:5px}.log-field input,.log-field select{box-sizing:border-box;width:100%;height:38px;min-height:38px;padding:7px 10px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-family:inherit;font-size:12px;outline:none}.log-field input:focus,.log-field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--focus-ring)}@media(max-width:1100px){.log-filter-grid{grid-template-columns:1fr 1fr}.log-filter-grid .btn-ghost{height:38px}}.res-timeline-cell{display:block;width:100%;max-width:100%;height:auto!important;min-height:0;padding:0!important;border-bottom:none!important;overflow:hidden;--timeline-person-width:190px;--timeline-grid-min-width:864px}.res-timeline-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:10px}.res-timeline-toolbar-controls{display:grid;grid-template-columns:minmax(190px,1fr) minmax(118px,.65fr) minmax(118px,.65fr) auto;gap:8px;align-items:center;justify-self:end;width:min(820px,100%)}.res-timeline-toolbar-select{width:100%;min-width:0;font-size:11px;padding:5px 8px}.res-timeline-table,.res-timeline-table tbody,.res-timeline-table tbody>tr{display:block!important;width:100%!important;max-width:100%!important}.res-timeline-wrap{width:100%;max-width:100%;overflow:auto;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);max-height:calc(100vh - 300px);overscroll-behavior-x:contain;touch-action:pan-x pan-y}.res-timeline-head,.res-timeline-row{display:flex;width:100%;min-width:calc(var(--timeline-person-width) + var(--timeline-grid-min-width))}.res-timeline-head{position:sticky;top:0;z-index:3;background:var(--surface);border-bottom:1px solid var(--border)}.res-timeline-person{width:var(--timeline-person-width);min-width:var(--timeline-person-width);padding:6px 9px;border-right:1px solid var(--border);background:var(--surface);position:sticky;left:0;z-index:2}.res-timeline-head-left{font-size:9px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;z-index:4}.res-timeline-months{display:grid;grid-template-columns:repeat(var(--timeline-month-count),minmax(0,1fr));min-height:24px;background:var(--surface);min-width:var(--timeline-grid-min-width);flex:1 0 var(--timeline-grid-min-width)}.res-timeline-month{border-left:1px solid var(--border);padding:4px 3px;text-align:center;font-size:9px;font-weight:800;color:var(--text-2);text-transform:uppercase;line-height:1.1}.res-timeline-track{position:relative;min-height:38px;background-image:linear-gradient(to right,var(--border) 1px,transparent 1px);background-color:var(--surface-2,var(--bg));min-width:var(--timeline-grid-min-width);flex:1 0 var(--timeline-grid-min-width)}.res-timeline-row{border-bottom:1px solid var(--border)}.res-timeline-row.is-offboarded .res-timeline-person{background:color-mix(in srgb,var(--surface) 72%,#94a3b8)}.res-timeline-row.is-offboarded .res-timeline-track{background-color:color-mix(in srgb,var(--surface-2,var(--bg)) 76%,#94a3b8)}.res-timeline-row:last-child{border-bottom:none}.res-timeline-bar{position:absolute;top:7px;height:22px;border:none;border-radius:5px;color:#fff;text-align:left;padding:3px 5px;overflow:hidden;cursor:pointer;box-shadow:0 2px 8px #0f172a1f}.res-timeline-bar.is-offboarded{background:#94a3b8!important;color:#fff!important;box-shadow:none}.res-timeline-bar span{display:block;font-size:9px;font-weight:800;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.res-timeline-bar small{display:block;font-size:8px;line-height:1.1;margin-top:2px;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.res-timeline-person-name{font-size:11px;font-weight:800;color:var(--text);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.res-timeline-person-meta{font-size:9px;color:var(--text-3);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.res-timeline-person-badge{margin-top:3px}.res-timeline-person-badge .badge{font-size:8px;padding:2px 6px}.res-timeline-tools{display:flex;align-items:center;gap:6px}.res-timeline-scroll-btn{height:28px;min-width:30px;padding:0 9px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-family:inherit;font-size:12px;font-weight:800;cursor:pointer}.res-timeline-scroll-btn:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-50)}.res-request-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-2px 0 10px;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}.res-request-filters-title{font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}#res-filter-dropdowns{display:flex;gap:6px;flex-wrap:wrap}.res-filter-menu{position:relative}.res-filter-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;min-width:126px;height:34px;padding:0 9px;border:1px solid var(--border-md);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}.res-filter-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.res-filter-trigger b{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--text-3);font-size:13px;line-height:1}.res-filter-menu.open .res-filter-trigger{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 14%,transparent)}.res-filter-popover{display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:45;width:232px;max-width:78vw;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:0 14px 34px #0f172a2e;overflow:hidden}.res-filter-menu.open .res-filter-popover{display:block}.res-filter-actions{display:flex;align-items:center;justify-content:space-between;padding:8px 9px;border-bottom:1px solid var(--border);background:var(--bg)}.res-filter-actions button{border:0;background:transparent;color:var(--blue);font-family:inherit;font-size:11px;font-weight:800;cursor:pointer}.res-filter-options{max-height:246px;overflow:auto;padding:5px}.res-filter-option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;border-radius:6px;font-size:12px;cursor:pointer;transition:background .16s ease,transform .16s ease,color .16s ease}.res-filter-option:hover{background:var(--bg);transform:translateY(-1px)}.res-filter-option.is-toggled{animation:res-filter-tick .3s cubic-bezier(.2,.8,.2,1)}.res-filter-option input{width:14px;height:14px;accent-color:var(--blue);transition:transform .16s ease,box-shadow .18s ease}.res-filter-option input:checked{transform:scale(1.08);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 16%,transparent)}.res-filter-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.res-filter-option em{font-style:normal;color:var(--text-3);font-size:11px}.res-filter-empty{padding:12px;color:var(--text-3);font-size:12px;text-align:center}.res-people-view-toggle{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--border-md);border-radius:999px;background:color-mix(in srgb,var(--surface-2) 82%,var(--surface));box-shadow:inset 0 1px #ffffff0a;margin-left:auto}.res-people-view-toggle button{height:28px;min-width:44px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--text-3);font-family:inherit;font-size:11px;font-weight:800;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.res-people-view-toggle button:hover{color:var(--text);background:color-mix(in srgb,var(--blue) 7%,transparent)}.res-people-view-toggle button:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 18%,transparent)}.res-people-view-toggle button.is-active{background:var(--surface);color:var(--blue);box-shadow:0 2px 8px #0f172a1f}.res-people-card-host{padding:14px!important;overflow:visible!important}.res-people-card-empty{text-align:center;padding:34px;color:var(--text-3);font-size:12px}.res-people-card-shell{padding:14px;background:var(--bg);border-top:1px solid var(--border)}.res-people-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.res-people-card{position:relative;min-height:250px;padding:14px 14px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 1px #ffffff0a inset;display:flex;flex-direction:column;gap:10px}.res-people-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:22px}.res-people-more{width:28px;height:28px;padding:0!important;justify-content:center;color:var(--text-3)}.res-avatar{width:58px;height:58px;border-radius:50%;margin:0 auto;display:grid;place-items:center;background:linear-gradient(135deg,#8dd7cf,#a7c7e7);border:4px solid color-mix(in srgb,var(--blue) 12%,var(--surface));color:#0f172a;font-size:18px;font-weight:900;overflow:hidden}.res-avatar img{width:100%;height:100%;object-fit:cover}.res-people-name{text-align:center;font-size:13px;font-weight:800;color:var(--text);line-height:1.2;min-height:16px}.res-people-role{text-align:center;font-size:11px;color:var(--text-3);line-height:1.25;min-height:14px}.res-people-info{border:1px solid var(--border);border-radius:7px;background:var(--surface-2);padding:8px;display:grid;gap:5px;font-size:11px;color:var(--text-2);min-height:76px}.res-people-line{display:flex;align-items:center;gap:6px;min-width:0}.res-people-line b{font-weight:800;color:var(--text);min-width:42px}.res-people-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.res-people-project-line{align-items:flex-start}.res-people-project-tags{display:flex!important;flex-wrap:wrap;gap:4px;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.45}.res-people-footer{margin-top:auto;display:flex;align-items:center;justify-content:flex-start;gap:8px;font-size:10px;color:var(--text-3)}.res-cell-clip{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#res-table-body .res-clickable-row{cursor:pointer}#res-table-body .res-clickable-row:hover td{background:color-mix(in srgb,var(--blue) 5%,var(--surface))}#res-table-body .res-clickable-row:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.res-row-actions{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:100%}.res-icon-btn{width:32px;height:32px;padding:0!important;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-md);border-radius:6px;background:var(--surface);color:var(--text-2);box-shadow:none}.res-icon-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.res-icon-btn:hover{border-color:var(--blue);background:var(--blue-50)!important;color:var(--blue)!important}.res-icon-btn.is-danger:hover{border-color:color-mix(in srgb,var(--red) 44%,var(--border-md));background:var(--red-50)!important;color:var(--red)!important}.res-project-group-row td{padding:0!important;background:var(--surface-2)!important;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.res-project-group{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:8px 14px;border-left:5px solid var(--project-color);background:color-mix(in srgb,var(--project-color) 10%,var(--surface));color:var(--text)}.res-project-group-main{display:flex;align-items:center;gap:8px;min-width:0}.res-project-swatch{width:12px;height:12px;border-radius:4px;background:var(--project-color);box-shadow:0 0 0 1px color-mix(in srgb,var(--project-color) 72%,var(--border-md))}.res-project-group-name{font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.res-project-group-meta{font-size:11px;color:var(--text-3);white-space:nowrap}@keyframes res-filter-tick{0%{transform:scale(.985);background:color-mix(in srgb,var(--blue) 10%,transparent)}55%{transform:scale(1.018);background:color-mix(in srgb,var(--blue) 14%,transparent)}to{transform:scale(1);background:transparent}}#view-resource{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;overflow:visible}#res-chrome{margin:0 0 14px;padding:0;background:transparent;border-bottom:1px solid var(--border-md);border-radius:0}#res-session-panel{position:relative;margin:0;padding:0;background:transparent;border:0;box-shadow:none;overflow-x:auto}.res-basebar{display:flex;align-items:flex-end;gap:2px;min-height:40px;padding:0;white-space:nowrap}#res-tab-bar{display:flex;align-items:flex-end;gap:0;min-width:0}.res-tab{height:40px;padding:0 15px!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--text-3)!important;font-size:12px;font-weight:700!important;box-shadow:none!important;position:relative;opacity:1}.res-tab:hover{background:color-mix(in srgb,var(--blue) 6%,transparent)!important;color:var(--text)!important}.res-tab.is-active{background:transparent!important;color:var(--blue-800)!important;box-shadow:none!important}.res-tab.is-active:after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--blue)}#res-kpi{padding-top:0;margin-bottom:12px!important}#res-kpi .res-kpi-card{min-height:86px;border-radius:7px;box-shadow:none;border-color:var(--border);background:var(--surface)}#res-status-panel{margin:0 0 8px;padding:9px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px}#view-resource>.filter-row{margin:0 0 10px!important;padding:9px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px;display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important}#view-resource>.filter-row #res-search{flex:1 1 360px;min-width:220px!important;height:34px}#view-resource>.filter-row .btn-export,#view-resource>.filter-row .btn-primary{flex:0 0 auto}#view-resource>.filter-row .btn-primary{margin-left:0!important}#view-resource>.filter-row #res-f-status,#view-resource>.filter-row #res-f-hiring,#view-resource>.filter-row #res-f-project,#view-resource>.filter-row #res-f-level{display:none!important}#view-resource>.card{border-radius:7px;margin:0}#res-pagination{padding:10px 0 0!important}.res-form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}.res-form-grid-3 .ri{width:100%}.res-form-grid-3 .pmo-select{width:100%;line-height:1}.res-form-grid-3 .pmo-select-trigger{width:100%}@media(max-width:980px){.res-form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:640px){.res-form-grid-3{grid-template-columns:1fr!important}}@media(max-width:1100px){.res-timeline-toolbar{justify-content:stretch}.res-timeline-toolbar-controls{width:100%}}@media(max-width:820px){.res-timeline-cell{--timeline-person-width:150px;--timeline-grid-min-width:864px}.res-timeline-toolbar{align-items:start}.res-timeline-toolbar-controls{grid-template-columns:1fr 1fr}.res-timeline-tools{grid-column:1/-1;justify-content:flex-start}.res-timeline-wrap{max-height:none}.res-request-filters{align-items:flex-start}#res-filter-dropdowns{width:100%}.res-filter-menu{flex:1 1 180px}.res-filter-trigger{width:100%}.res-people-view-toggle{margin-left:0}#view-resource>.filter-row{flex-wrap:wrap!important}#view-resource>.filter-row #res-search{flex-basis:100%}}#res-drawer-overlay{position:fixed;inset:0;background:#00000059;opacity:0;pointer-events:none;transition:opacity .2s;z-index:1099}#res-drawer-overlay.open{opacity:1;pointer-events:auto}#resource-detail-drawer{position:fixed;top:0;right:0;height:100vh;width:min(560px,96vw)!important;max-width:96vw!important;padding:24px;box-sizing:border-box;background:var(--surface,#fff);border-left:1px solid var(--border,#e5e7eb);box-shadow:-8px 0 24px #0000001f;transform:translate(100%);visibility:hidden;transition:transform .22s ease,visibility 0s linear .22s;z-index:1100;overflow-x:hidden;overflow-y:auto}#resource-detail-drawer.open{transform:translate(0);visibility:visible;transition-delay:0s}.res-detail-drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.res-detail-hero{display:grid;grid-template-columns:116px minmax(0,1fr) auto;gap:16px;align-items:center;margin-bottom:16px}.res-detail-avatar{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#8dd7cf,#a7c7e7);border:5px solid color-mix(in srgb,var(--blue) 12%,var(--surface));font-size:28px;font-weight:900;color:#0f172a;box-shadow:0 10px 28px color-mix(in srgb,var(--blue) 12%,transparent)}.res-detail-avatar.is-clickable{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.res-detail-avatar.is-clickable:hover{transform:translateY(-1px);box-shadow:0 14px 34px color-mix(in srgb,var(--blue) 18%,transparent)}.res-detail-avatar img{width:100%;height:100%;object-fit:cover}.res-detail-title{font-size:15px;font-weight:800;line-height:1.2;color:var(--text)}.res-detail-sub{font-size:12px;color:var(--text-3);margin-top:3px;line-height:1.35}.res-detail-photo-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.res-detail-section{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px;margin-bottom:12px}.res-detail-section.is-muted{background:var(--bg)}.res-detail-section-title{font-size:11px;font-weight:800;color:var(--text-2);margin-bottom:10px;text-transform:uppercase;letter-spacing:.25px}.res-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.res-detail-field span{display:block;font-size:11px;color:var(--text-3);line-height:1.2}.res-detail-field strong{display:block;font-size:12px;color:var(--text);margin-top:3px;line-height:1.35}.res-detail-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.res-detail-edit-grid .fg{gap:4px;min-width:0}.res-detail-edit-grid .fg label{font-size:11px;color:var(--text-3)}.res-detail-edit-grid .fg input,.res-detail-edit-grid .fg select{height:34px;font-size:12px}.res-detail-edit-grid .pmo-select{width:100%;min-width:0;max-width:100%;height:34px;line-height:1}.res-detail-edit-grid .pmo-select-trigger{width:100%;min-width:0;max-width:100%;height:34px;min-height:34px;border-radius:8px;font-size:12px}.res-detail-code-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:8px 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface);margin-bottom:6px;font-size:12px}.res-detail-note{background:var(--bg);border-radius:7px;padding:10px;font-size:12px;white-space:pre-wrap;color:var(--text-2);line-height:1.55}.res-detail-actions{position:sticky;bottom:0;display:flex;gap:8px;flex-wrap:wrap;background:var(--surface);border-top:1px solid var(--border);padding:12px 0 0;margin-top:16px}.res-photo-preview{position:fixed;inset:0;z-index:2400;display:flex;align-items:center;justify-content:center;padding:28px;background:#000000b8}.res-photo-preview img{max-width:min(720px,92vw);max-height:86vh;border-radius:14px;box-shadow:0 24px 80px #0000008c;object-fit:contain;background:#000}.res-photo-preview button{position:absolute;right:24px;top:20px}@media(max-width:520px){#resource-detail-drawer{width:100vw!important;max-width:100vw!important;padding:18px}.res-detail-hero{grid-template-columns:88px minmax(0,1fr) auto;gap:12px}.res-detail-avatar{width:80px;height:80px;font-size:24px}.res-detail-edit-grid{grid-template-columns:minmax(0,1fr)}}.settings-shell{width:100%;max-width:none;margin:0;display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible;min-height:calc(100vh - 92px)}.settings-rail{position:sticky;top:0;align-self:start;min-height:calc(100vh - 92px);border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface) 96%,var(--blue-50));box-shadow:0 10px 30px color-mix(in srgb,var(--text) 5%,transparent);padding:16px 10px;display:flex;flex-direction:column;gap:18px}.settings-profile{display:flex;align-items:center;gap:10px;padding:4px 8px 14px;border-bottom:1px solid var(--border)}.settings-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue-50),var(--green-50));color:var(--blue-800);font-weight:800;font-size:12px;border:1px solid var(--blue-100)}.settings-profile strong{display:block;font-size:12px;color:var(--text);line-height:1.2}.settings-profile span{display:block;font-size:10px;color:var(--text-3);line-height:1.3;margin-top:2px}.settings-nav-group{display:grid;gap:4px}.settings-nav-label{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.11em;color:var(--text-3);padding:0 10px;margin-bottom:3px}.settings-nav-item{display:flex;align-items:center;gap:8px;min-height:34px;border-radius:8px;padding:7px 9px;color:var(--text-2);text-decoration:none;font-size:12px;font-weight:600;border:1px solid transparent;background:transparent;text-align:left;font-family:inherit;cursor:pointer;width:100%;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s cubic-bezier(.22,1,.36,1),box-shadow .16s ease}.settings-nav-item:hover{background:var(--surface-2);color:var(--text);transform:translate(2px)}.settings-nav-item:active{transform:translate(2px) scale(.985)}.settings-nav-item.active{background:var(--blue-50);color:var(--blue-800);border-color:var(--blue-100);box-shadow:0 8px 20px color-mix(in srgb,var(--blue) 10%,transparent)}.settings-nav-icon{width:16px;height:16px;display:inline-grid;place-items:center;color:currentColor;flex:0 0 auto}.settings-nav-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.settings-main{min-width:0;padding:0 0 28px;background:transparent}.settings-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin-bottom:14px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px color-mix(in srgb,var(--text) 5%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.settings-crumb{font-size:12px;font-weight:700;color:var(--text)}.settings-crumb span{color:var(--text-3);font-weight:500;margin-left:5px}.settings-top-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.settings-dirty{font-size:11px;color:var(--amber);font-weight:700;display:none}.settings-dirty.is-visible{display:inline;animation:settings-dirty-in .2s cubic-bezier(.22,1,.36,1) both}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:0 1px #ffffff05 inset;margin-bottom:14px;animation:settings-card-in .22s cubic-bezier(.22,1,.36,1) both;transition:border-color .16s ease,box-shadow .18s ease,transform .18s cubic-bezier(.22,1,.36,1)}.settings-card:hover{border-color:var(--border-md);box-shadow:0 1px #ffffff06 inset,0 10px 28px color-mix(in srgb,var(--text) 5%,transparent)}.settings-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid var(--border);margin-bottom:12px}.settings-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.settings-panel h3,.settings-card h3{font-size:15px;font-weight:700;margin:0;color:var(--text);letter-spacing:0}.settings-panel p,.settings-card p{font-size:11px;margin:3px 0 0;color:var(--text-3);line-height:1.45}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-grid-tight{grid-template-columns:1fr 1.45fr}.settings-list{min-height:132px;resize:vertical;line-height:1.45}.settings-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.settings-summary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.settings-summary-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-summary{min-height:74px;border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:12px;display:flex;align-items:center;gap:10px;animation:settings-card-in .22s cubic-bezier(.22,1,.36,1) both}.settings-summary-mark{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--blue-100);background:var(--blue-50);color:var(--blue-800);font-weight:800}.settings-summary strong{display:block;font-size:18px;line-height:1;color:var(--text)}.settings-summary span{display:block;font-size:10px;color:var(--text-3);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid var(--border)}.settings-row:last-child{border-bottom:0;padding-bottom:0}.settings-row-title{font-size:13px;font-weight:700;color:var(--text)}.settings-row-note{font-size:11px;color:var(--text-3);line-height:1.45;margin-top:2px}.settings-row-stack{grid-template-columns:1fr;align-items:start}.settings-inline-fields{display:grid;grid-template-columns:minmax(180px,1fr) 136px auto;gap:10px;align-items:end}.settings-format-preview{min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:7px 10px;display:flex;align-items:center;gap:8px}.settings-format-preview span{font-size:10px;color:var(--text-3);text-transform:uppercase;font-weight:800}.settings-format-preview strong{font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--text)}.settings-code-format-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-code-format-card{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:12px}.settings-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;border-radius:999px;transition:transform .16s cubic-bezier(.22,1,.36,1)}.settings-switch:active{transform:scale(.96)}.settings-switch input{position:absolute;opacity:0;pointer-events:none}.settings-switch span{position:relative;width:38px;height:22px;border-radius:999px;background:var(--gray-50);border:1px solid var(--border-md);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.settings-switch span:after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;border-radius:50%;background:var(--surface);box-shadow:0 1px 4px #00000038;transition:transform .2s cubic-bezier(.22,1,.36,1),background-color .18s ease}.settings-switch:hover span{box-shadow:0 0 0 4px var(--focus-ring)}.settings-switch input:checked+span{background:var(--blue);border-color:var(--blue)}.settings-switch input:checked+span:after{transform:translate(16px)}.settings-member-head,.settings-member-row{display:grid;grid-template-columns:74px minmax(120px,1fr) minmax(170px,1.2fr) 130px minmax(160px,1.2fr) 58px 34px;gap:8px;align-items:center}.settings-member-head{font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.settings-members-list{display:grid;gap:8px}.settings-member-row{padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);transition:border-color .16s ease,background-color .16s ease,transform .16s cubic-bezier(.22,1,.36,1)}.settings-member-row:hover{border-color:var(--blue-100);background:color-mix(in srgb,var(--surface-2) 78%,var(--blue-50))}.settings-member-status{font-size:10px;font-weight:800;color:var(--text-3);transition:color .16s ease}.settings-member-status.is-active{color:var(--green)}.settings-member-row .pmo-select{height:34px;min-height:34px;display:flex;align-items:center;justify-content:stretch;width:100%;min-width:0}.settings-member-row .pmo-select-trigger{width:100%;height:34px;min-height:34px;border-radius:8px;padding:0 10px;box-sizing:border-box}.settings-member-row .pmo-select-menu{top:calc(100% + 4px);min-width:100%;max-width:100%}.settings-project-head,.settings-project-row{display:grid;grid-template-columns:minmax(170px,1.35fr) 104px minmax(116px,1fr) 58px minmax(150px,1.2fr) 34px;gap:8px;align-items:center}.settings-project-head{font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.settings-project-list{display:grid;gap:8px}.settings-project-row{padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);transition:border-color .16s ease,background-color .16s ease,transform .16s cubic-bezier(.22,1,.36,1)}.settings-project-row:hover{border-color:var(--blue-100);background:color-mix(in srgb,var(--surface-2) 78%,var(--blue-50))}.settings-color-input{width:46px;height:34px;padding:3px;border:1px solid var(--border-md);border-radius:8px;background:var(--surface);cursor:pointer}.settings-project-row .pmo-select{height:34px;min-height:34px;display:flex;align-items:center;justify-content:stretch;width:100%;min-width:0}.settings-project-row .pmo-select-trigger{width:100%;height:34px;min-height:34px;border-radius:8px;padding:0 10px;box-sizing:border-box}.settings-project-row .pmo-select-menu{top:calc(100% + 4px);min-width:100%;max-width:100%}.settings-matrix-card{padding:0;border:0;background:transparent;box-shadow:none;overflow:hidden}.settings-matrix-card:hover{border-color:transparent;box-shadow:none}.settings-matrix-card>.settings-panel-head{margin:0;padding:16px;background:var(--surface);border:1px solid var(--border);border-bottom:0;border-radius:12px 12px 0 0}.settings-matrix-wrap{overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:0 0 12px 12px;scrollbar-gutter:stable}.settings-matrix{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;min-width:760px;table-layout:fixed}.settings-matrix-feature-col{width:210px}.settings-matrix-role-col{width:150px}.settings-matrix th,.settings-matrix td{border-bottom:1px solid var(--border);padding:8px;text-align:center;transition:background-color .16s ease}.settings-matrix thead th{height:42px;background:var(--surface-2);font-size:11px;white-space:nowrap}.settings-matrix th:first-child,.settings-matrix td:first-child{text-align:left;background:var(--surface)}.settings-matrix td span{display:block;font-size:10px;color:var(--text-3);font-weight:400;margin-top:2px}.settings-matrix tbody tr:hover td{background:color-mix(in srgb,var(--surface-2) 78%,transparent)}.settings-matrix tbody tr:hover td:first-child{background:var(--surface)}.settings-page-matrix{min-width:1450px}.settings-page-matrix .settings-matrix-feature-col{width:190px}.settings-page-matrix .settings-matrix-role-col{width:105px}.settings-page-matrix th:first-child,.settings-page-matrix td:first-child{position:sticky;left:0;z-index:2;box-shadow:1px 0 0 var(--border)}.settings-page-matrix thead th:first-child{z-index:3;background:var(--surface-2)}.settings-matrix-toggle{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:8px;padding:5px 8px;cursor:pointer;background:transparent;transition:background-color .16s ease,border-color .16s ease,transform .16s cubic-bezier(.22,1,.36,1),box-shadow .16s ease}.settings-matrix-toggle:hover{background:var(--surface);border-color:var(--blue-100);box-shadow:0 8px 18px color-mix(in srgb,var(--blue) 6%,transparent)}.settings-matrix-toggle:active{transform:scale(.965)}.settings-matrix-toggle span{min-width:20px;font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.settings-matrix-toggle[aria-pressed=true]{background:color-mix(in srgb,var(--blue-50) 70%,transparent);border-color:var(--blue-100)}.settings-matrix-toggle[aria-pressed=true] span{color:var(--blue-800)}.settings-check-input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1.5px solid var(--border-md);border-radius:5px;background:var(--surface);display:inline-grid;place-items:center;cursor:pointer;vertical-align:middle;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s cubic-bezier(.22,1,.36,1);position:relative;flex:0 0 auto}.settings-check-input:after{content:"";width:8px;height:8px;border-radius:3px;background:var(--blue);transform:scale(.35);opacity:0;transition:opacity .14s ease,transform .18s cubic-bezier(.22,1,.36,1)}.settings-check-input:hover{border-color:var(--blue);box-shadow:0 0 0 4px var(--focus-ring)}.settings-check-input:active{transform:scale(.88)}.settings-check-input:checked,.settings-matrix-toggle[aria-pressed=true] .settings-check-input{background:color-mix(in srgb,var(--blue) 12%,var(--surface));border-color:var(--blue);animation:settings-check-pop .22s cubic-bezier(.22,1,.36,1)}.settings-check-input:checked:after,.settings-matrix-toggle[aria-pressed=true] .settings-check-input:after{opacity:1;transform:scale(1)}.settings-matrix-toggle .settings-check-input{width:30px;height:18px;border:1px solid var(--border-md);border-radius:999px;background:var(--surface-2);box-shadow:none;position:relative;display:inline-block}.settings-matrix-toggle .settings-check-input:after{content:"";position:absolute;width:12px;height:12px;left:2px;top:2px;border:0;border-radius:50%;background:var(--text-3);opacity:.55;transform:none;transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .16s ease,opacity .16s ease}.settings-matrix-toggle[aria-pressed=true] .settings-check-input{background:var(--blue);border-color:var(--blue)}.settings-matrix-toggle[aria-pressed=true] .settings-check-input:after{opacity:1;transform:translate(12px);background:#fff}.settings-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.settings-role-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px;animation:settings-card-in .22s cubic-bezier(.22,1,.36,1) both}.settings-tabs-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.settings-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-2);min-height:34px;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:7px 10px;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s cubic-bezier(.22,1,.36,1),box-shadow .16s ease}.settings-check:hover{border-color:var(--blue-100);color:var(--text);background:color-mix(in srgb,var(--surface-2) 76%,var(--blue-50));box-shadow:0 8px 18px color-mix(in srgb,var(--blue) 6%,transparent)}.settings-check:active{transform:scale(.975)}.settings-check:has(.settings-check-input:checked){border-color:var(--blue-100);background:var(--blue-50);color:var(--blue-800)}.settings-mini-label{font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin:14px 0 0}.settings-scope{width:200px;min-width:200px}.settings-transition-grid{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;align-items:center;margin-top:8px}.settings-transition-grid label{font-size:11px;font-weight:700;color:var(--text-2)}.settings-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.settings-preview{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:12px}.settings-preview-title{font-size:13px;font-weight:800;color:var(--text);margin-bottom:8px}.settings-preview-line{display:grid;grid-template-columns:58px 1fr;gap:8px;font-size:11px;padding:5px 0;border-top:1px solid var(--border)}.settings-preview-line strong{color:var(--text-3)}.settings-preview-line span{color:var(--text-2);line-height:1.4}.settings-memo-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:8px}.settings-memo-table{width:100%;min-width:840px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px}.settings-memo-table th,.settings-memo-table td{border-bottom:1px solid var(--border);padding:9px;text-align:right}.settings-memo-table th:first-child,.settings-memo-table td:first-child{text-align:left;width:260px;background:var(--surface)}.settings-memo-table tr:last-child td{border-bottom:0}.settings-limit-cell{display:grid;grid-template-columns:minmax(82px,1fr) 32px;gap:6px;align-items:center}.settings-limit-input{width:100%;min-width:0;text-align:right}.settings-limit-unlimited{height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);cursor:pointer;color:var(--text-3);font-weight:800}.settings-limit-unlimited input{position:absolute;opacity:0;pointer-events:none}.settings-limit-unlimited:has(input:checked){border-color:var(--blue-100);background:var(--blue-50);color:var(--blue-800)}.settings-muted-label{display:inline-block;margin-left:6px;font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase}.settings-order-input{width:72px;min-width:72px;text-align:right}.settings-profile-help{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.settings-profile-help div{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:9px 10px;font-size:11px;color:var(--text-2);line-height:1.45}.settings-inline-status{font-size:11px;font-weight:700;color:var(--text-3);margin-bottom:8px}.settings-inline-status.ok{color:var(--green)}.settings-inline-status.error{color:var(--red)}.settings-profile-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:8px}.settings-profile-table{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px}.settings-profile-table th,.settings-profile-table td{border-bottom:1px solid var(--border);padding:8px;vertical-align:top;text-align:left}.settings-profile-table th{font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;background:var(--surface-2)}.settings-profile-table th:nth-child(1),.settings-profile-table td:nth-child(1){width:58px}.settings-profile-table th:nth-child(6),.settings-profile-table th:nth-child(7),.settings-profile-table th:nth-child(8),.settings-profile-table th:nth-child(9),.settings-profile-table td:nth-child(6),.settings-profile-table td:nth-child(7),.settings-profile-table td:nth-child(8),.settings-profile-table td:nth-child(9){width:74px;text-align:center}.settings-profile-table th:last-child,.settings-profile-table td:last-child{width:76px;text-align:right}.settings-profile-table tr:last-child td{border-bottom:0}.settings-profile-id{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-3);font-weight:700}.settings-profile-aliases{min-height:38px;resize:vertical}.settings-profile-check{min-height:34px;display:inline-flex;align-items:center;justify-content:center}.settings-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.settings-type-card{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:12px}.settings-type-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.settings-type-head strong{font-size:14px;color:var(--text)}.settings-type-head span{font-size:11px;color:var(--text-3)}.settings-reason-head,.settings-memo-reason-row{display:grid;grid-template-columns:minmax(0,1fr) 72px 58px 34px;gap:8px;align-items:center}.settings-title-head,.settings-title-row{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(140px,1fr) 72px 58px 34px;gap:8px;align-items:center}.settings-reason-head,.settings-title-head{font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.settings-memo-reasons,.settings-title-list{display:grid;gap:8px;margin:8px 0}.settings-title-row,.settings-memo-reason-row{padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.settings-empty-note{font-size:11px;color:var(--text-3);padding:10px;border:1px dashed var(--border-md);border-radius:8px;background:var(--surface)}.settings-signature-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:8px}.settings-signature-table{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px}.settings-signature-table th,.settings-signature-table td{border-bottom:1px solid var(--border);padding:8px;vertical-align:middle;text-align:left}.settings-signature-table th{font-size:10px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;background:var(--surface-2)}.settings-signature-table th:nth-child(3),.settings-signature-table td:nth-child(3){width:190px}.settings-signature-table th:nth-child(4),.settings-signature-table td:nth-child(4){width:128px}.settings-signature-table th:nth-child(5),.settings-signature-table td:nth-child(5){width:100px}.settings-signature-table tr:last-child td{border-bottom:0}.settings-signature-file{font-size:11px}.settings-signature-actions{display:flex;gap:8px;align-items:center}.settings-signature-preview{grid-column:1/-1;min-height:86px;border:1px dashed var(--border-md);border-radius:8px;background:var(--surface-2);display:grid;place-items:center;padding:12px;color:var(--text-3);font-size:12px;text-align:center}.settings-signature-preview img{max-width:260px;max-height:76px;object-fit:contain}.settings-closing-help{display:grid;gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:10px 12px;margin-bottom:12px}.settings-closing-help strong{font-size:11px;color:var(--text);text-transform:uppercase;letter-spacing:.06em}.settings-closing-help span{display:flex;gap:6px;flex-wrap:wrap}.settings-closing-help code{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--blue-800);background:var(--blue-50);border:1px solid var(--blue-100);border-radius:6px;padding:3px 5px}.settings-closing-list{display:grid;gap:12px}.settings-closing-card{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:12px}.settings-closing-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.settings-closing-toggles{display:grid;grid-template-columns:auto auto auto auto;gap:8px;align-items:center;min-height:38px}.settings-closing-toggles strong{font-size:11px;color:var(--text-2);white-space:nowrap}.settings-closing-template{min-height:132px;resize:vertical;line-height:1.55}.settings-closing-badge{display:inline-block;margin-left:6px;padding:2px 5px;border-radius:999px;border:1px solid var(--amber-200);color:var(--amber);font-size:9px;font-weight:800;text-transform:uppercase}.settings-closing-error{display:none;margin-top:8px;border:1px solid var(--red-200);border-radius:8px;background:color-mix(in srgb,var(--red) 8%,var(--surface));color:var(--red);font-size:11px;font-weight:700;padding:8px 10px}.settings-closing-error.is-visible{display:block}.settings-placeholder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.settings-placeholder-grid div{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:14px}.settings-placeholder-grid strong{display:block;color:var(--text);font-size:13px}.settings-placeholder-grid span{display:block;color:var(--text-3);font-size:11px;margin-top:4px;line-height:1.45}.settings-icon-btn{width:30px;height:30px;justify-content:center;padding:0}.settings-toast{position:fixed;right:22px;bottom:22px;z-index:1500;background:var(--surface);color:var(--text);border:1px solid var(--border-md);box-shadow:var(--shadow);border-radius:8px;padding:10px 12px;font-size:12px;font-weight:700;opacity:0;transform:translateY(8px) scale(.98);pointer-events:none;transition:opacity .18s,transform .18s cubic-bezier(.22,1,.36,1)}.settings-toast.is-open{opacity:1;transform:translateY(0) scale(1)}.settings-toast-error{border-color:var(--red-200);color:var(--red)}.settings-toast-ok{border-color:var(--green-200);color:var(--green)}.settings-pop{animation:settings-control-pop .2s cubic-bezier(.22,1,.36,1)}@keyframes settings-card-in{0%{opacity:0;transform:translateY(7px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes settings-check-pop{0%{transform:scale(.82)}62%{transform:scale(1.13)}to{transform:scale(1)}}@keyframes settings-control-pop{0%{transform:scale(.985)}65%{transform:scale(1.018)}to{transform:scale(1)}}@keyframes settings-dirty-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.settings-card,.settings-summary,.settings-role-card,.settings-check-input:checked,.settings-pop,.settings-dirty.is-visible{animation:none!important}.settings-nav-item,.settings-check,.settings-member-row,.settings-card{transition-duration:.01ms!important}}@media(max-width:1080px){.settings-shell{grid-template-columns:176px minmax(0,1fr);gap:12px}.settings-summary-row,.settings-summary-row-3{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid,.settings-grid-tight{grid-template-columns:1fr}.settings-member-head,.settings-project-head{display:none}.settings-member-row,.settings-project-row{grid-template-columns:1fr 1fr}.settings-member-status{grid-column:1/-1}}@media(max-width:760px){.settings-shell{display:block;min-height:0}.settings-rail{position:static;min-height:0;margin-bottom:12px}.settings-main{padding:0 0 20px}.settings-top{position:static;display:block}.settings-panel-head{display:block}.settings-top-actions{justify-content:flex-start;margin-top:12px}.settings-summary-row,.settings-summary-row-3,.settings-route-grid,.settings-placeholder-grid,.settings-inline-fields,.settings-code-format-grid,.settings-profile-help,.settings-closing-grid{grid-template-columns:1fr}.settings-closing-toggles{grid-template-columns:auto 1fr}.settings-member-row,.settings-project-row,.settings-health-row,.settings-memo-reason-row,.settings-title-row{grid-template-columns:1fr}.settings-reason-head,.settings-title-head{display:none}.settings-health-badge{justify-self:start}.settings-scope{width:100%;min-width:0;margin-top:10px}}.login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.login-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r, 10px);box-shadow:var(--shadow);padding:32px 28px}.login-card h1{margin:0 0 6px;font-size:20px;font-weight:700;color:var(--text)}.login-card .sub{margin:0 0 20px;font-size:13px;color:var(--text-2);line-height:1.5}.brand-row{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--blue-800));color:#fff;font-weight:800;letter-spacing:.5px;font-size:15px}.brand-title{font-size:15px;font-weight:700;color:var(--text);line-height:1.2}.brand-sub{font-size:11px;color:var(--text-3)}.login-card .field{display:flex;flex-direction:column;gap:6px}.login-card .field label{font-size:11px;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em}.login-card .field input{height:38px;padding:8px 11px;border:1px solid var(--border-md);border-radius:var(--r-sm, 7px);background:var(--surface-2);color:var(--text);font-family:inherit;font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s}.login-card .field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--focus-ring)}.login-card .field input:disabled{opacity:.6;cursor:not-allowed}.login-card .field .ts{font-size:11px;color:var(--text-3)}.login-card button.primary,.login-card a.primary{display:inline-flex;align-items:center;justify-content:center;height:40px;border:1px solid transparent;border-radius:var(--r-sm, 7px);background:var(--blue);color:#fff;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,opacity .15s}.login-card button.primary:hover,.login-card a.primary:hover{background:var(--blue-800);text-decoration:none}.login-card button.primary:disabled{opacity:.55;cursor:not-allowed}.login-card button.ghost{height:36px;border:1px solid var(--border-md);border-radius:var(--r-sm, 7px);background:transparent;color:var(--text-2);font-family:inherit;font-size:13px;cursor:pointer}.login-card button.ghost:hover{background:var(--surface-2);color:var(--text)}.login-card .error-banner{padding:9px 12px;border-radius:var(--r-sm, 7px);background:var(--red-50);color:var(--red);border:1px solid var(--red-200);font-size:12px}.login-card .info-banner{padding:9px 12px;border-radius:var(--r-sm, 7px);background:var(--blue-50);color:var(--text-2);border:1px solid var(--blue-100);font-size:12px;line-height:1.5}.login-card .muted-note{margin-top:18px;font-size:11px;color:var(--text-3);text-align:center}.spinner{display:inline-block;width:22px;height:22px;border:2.5px solid var(--border-md);border-top-color:var(--blue);border-radius:50%;animation:pmo-spin .7s linear infinite}@keyframes pmo-spin{to{transform:rotate(360deg)}}.pmo-toast-host{position:fixed;right:18px;bottom:18px;z-index:3000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.pmo-toast{pointer-events:auto;min-width:220px;max-width:360px;padding:10px 14px;border-radius:var(--r-sm, 7px);background:var(--surface);color:var(--text);border:1px solid var(--border-md);box-shadow:var(--shadow);font-size:13px;line-height:1.4;opacity:0;transform:translateY(8px) scale(.98);transition:opacity .18s ease,transform .18s ease}.pmo-toast.is-open{opacity:1;transform:translateY(0) scale(1)}.pmo-toast-ok{border-left:3px solid var(--green)}.pmo-toast-error{border-left:3px solid var(--red)}.pmo-toast-info{border-left:3px solid var(--blue)}.pmo-toast-warn{border-left:3px solid var(--amber)}.pmo-file-drop{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px dashed var(--border-md);border-radius:var(--r-sm, 7px);background:var(--surface-2);cursor:pointer;font-size:12px;color:var(--text-2)}.pmo-file-drop:hover{border-color:var(--blue)}.pmo-access-denied{display:grid;place-items:center;gap:8px;padding:48px 16px;text-align:center;color:var(--text-2)}
