@import"https://fonts.googleapis.com/css2?family=Sarabun:wght@300;400;500;600;700;800&display=swap";.nav-item router-link{display:flex;align-items:center;gap:12px;width:100%;height:100%;color:inherit;text-decoration:none}.nav-item a{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;color:inherit;text-decoration:none;font-weight:500;border-radius:var(--radius-md);transition:var(--transition)}.nav-item a:hover{background-color:var(--primary-light);color:var(--primary)}.nav-item.active a{background-color:var(--primary);color:#fff!important}#top-alerts-container{position:fixed;top:18px;right:18px;width:min(460px,calc(100vw - 36px));z-index:1000}#top-alerts-container .alert-banner{margin-bottom:10px;box-shadow:0 8px 24px #0f172a2e}:root{--font-thai: "Sarabun", sans-serif;--font-eng: "Sarabun", sans-serif;--primary-h: 155;--primary-s: 100%;--primary-l: 21%;--primary: hsl(var(--primary-h), var(--primary-s), var(--primary-l));--primary-hover: hsl(var(--primary-h), var(--primary-s), 17%);--primary-light: rgba(0, 107, 63, .1);--secondary-h: 46;--secondary-s: 100%;--secondary-l: 58%;--secondary: hsl(var(--secondary-h), var(--secondary-s), var(--secondary-l));--secondary-dark: hsl(var(--secondary-h), var(--secondary-s), 45%);--text-main: #1e293b;--text-muted: #64748b;--bg-main: #f8fafc;--bg-sidebar: #0f172a;--bg-card: #ffffff;--border-color: #e2e8f0;--success: #10b981;--success-light: #d1fae5;--warning: #f59e0b;--warning-light: #fef3c7;--danger: #ef4444;--danger-light: #fee2e2;--info: #3b82f6;--info-light: #dbeafe;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--sidebar-width: 280px;--transition: all .3s cubic-bezier(.4, 0, .2, 1);--shadow-sm: 0 1px 3px rgba(0,0,0,.1);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.05), 0 2px 4px -1px rgba(0,0,0,.03);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -2px rgba(0,0,0,.04)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-thai);background-color:var(--bg-main);color:var(--text-main);display:flex;min-height:100vh;overflow-x:hidden}#app{flex:1;width:100%;display:flex;flex-direction:column}.app-root{min-height:100vh}@media screen and (min-width:769px){#app-layout{position:fixed;top:0;right:0;bottom:0;left:0;overflow:clip}}.app-container{display:flex;width:100vw;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);color:var(--information);display:flex;flex-direction:column;flex-shrink:0;border-right:1px solid rgba(255,255,255,.08);padding:20px 14px;justify-content:space-between;overflow-y:auto;scrollbar-width:thin;position:relative;transition:width .25s ease,padding .25s ease,border-color .25s ease}.sidebar.is-collapsed{width:46px;padding:8px 5px;border-right-color:#ffffff1f;overflow:hidden}.sidebar-hover-toggle{display:none}@media(min-width:769px){.sidebar-hover-toggle{display:none;align-items:center;justify-content:center;width:34px;height:34px;margin:0 auto;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:#ffffff14;color:var(--secondary);cursor:pointer}.sidebar.is-collapsed .sidebar-hover-toggle{display:inline-flex}.sidebar.is-collapsed>:not(.sidebar-hover-toggle){opacity:0;visibility:hidden;pointer-events:none}}.sidebar-backdrop,.sidebar-toggle,.sidebar-close,.sidebar-collapse-toggle{display:none}.brand-section{display:flex;align-items:center;gap:12px;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1)}.brand-logo{width:44px;height:44px;background:radial-gradient(circle,var(--secondary) 20%,var(--primary) 80%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-eng);font-weight:700;font-size:1.2rem;color:var(--on-accent);border:2px solid rgba(255,255,255,.2);box-shadow:var(--shadow-sm)}.brand-title h1{font-size:.95rem;font-weight:700;letter-spacing:.5px;color:var(--on-accent)}.brand-title p{font-size:.72rem;color:var(--secondary);font-weight:500}.nav-menu{list-style:none;display:flex;flex-direction:column;gap:6px;flex-grow:1}.nav-item button{width:100%;display:flex;align-items:center;gap:12px;background:none;border:none;color:var(--information);padding:12px 16px;border-radius:var(--radius-md);font-family:var(--font-thai);font-size:.92rem;font-weight:500;cursor:pointer;text-align:left;transition:var(--transition)}.nav-item button:hover{background-color:#ffffff0d;color:var(--on-accent)}.nav-item.active button{background-color:var(--primary);color:var(--on-accent);font-weight:600;box-shadow:0 4px 12px #006b3f40}.nav-item button i{font-size:1.1rem;width:20px;text-align:center;color:var(--text-muted);transition:var(--transition)}.nav-item.active button i{color:var(--secondary)}.profile-section{background-color:#ffffff0d;border-radius:var(--radius-lg);padding:16px;border:1px solid rgba(255,255,255,.08)}.profile-info{display:flex;align-items:center;gap:12px;margin-bottom:12px}.profile-avatar{width:40px;height:40px;border-radius:50%;background-color:var(--primary-light);border:2px solid var(--secondary);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.profile-details{overflow:hidden}.profile-name{font-size:.85rem;font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.profile-role{font-size:.72rem;color:var(--secondary);font-weight:500;text-transform:uppercase}.role-switcher-container{display:flex;flex-direction:column;gap:6px}.role-switcher-title{font-size:.7rem;color:var(--muted);font-weight:600;text-transform:uppercase}.role-select{width:100%;background-color:var(--surface-strong);border:1px solid rgba(255,255,255,.15);color:var(--information);padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-thai);font-size:.8rem;cursor:pointer;outline:none;transition:var(--transition)}.role-select:focus{border-color:var(--secondary)}.main-content{flex-grow:1;display:flex;flex-direction:column;height:100%;overflow-y:auto}.sidebar-collapse-toggle{align-items:center;justify-content:center;width:36px;height:36px;margin-right:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--accent-text);font-size:1rem;cursor:pointer}.sidebar-collapse-toggle:hover,.sidebar-collapse-toggle:focus-visible{background:var(--primary-light);outline:none}@media(min-width:769px){.sidebar-collapse-toggle{display:inline-flex}.header-title{display:flex;align-items:center}}.app-header{background-color:var(--bg-card);padding:16px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);z-index:10}.header-title h2{font-size:1.3rem;font-weight:700;color:var(--accent-text);display:flex;align-items:center;gap:8px}@media(max-width:768px){body,.app-root{min-height:100dvh}.app-container{display:block;width:100%;height:auto;min-height:100dvh;overflow:visible}.sidebar{position:fixed;inset:0 auto 0 0;z-index:1002;max-width:320px;transform:translate(-100%);transition:transform .25s ease;box-shadow:none;width:min(86vw,320px);padding:20px 14px;border-right-color:#ffffff14}.sidebar.is-collapsed{width:min(86vw,320px);padding:20px 14px}.sidebar-hover-toggle{display:none!important}.sidebar.is-open{transform:translate(0);box-shadow:8px 0 24px #0f172a52}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1001;width:100%;border:0;background:#0f172a7a;cursor:pointer}.sidebar-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-left:auto;border:0;border-radius:50%;background:#ffffff1f;color:var(--on-accent);font-size:1.1rem;cursor:pointer}.brand-section{gap:8px}.brand-title h1{font-size:.82rem}.main-content{width:100%;height:auto;min-height:100dvh;overflow:visible}.app-header{min-height:58px;padding:10px 14px}.header-title{display:flex;min-width:0;align-items:center;gap:10px}.sidebar-toggle{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:38px;height:38px;border:0;border-radius:var(--radius-sm);background:var(--primary);color:var(--on-accent);font-size:1.1rem;cursor:pointer}.header-title h2{min-width:0;font-size:.98rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.header-actions{gap:8px}.system-time{display:none}.view-container{padding:14px 12px}}.header-actions{display:flex;align-items:center;gap:16px}.system-time{font-family:var(--font-eng);font-size:.85rem;color:var(--text-muted);font-weight:500}.view-container{padding:32px;flex-grow:1;box-sizing:border-box;max-width:1600px;width:100%;margin:0 auto}.view-container--wide{max-width:1840px}.view-container--adaptive{max-width:1600px}.view-container--reading{max-width:1120px}.view-container.view-container--wide>.category-page,.view-container.view-container--wide>.borrow-page,.view-container.view-container--wide>.maintenance-page,.view-container.view-container--wide>.page,.view-container.view-container--wide>.scanner-page,.view-container.view-container--wide>.system-admin-page{width:100%;max-width:none;margin-inline:0}.view-container.view-container--adaptive>.recovery-notifications{width:100%;max-width:1280px}@media(min-width:1441px){.view-container--wide{padding-inline:24px}}.view-section{display:none;animation:fadeIn .4s ease-out}.view-section.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:32px}.kpi-card{background-color:var(--bg-card);border-radius:var(--radius-lg);padding:24px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border-color);box-shadow:var(--shadow-md);transition:var(--transition);position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background-color:var(--primary)}.kpi-card.kpi-warning:before{background-color:var(--warning)}.kpi-card.kpi-danger:before{background-color:var(--danger)}.kpi-card.kpi-info:before{background-color:var(--info)}.kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.kpi-info h3{font-size:.88rem;color:var(--text-muted);font-weight:500;margin-bottom:8px}.kpi-value{font-family:var(--font-eng);font-size:2rem;font-weight:700;color:var(--text-main);line-height:1}.kpi-icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem}.kpi-card.kpi-primary .kpi-icon{background-color:var(--primary-light);color:var(--accent-text)}.kpi-card.kpi-warning .kpi-icon{background-color:var(--warning-light);color:var(--warning)}.kpi-card.kpi-danger .kpi-icon{background-color:var(--danger-light);color:var(--danger)}.kpi-card.kpi-info .kpi-icon{background-color:var(--info-light);color:var(--info)}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-bottom:32px}.dashboard-panel{background-color:var(--bg-card);border-radius:var(--radius-lg);padding:24px;border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid var(--border-color);padding-bottom:12px}.panel-header h3{font-size:1.1rem;font-weight:700;color:var(--accent-text)}.chart-container{display:flex;justify-content:center;align-items:center;position:relative;height:260px}.chart-wrapper{position:relative;width:220px;height:220px}.chart-legend{margin-top:16px;display:flex;flex-direction:column;gap:8px}.legend-item{display:flex;align-items:center;justify-content:space-between;font-size:.85rem}.legend-color{width:12px;height:12px;border-radius:50%;display:inline-block;margin-right:8px}.pending-approvals-list{display:flex;flex-direction:column;gap:12px}.approval-item-card{padding:16px;border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--bg-main);transition:var(--transition)}.approval-item-card:hover{border-color:var(--primary-light);background-color:var(--surface);box-shadow:var(--shadow-sm)}.approval-header{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-muted);margin-bottom:6px}.approval-title{font-weight:600;font-size:.9rem;margin-bottom:4px}.approval-purpose{font-size:.8rem;color:var(--text-muted);margin-bottom:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-actions{display:flex;gap:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:var(--radius-md);font-family:var(--font-thai);font-size:.88rem;font-weight:600;cursor:pointer;transition:var(--transition);border:none;outline:none}.btn-primary{background-color:var(--primary);color:var(--on-accent)}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 4px 12px #006b3f33}.btn-secondary{background-color:var(--secondary);color:var(--bg-sidebar)}.btn-secondary:hover{background-color:hsl(var(--secondary-h),var(--secondary-s),50%)}.btn-outline{background-color:transparent;border:1px solid var(--border-color);color:var(--text-main)}.btn-outline:hover{background-color:var(--bg-main);border-color:var(--text-muted)}.btn-danger{background-color:var(--danger);color:var(--on-accent)}.btn-danger:hover{background-color:var(--negative-solid)}.btn-success{background-color:var(--success);color:var(--on-accent)}.btn-success:hover{background-color:var(--positive-solid)}.btn-sm{padding:6px 12px;font-size:.78rem;border-radius:var(--radius-sm)}.toolbar{background-color:var(--bg-card);padding:20px;border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-md);margin-bottom:24px;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.form-group{display:flex;flex-direction:column;gap:6px;flex-grow:1;min-width:180px}.form-group.search-group{flex-grow:2}.form-group label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.form-control{background-color:var(--surface);border:1px solid var(--border-color);padding:10px 14px;border-radius:var(--radius-md);font-family:var(--font-thai);font-size:.9rem;outline:none;transition:var(--transition);width:100%}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.table-responsive{width:100%;overflow-x:auto;background-color:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:.88rem}.data-table th{background-color:var(--bg-main);padding:16px 20px;font-weight:700;color:var(--accent-text);border-bottom:2px solid var(--border-color)}.data-table td{padding:16px 20px;border-bottom:1px solid var(--border-color);color:var(--text-main);vertical-align:middle}.data-table tbody tr:hover{background-color:#f8fafccc}#assets-table{font-size:.8rem}#assets-table th{padding:10px 12px;line-height:1.2}#assets-table td{padding:9px 12px;line-height:1.28}#assets-table .asset-row-action{min-width:30px;min-height:28px;padding:4px 6px!important;justify-content:center}.custody-status,.asset-status{display:inline-flex;align-items:center;gap:4px;margin-top:3px;padding:2px 0;border:0;background:transparent;font-size:.72rem;font-weight:600;line-height:1.2}.custody-status.is-accepted,.asset-status.badge-success{color:var(--positive)}.custody-status.is-pending,.asset-status.badge-warning{color:var(--caution)}.asset-status.badge-danger{color:var(--negative)}.asset-status.badge-info{color:var(--information)}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:9999px;font-size:.72rem;font-weight:600}.badge-success{background-color:var(--success-light);color:var(--success)}.badge-warning{background-color:var(--warning-light);color:var(--warning)}.badge-danger{background-color:var(--danger-light);color:var(--danger)}.badge-info{background-color:var(--info-light);color:var(--info)}.wizard-card{background-color:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);overflow:hidden;max-width:800px;margin:0 auto}.wizard-steps{display:flex;background-color:var(--bg-main);border-bottom:1px solid var(--border-color)}.wizard-step{flex:1;padding:16px;text-align:center;font-size:.88rem;font-weight:600;color:var(--text-muted);border-right:1px solid var(--border-color);position:relative}.wizard-step.active{color:var(--accent-text);background-color:var(--surface)}.wizard-step.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background-color:var(--primary)}.wizard-step.completed{color:var(--success)}.wizard-body{padding:32px}.wizard-footer{padding:20px 32px;background-color:var(--bg-main);border-top:1px solid var(--border-color);display:flex;justify-content:space-between}.wizard-slide{display:none}.wizard-slide.active{display:block}.form-row{display:flex;gap:16px;margin-bottom:20px}.dynamic-items-table{width:100%;margin-top:12px;margin-bottom:20px}.dynamic-items-table th{font-size:.8rem;font-weight:700;color:var(--text-muted);padding:8px;border-bottom:1px solid var(--border-color)}.dynamic-items-table td{padding:8px;vertical-align:middle}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;z-index:100;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility 0s linear .3s;overflow-y:auto;padding:30px 0}.modal.active{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.modal-content{background-color:var(--bg-card);border-radius:var(--radius-lg);width:90%;max-width:500px;margin:auto;box-shadow:var(--shadow-lg);transform:translateY(20px);transition:transform .3s ease;overflow:hidden}.modal.active .modal-content{transform:translateY(0)}.modal-header{padding:20px 24px;background-color:var(--primary);color:var(--on-accent);display:flex;justify-content:space-between;align-items:center}.modal-header h3{font-size:1.1rem;font-weight:700}.modal-close{background:none;border:none;color:var(--on-accent);font-size:1.5rem;cursor:pointer}.modal-body{padding:24px}.modal-footer{padding:16px 24px;background-color:var(--bg-main);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px}.alert-banner{background-color:var(--danger-light);border:1px solid rgba(239,68,68,.2);color:var(--danger);padding:12px 16px;border-radius:var(--radius-md);margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;font-size:.85rem;font-weight:600;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.notification-bell-container{position:relative;cursor:pointer}.notification-bell{font-size:1.25rem;color:var(--text-muted);transition:var(--transition)}.notification-bell:hover{color:var(--accent-text)}.notification-badge{position:absolute;top:-4px;right:-4px;background-color:var(--danger);color:var(--on-accent);font-size:.65rem;font-family:var(--font-eng);font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.qr-sticker-container{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px;background-color:var(--surface);border:1px dashed var(--information-border);border-radius:var(--radius-sm);max-width:250px;margin:0 auto}.qr-code-img{width:150px;height:150px;margin-bottom:12px}.qr-sticker-text{font-size:.75rem;font-weight:700;color:var(--ink)}.qr-sticker-subtext{font-size:.65rem;color:var(--ink)}@media print{body *{visibility:hidden}.qr-sticker-container,.qr-sticker-container *{visibility:visible}.qr-sticker-container{position:absolute;left:0;top:0;width:100%;border:none}}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;background:var(--accent);position:relative;overflow-y:auto;padding:40px 20px;box-sizing:border-box}.login-container:before{content:"";position:absolute;top:-20%;left:-20%;width:60%;height:60%;background:radial-gradient(circle,#ffc72c26,#ffc72c00 70%);pointer-events:none}.login-card{background:#fffffff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-lg);box-shadow:0 20px 40px #0000004d;padding:40px;width:100%;max-width:680px;box-sizing:border-box;animation:loginFadeIn .5s ease-out}@keyframes loginFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:30px}.login-logo{font-size:3rem;color:var(--accent-text);margin-bottom:12px;text-shadow:0 4px 10px rgba(0,107,63,.15);animation:logoPulse 2s infinite ease-in-out}@keyframes logoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.login-header h2{font-size:1.6rem;font-weight:800;color:var(--accent-text);margin-bottom:8px}.login-subtitle{font-size:.88rem;color:var(--text-muted);line-height:1.5}.login-divider{text-align:center;position:relative;margin:30px 0 20px}.login-divider:before{content:"";position:absolute;top:50%;left:0;width:100%;height:1px;background-color:var(--border-color);z-index:1}.login-divider span{background-color:#fffffff2;padding:0 16px;font-size:.8rem;color:var(--text-muted);font-weight:600;position:relative;z-index:2}.demo-login-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}@media(max-width:550px){.demo-login-grid{grid-template-columns:1fr}}.btn-demo-login{display:flex;align-items:center;gap:12px;padding:12px 16px;background-color:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000005}.btn-demo-login i{font-size:1.4rem;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--on-accent);flex-shrink:0}.btn-demo-login.admin i{background-color:var(--negative-solid)}.btn-demo-login.head i{background-color:var(--caution-solid)}.btn-demo-login.budget i{background-color:var(--information-solid)}.btn-demo-login.officer i{background-color:var(--positive-solid)}.btn-demo-login.teacher i{background-color:var(--violet-solid)}.btn-demo-login.student i{background-color:var(--surface-strong)}.btn-demo-login div{display:flex;flex-direction:column}.btn-demo-login div strong{font-size:.85rem;color:var(--text-main);font-weight:700}.btn-demo-login div span{font-size:.72rem;color:var(--text-muted)}.btn-demo-login:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;background-color:var(--bg-main)}.btn-demo-login.admin:hover{border-color:var(--negative-border)}.btn-demo-login.head:hover{border-color:var(--caution-border)}.btn-demo-login.budget:hover{border-color:var(--information-border)}.btn-demo-login.officer:hover{border-color:var(--positive-border)}.btn-demo-login.teacher:hover{border-color:var(--violet-border)}.btn-demo-login.student:hover{border-color:var(--line)}.login-footer{text-align:center;font-size:.75rem;color:var(--text-muted);line-height:1.6;border-top:1px solid var(--border-color);padding-top:20px;margin-top:10px}.login-footer p{margin:0}#btn-logout{background:transparent;transition:all .2s ease}#btn-logout:hover{background-color:#ef44440d!important;border-color:var(--danger)!important;box-shadow:0 2px 8px #ef44441a}.qr-scanner-viewport-wrapper{box-shadow:inset 0 0 40px #000c;border:4px solid var(--border-color);transition:all .3s ease}.qr-scanner-laser-line{position:absolute;left:5%;width:90%;height:3px;background:var(--positive-solid);box-shadow:0 0 12px 2px #10b981;animation:scanLaser 2.2s cubic-bezier(.4,0,.2,1) infinite;z-index:10;pointer-events:none}@keyframes scanLaser{0%{top:15%;opacity:.1}10%{opacity:1}90%{opacity:1}to{top:85%;opacity:.1}}#qr-reader{border:none!important}#qr-reader__dashboard{padding:8px!important;background-color:var(--bg-card);border-top:1px solid var(--border-color)}#qr-reader video{object-fit:cover!important;border-radius:var(--radius-sm);width:100%!important;height:100%!important}.ui-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.ui-flex-gap-sm{display:flex;gap:8px;align-items:center}.ui-flex-gap-md{display:flex;gap:12px;align-items:center}.ui-badge-pill{padding:3px 8px;border-radius:12px;font-size:.75rem;font-weight:600}.timetable-scroll-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-sm);border:1px solid var(--border-color);background-color:var(--bg-card)}.timetable-scroll-wrapper::-webkit-scrollbar{height:6px}.timetable-scroll-wrapper::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:4px}@media(max-width:768px){.view-container{box-sizing:border-box;min-width:0;padding-top:14px;padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(18px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left))}.view-container>*{min-width:0}.view-container h1,.view-container h2,.view-container h3,.view-container h4,.view-container p,.view-container strong,.view-container small{overflow-wrap:anywhere}.view-container button,.view-container input,.view-container select,.view-container textarea{box-sizing:border-box;max-width:100%;min-width:0}.modal-content,.ui-dialog{box-sizing:border-box;width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)}.modal-body>.form-row[style*=grid-template-columns],.modal-body>div[style*=grid-template-columns]{grid-template-columns:minmax(0,1fr)!important}.modal-footer{flex-wrap:wrap}}@media(max-width:340px){.view-container{padding-right:max(8px,env(safe-area-inset-right));padding-left:max(8px,env(safe-area-inset-left))}}@media(max-width:768px){.app-header{gap:10px}.app-header .header-title{flex:1 1 auto;overflow:hidden}.app-header .header-title h2{flex:1 1 auto;margin:0}.app-header .header-actions{flex:0 0 auto}.view-container .view-section,.view-container .page,.view-container .borrow-page,.view-container .maintenance-page,.view-container .purchase-request-page,.view-container .scanner-page,.view-container .user-management-workspace,.view-container .booking-workspace,.view-container .reports-workspace{box-sizing:border-box;width:100%;max-width:100%;min-width:0}.view-container .dashboard-panel,.view-container .ui-panel{box-sizing:border-box;max-width:100%;min-width:0}.view-container .dashboard-panel>.dashboard-panel,.view-container .ui-panel>.ui-panel,.view-container .dashboard-panel>.table-responsive,.view-container .ui-panel>.table-responsive{border-right:0!important;border-left:0!important;border-radius:0!important;box-shadow:none!important}.view-container .panel-header,.view-container .panel-title,.view-container .section-heading,.view-container .heading,.view-container .panel-header>*,.view-container .panel-title>*,.view-container .section-heading>*,.view-container .heading>*{min-width:0;max-width:100%}.view-container .btn,.view-container button:not(.icon-button):not(.modal-close):not(.close-btn){min-height:44px}.view-container .table-responsive{max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.view-container .page>.hero,.view-container .scanner-card{padding:16px;border-radius:12px}.view-container .page>.hero{align-items:stretch;flex-direction:column}.view-container .page>.hero .btn,.view-container .scanner-page .manual-entry .btn{width:100%}.view-container .page>.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.view-container .page>.tabs button{min-width:0;padding:8px 6px;white-space:normal;line-height:1.25}.view-container .page>.card{padding:14px}.view-container .page>.card .actions{display:grid;grid-template-columns:minmax(0,1fr)}.view-container .page>.card .actions>*{width:100%;min-width:0}.view-container .scanner-page,.view-container .system-admin-page{padding:0!important}.view-container .scanner-page .camera-shell,.view-container .scanner-page .qr-reader{min-height:240px}}:root{--ui-font: "Sarabun", sans-serif;--ui-text-label: .8125rem;--ui-text-control: .875rem;--ui-text-body: 1rem;--ui-text-heading: 1.125rem;--ui-line-height: 1.5;--ui-control-height: 38px;--ui-space-1: 4px;--ui-space-2: 8px;--ui-space-3: 12px;--ui-space-4: 16px;--ui-space-6: 24px;--ui-border: #cbd5e1;--ui-radius-control: 8px;--ui-radius-panel: 12px;--ui-ink: #1e293b;--ui-muted: #475569;--ui-focus: #1d4ed8;--ui-green: #006b3f;--ui-green-soft: #e8f5ed;--ui-blue: #1d4ed8;--ui-blue-soft: #eff6ff;--ui-teal: #0f666b;--ui-teal-soft: #e6f5f4;--ui-amber: #854d0e;--ui-amber-soft: #fff5d6;--ui-red: #b91c1c;--ui-red-soft: #fff1f2;--ui-neutral: #475569;--ui-neutral-soft: #f1f5f9;--ui-zone-header: #eef7f1;--ui-zone-filters: #f1f5f9;--ui-zone-results: #ffffff}.ui-button{--action: var(--ui-neutral);--action-soft: var(--ui-neutral-soft)}.ui-button.ui-button[data-intent]{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-space-2);min-height:var(--ui-control-height);min-width:0;padding:7px 12px;border:1px solid var(--action);border-radius:var(--ui-radius-control);background:var(--action-soft);color:var(--action);font-family:var(--ui-font);font-size:var(--ui-text-control);font-weight:600;line-height:var(--ui-line-height);text-align:center;text-decoration:none;white-space:normal;cursor:pointer;transition:filter .15s,box-shadow .15s}.ui-button[data-intent=confirm]{--action: var(--ui-green);--action-soft: var(--ui-green-soft)}.ui-button[data-intent=view]{--action: var(--ui-blue);--action-soft: var(--ui-blue-soft)}.ui-button[data-intent=output]{--action: var(--ui-teal);--action-soft: var(--ui-teal-soft)}.ui-button[data-intent=edit]{--action: var(--ui-amber);--action-soft: var(--ui-amber-soft)}.ui-button[data-intent=danger],.ui-button[data-intent=reset]{--action: var(--ui-red);--action-soft: var(--ui-red-soft)}.ui-button[data-intent][data-emphasis=solid]{background:var(--action);color:var(--on-accent)}.ui-button[data-intent]:hover:not(:disabled){filter:brightness(.94)}.ui-button[data-intent]:active:not(:disabled){filter:brightness(.88)}.ui-button[data-intent]:focus-visible,.ui-control:focus-visible,.ui-table button:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.ui-button[data-intent]:disabled{opacity:.5;cursor:not-allowed;filter:none}.ui-button__spinner{width:14px;height:14px;flex-shrink:0;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ui-spin .8s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-page{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--ui-space-4);min-width:0;font-family:var(--ui-font);color:var(--ui-ink);font-size:var(--ui-text-body);line-height:var(--ui-line-height)}.ui-panel{min-width:0;padding:var(--ui-space-4);border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel);background:var(--ui-zone-results)}.ui-panel[data-zone=header]{background:var(--ui-zone-header);border-color:var(--positive-border)}.ui-panel[data-zone=filters]{background:var(--ui-zone-filters)}.ui-panel__header,.ui-toolbar,.ui-dialog__footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-3)}.ui-panel__header{margin-bottom:var(--ui-space-3)}.ui-panel__title{margin:0;color:var(--ui-ink);font-size:var(--ui-text-heading);line-height:1.4}.ui-panel__description,.ui-help{color:var(--ui-muted);font-size:var(--ui-text-label);line-height:var(--ui-line-height)}.ui-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-2)}.ui-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--ui-space-3)}.ui-field{display:flex;flex-direction:column;gap:var(--ui-space-1);min-width:0;font-size:var(--ui-text-label);font-weight:600}.ui-control{box-sizing:border-box;width:100%;min-width:0;min-height:var(--ui-control-height);padding:7px 10px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-control);background:var(--surface);color:var(--ui-ink);font:400 var(--ui-text-control)/var(--ui-line-height) var(--ui-font)}textarea.ui-control{height:auto;min-height:80px;resize:vertical}.ui-control:disabled{background:var(--ui-neutral-soft);color:var(--ui-muted);cursor:not-allowed}.ui-control[aria-invalid=true]{border-color:var(--ui-red)}.ui-table-wrap{overflow-x:auto;min-width:0;border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel)}.ui-table{width:100%;border-collapse:collapse;background:var(--surface);font-size:var(--ui-text-control);line-height:var(--ui-line-height)}.ui-table th,.ui-table td{padding:10px 12px;text-align:start;vertical-align:top;border-bottom:1px solid var(--information-border)}.ui-table th{background:var(--ui-zone-header);color:var(--ui-green);font-weight:700}.ui-table tbody tr:last-child td{border-bottom:0}.ui-item-card{padding:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel);background:var(--surface);overflow-wrap:anywhere}.ui-dialog{width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);display:flex;flex-direction:column;padding:0;border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel);background:var(--surface);color:var(--ui-ink)}.ui-dialog__header,.ui-dialog__body,.ui-dialog__footer{padding:var(--ui-space-4)}.ui-dialog__header{background:var(--ui-zone-header);border-bottom:1px solid var(--ui-border)}.ui-dialog__body{min-height:0;overflow:auto}.ui-dialog__footer{flex-shrink:0;justify-content:flex-end;border-top:1px solid var(--ui-border)}@media(max-width:600px),(pointer:coarse){:root{--ui-control-height: 44px}}@media(max-width:600px){.ui-panel{padding:var(--ui-space-3)}.ui-fields{grid-template-columns:1fr}.ui-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}}@media(prefers-reduced-motion:reduce){.ui-button[data-intent]{transition:none}.ui-button__spinner{animation:none}}:root{--font-eng: var(--ui-font);--font-thai: var(--ui-font)}body,button,input,select,textarea,option{font-family:Sarabun,sans-serif!important}select.form-control,.filters select,.catalog-filters select,#view-requisitions select{min-height:44px!important;height:auto!important;padding-top:9px!important;padding-bottom:9px!important;line-height:1.6!important;box-sizing:border-box}.registry-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px;padding:18px;background:var(--surface);border:1px solid var(--border-color);border-radius:12px}.registry-actions div{display:flex;gap:8px;flex-wrap:wrap}.sidebar summary{cursor:pointer;padding:12px;line-height:1.6}.asset-submenu{list-style:none;padding-left:16px}.asset-submenu a{font-size:.83rem;line-height:1.6}.sidebar.is-collapsed .asset-submenu{display:none}.brand-title h1{line-height:1.6!important}:root,:root[data-theme=light]{color-scheme:light;--surface: #ffffff;--surface-muted: #f4f6fa;--surface-hover: #edf0f7;--surface-strong: #26334d;--ink: #20293d;--muted: #657189;--subtle: #768198;--line: #dce2ed;--on-accent: #ffffff;--accent: #4358d8;--accent-hover: #3347bd;--accent-soft: #eef0ff;--accent-text: #3a4dc9;--positive: #15704c;--positive-soft: #edf8f2;--positive-solid: #18734e;--positive-border: #acd8c0;--caution: #8a590d;--caution-soft: #fff6e5;--caution-solid: #9a620d;--caution-border: #e6c88e;--negative: #b12d3d;--negative-soft: #fff0f2;--negative-solid: #b12d3d;--negative-border: #e6b3bd;--information: #2858b4;--information-soft: #edf4ff;--information-solid: #315bbc;--information-border: #b8ccee;--violet: #7351af;--violet-soft: #f3effc;--violet-solid: #7854bd;--violet-border: #cfbee9;--teal: #227770;--teal-soft: #eaf7f5;--teal-solid: #237a72;--teal-border: #add7d2;--overlay: rgba(9, 15, 30, .48);--workspace-shadow: 0 5px 22px rgba(30, 43, 78, .045);--hover-shadow:0 8px 24px rgba(30, 43, 78, .12)}:root[data-theme=dark]{color-scheme:dark;--surface: #1a2233;--surface-muted: #101522;--surface-hover: #242e43;--surface-strong: #303f5c;--ink: #e9edf7;--muted: #b4bfd4;--subtle: #9aa9c4;--line: #354158;--on-accent: #ffffff;--accent: #5568d7;--accent-hover: #4356c5;--accent-soft: #28325b;--accent-text: #bcc6ff;--positive: #86dbb0;--positive-soft: #1c3930;--positive-solid: #227b54;--positive-border: #396c55;--caution: #edc079;--caution-soft: #3c3020;--caution-solid: #97600f;--caution-border: #74572d;--negative: #ffa6b0;--negative-soft: #3e2530;--negative-solid: #b93649;--negative-border: #754151;--information: #a2c5ff;--information-soft: #233452;--information-solid: #3c63c8;--information-border: #425f8a;--violet: #ccb3ff;--violet-soft: #322847;--violet-solid: #8056c2;--violet-border: #62507f;--teal: #8cdbd3;--teal-soft: #203b3e;--teal-solid: #2b7a76;--teal-border: #3c6869;--overlay: rgba(0, 0, 0, .65);--workspace-shadow: 0 5px 22px rgba(0, 0, 0, .12);--hover-shadow:0 8px 24px rgba(0, 0, 0, .28)}:root{--primary: var(--accent);--primary-hover: var(--accent-hover);--primary-light: var(--accent-soft);--secondary: var(--muted);--secondary-dark: var(--ink);--text-main: var(--ink);--text-muted: var(--muted);--bg-main: var(--surface-muted);--bg-card: var(--surface);--bg-sidebar: var(--surface);--border-color: var(--line);--success: var(--positive);--success-light: var(--positive-soft);--warning: var(--caution);--warning-light: var(--caution-soft);--danger: var(--negative);--danger-light: var(--negative-soft);--info: var(--information);--info-light: var(--information-soft);--ui-border: var(--line);--ui-ink: var(--ink);--ui-muted: var(--muted);--ui-focus: var(--accent);--ui-green: var(--positive);--ui-green-soft: var(--positive-soft);--ui-blue: var(--information);--ui-blue-soft: var(--information-soft);--ui-teal: var(--teal);--ui-teal-soft: var(--teal-soft);--ui-amber: var(--caution);--ui-amber-soft: var(--caution-soft);--ui-red: var(--negative);--ui-red-soft: var(--negative-soft);--ui-neutral: var(--muted);--ui-neutral-soft: var(--surface-hover);--ui-zone-header: var(--surface);--ui-zone-filters: var(--surface-muted);--ui-zone-results: var(--surface);--ui-radius-panel: 17px;--radius-lg: 17px;--radius-md: 12px;--pastel-canvas: var(--surface);--pastel-accent: color-mix(in srgb, var(--accent) 18%, var(--pastel-canvas));--pastel-teal: color-mix(in srgb, var(--teal-solid) 17%, var(--pastel-canvas));--pastel-violet: color-mix(in srgb, var(--violet-solid) 17%, var(--pastel-canvas));--pastel-caution: color-mix(in srgb, var(--caution-solid) 14%, var(--pastel-canvas))}:root[data-theme=dark]{--pastel-canvas: var(--surface-strong)}:root[data-palette=ocean]{--accent:#1764b1;--accent-hover:#105390;--accent-soft:#eaf3ff;--accent-text:#185a9c}:root[data-theme=dark][data-palette=ocean]{--accent:#286cba;--accent-hover:#205a9e;--accent-soft:#213955;--accent-text:#a8d1ff}:root[data-palette=emerald]{--accent:#18734e;--accent-hover:#125e3e;--accent-soft:#edf8f2;--accent-text:#176a48}:root[data-theme=dark][data-palette=emerald]{--accent:#237b55;--accent-hover:#1b6746;--accent-soft:#1c3930;--accent-text:#91dfb8}:root[data-palette=rose]{--accent:#ac386e;--accent-hover:#912956;--accent-soft:#fff0f6;--accent-text:#95305f}:root[data-theme=dark][data-palette=rose]{--accent:#b54479;--accent-hover:#9e3467;--accent-soft:#43283a;--accent-text:#f5b6d3}:root[data-palette=lavender]{--accent:#7951b8;--accent-hover:#66419f;--accent-soft:#f4edff;--accent-text:#6942a4}:root[data-theme=dark][data-palette=lavender]{--accent:#8158be;--accent-hover:#6d46a7;--accent-soft:#342846;--accent-text:#d9bcff}body{background:var(--bg-main)}:root[data-palette=vintage]{--accent:#087d70;--accent-hover:#066759;--accent-soft:#e3f1e9;--accent-text:#075f56;--bg-main:#f3f6ef;--surface:#fffef9;--surface-muted:#eef3e9;--surface-hover:#e6eee3;--line:#d4ded4;--pastel-accent:#dce9f3;--pastel-teal:#d5eee5;--pastel-violet:#e9edcf;--pastel-caution:#efdfcb}:root[data-theme=dark][data-palette=vintage]{--accent:#087d70;--accent-hover:#066759;--accent-soft:#213d36;--accent-text:#9cdec8;--bg-main:#17221f;--surface:#23312b;--surface-muted:#293a30;--surface-hover:#314438;--line:#405749;--pastel-accent:#304851;--pastel-teal:#294a40;--pastel-violet:#414831;--pastel-caution:#4b4033}:root[data-palette=dock]{--accent:#426973;--accent-hover:#34555e;--accent-soft:#e3eeef;--accent-text:#31535d;--bg-main:#f1f3f2;--surface:#fbfcfb;--surface-muted:#e9eeec;--surface-hover:#e0e7e4;--line:#d1dcd9;--pastel-accent:#dce6ec;--pastel-teal:#dfe9e6;--pastel-violet:#e4e5df;--pastel-caution:#eee9df}:root[data-theme=dark][data-palette=dock]{--accent:#426973;--accent-hover:#34555e;--accent-soft:#263c41;--accent-text:#bcd6df;--bg-main:#171d1e;--surface:#232b2c;--surface-muted:#293235;--surface-hover:#323e40;--line:#3e5050;--pastel-accent:#30434e;--pastel-teal:#314643;--pastel-violet:#3d423a;--pastel-caution:#494237}:root[data-palette=summer]{--accent:#36698d;--accent-hover:#295574;--accent-soft:#e8f3fa;--accent-text:#2f5977;--bg-main:#f5f8fa;--surface:#fffefb;--surface-muted:#edf4f7;--surface-hover:#e0edf3;--line:#d8e3e8;--pastel-accent:#dcecf6;--pastel-teal:#dfedef;--pastel-violet:#e7e8ef;--pastel-caution:#f3e4c6}:root[data-theme=dark][data-palette=summer]{--accent:#36698d;--accent-hover:#295574;--accent-soft:#253c50;--accent-text:#abd8f5;--bg-main:#172330;--surface:#233241;--surface-muted:#293c4c;--surface-hover:#32485a;--line:#415b6d;--pastel-accent:#304b61;--pastel-teal:#304b50;--pastel-violet:#3d4056;--pastel-caution:#504332}:root[data-palette=oriental]{--accent:#446e96;--accent-hover:#36597b;--accent-soft:#eaf0f8;--accent-text:#35577a;--bg-main:#f5f3f7;--surface:#fdfbff;--surface-muted:#eeebf2;--surface-hover:#e6e1ec;--line:#e0dce7;--pastel-accent:#e3e0eb;--pastel-teal:#dce7ef;--pastel-violet:#e7def0;--pastel-caution:#f1e3c7}:root[data-theme=dark][data-palette=oriental]{--accent:#446e96;--accent-hover:#36597b;--accent-soft:#29394b;--accent-text:#b7d2f0;--bg-main:#211e29;--surface:#302b39;--surface-muted:#37313f;--surface-hover:#403a4a;--line:#51495e;--pastel-accent:#423d51;--pastel-teal:#344756;--pastel-violet:#493a55;--pastel-caution:#51442f}:root[data-palette=retro]{--accent:#c0334d;--accent-hover:#9d2a3f;--accent-soft:#f9ebed;--accent-text:#a92d44;--bg-main:#fcf6f7;--surface:#ffffff;--surface-muted:#fcf4f5;--surface-hover:#f9ebed;--line:#f1d2d8;--pastel-accent:#f2d6db;--pastel-teal:#f7dfe9;--pastel-violet:#fdf6ec;--pastel-caution:#fce9d1}:root[data-theme=dark][data-palette=retro]{--accent:#c0334d;--accent-hover:#9d2a3f;--accent-soft:#4b2638;--accent-text:#edc6cd;--bg-main:#201b2a;--surface:#262232;--surface-muted:#322334;--surface-hover:#3d2536;--line:#56535f;--pastel-accent:#482638;--pastel-teal:#4d3046;--pastel-violet:#53494a;--pastel-caution:#533b2d}:root[data-palette=blueberries]{--accent:#824ca7;--accent-hover:#6b3e89;--accent-soft:#f3edf6;--accent-text:#724393;--bg-main:#f9f7fb;--surface:#ffffff;--surface-muted:#f8f5fa;--surface-hover:#f3edf6;--line:#e4d8ec;--pastel-accent:#e6dbed;--pastel-teal:#f1f3cd;--pastel-violet:#f7cedd;--pastel-caution:#fdfdfd}:root[data-theme=dark][data-palette=blueberries]{--accent:#824ca7;--accent-hover:#6b3e89;--accent-soft:#382e54;--accent-text:#dccde6;--bg-main:#1b1d31;--surface:#21243a;--surface-muted:#292743;--surface-hover:#302a4a;--line:#525465;--pastel-accent:#362d52;--pastel-teal:#42472f;--pastel-violet:#491f40;--pastel-caution:#4f5263}:root[data-palette=earthy]{--accent:#776b04;--accent-hover:#625803;--accent-soft:#f1f0e6;--accent-text:#695e04;--bg-main:#f9f8f4;--surface:#ffffff;--surface-muted:#f8f7f1;--surface-hover:#f1f0e6;--line:#e1dec8;--pastel-accent:#e4e1cd;--pastel-teal:#d9d8cc;--pastel-violet:#fdf7e9;--pastel-caution:#e2dacd}:root[data-theme=dark][data-palette=earthy]{--accent:#776b04;--accent-hover:#625803;--accent-soft:#363722;--accent-text:#d9d6b9;--bg-main:#1a2024;--surface:#21272c;--surface-muted:#282c29;--surface-hover:#2e3126;--line:#52575a;--pastel-accent:#343623;--pastel-teal:#282b23;--pastel-violet:#4f4e43;--pastel-caution:#322d23}:root[data-palette=jeans]{--accent:#1c2c58;--accent-hover:#172448;--accent-soft:#e8eaee;--accent-text:#19274d;--bg-main:#f5f6f7;--surface:#ffffff;--surface-muted:#f3f3f6;--surface-hover:#e8eaee;--line:#cdd1da;--pastel-accent:#d2d5de;--pastel-teal:#d9ded7;--pastel-violet:#fdfcef;--pastel-caution:#fdfcf4}:root[data-theme=dark][data-palette=jeans]{--accent:#1c2c58;--accent-hover:#172448;--accent-soft:#1a243c;--accent-text:#bfc4d0;--bg-main:#131b2b;--surface:#192233;--surface-muted:#192336;--surface-hover:#192439;--line:#4c5360;--pastel-accent:#1a243b;--pastel-teal:#222e34;--pastel-violet:#49504f;--pastel-caution:#494f54}:root[data-palette=berries]{--accent:#bb1924;--accent-hover:#99151e;--accent-soft:#f8e8e9;--accent-text:#a51620;--bg-main:#fcf5f5;--surface:#ffffff;--surface-muted:#fbf2f3;--surface-hover:#f8e8e9;--line:#f0cccf;--pastel-accent:#f1d1d3;--pastel-teal:#fce2e6;--pastel-violet:#fce9ed;--pastel-caution:#e4e5ee}:root[data-theme=dark][data-palette=berries]{--accent:#bb1924;--accent-hover:#99151e;--accent-soft:#4a1e2c;--accent-text:#ecbfc2;--bg-main:#201927;--surface:#26202f;--surface-muted:#321f2e;--surface-hover:#3c1f2d;--line:#56515d;--pastel-accent:#471e2d;--pastel-teal:#523141;--pastel-violet:#523949;--pastel-caution:#38344a}:root[data-palette=refreshing]{--accent:#0878a4;--accent-hover:#076286;--accent-soft:#e6f2f6;--accent-text:#076a90;--bg-main:#f4f9fb;--surface:#ffffff;--surface-muted:#f1f8fa;--surface-hover:#e6f2f6;--line:#c9e1eb;--pastel-accent:#cee4ed;--pastel-teal:#d2f5f7;--pastel-violet:#fbf6e2;--pastel-caution:#f2ddd9}:root[data-theme=dark][data-palette=refreshing]{--accent:#0878a4;--accent-hover:#076286;--accent-soft:#143b53;--accent-text:#bad9e6;--bg-main:#112131;--surface:#182839;--surface-muted:#172e42;--surface-hover:#163449;--line:#4b5765;--pastel-accent:#143a51;--pastel-teal:#194d5c;--pastel-violet:#474d45;--pastel-caution:#3d323b}:root[data-palette=meadows]{--accent:#bd3e85;--accent-hover:#9b336d;--accent-soft:#f8ecf3;--accent-text:#a63775;--bg-main:#fcf6fa;--surface:#ffffff;--surface-muted:#fbf4f8;--surface-hover:#f8ecf3;--line:#f0d5e4;--pastel-accent:#f2d8e7;--pastel-teal:#d1d4dd;--pastel-violet:#d0d2d9;--pastel-caution:#f7ebd5}:root[data-theme=dark][data-palette=meadows]{--accent:#bd3e85;--accent-hover:#9b336d;--accent-soft:#4a294a;--accent-text:#edc9dd;--bg-main:#201c2f;--surface:#262337;--surface-muted:#32253d;--surface-hover:#3d2743;--line:#565363;--pastel-accent:#472948;--pastel-teal:#23243e;--pastel-violet:#222239;--pastel-caution:#4d3d35}:root[data-palette=jazz]{--accent:#836892;--accent-hover:#6b5578;--accent-soft:#f9f5fb;--accent-text:#735c80;--bg-main:#fcfbfd;--surface:#ffffff;--surface-muted:#fcfafd;--surface-hover:#f9f5fb;--line:#f2e9f7;--pastel-accent:#f3ebf8;--pastel-teal:#f9f6fc;--pastel-violet:#ede5cd;--pastel-caution:#fdfcf7}:root[data-theme=dark][data-palette=jazz]{--accent:#836892;--accent-hover:#6b5578;--accent-soft:#4d4664;--accent-text:#efe3f5;--bg-main:#202335;--surface:#272b3e;--surface-muted:#34344b;--surface-hover:#3f3c56;--line:#575a68;--pastel-accent:#4a4461;--pastel-teal:#4f4f65;--pastel-violet:#433d31;--pastel-caution:#54565f}:root[data-palette=czech]{--accent:#14325c;--accent-hover:#10294b;--accent-soft:#e8ebef;--accent-text:#122c51;--bg-main:#f4f6f8;--surface:#ffffff;--surface-muted:#f2f4f6;--surface-hover:#e8ebef;--line:#cbd2db;--pastel-accent:#d0d6de;--pastel-teal:#ddeaf7;--pastel-violet:#fdf9ef;--pastel-caution:#f7e1ce}:root[data-theme=dark][data-palette=czech]{--accent:#14325c;--accent-hover:#10294b;--accent-soft:#18263e;--accent-text:#bdc6d1;--bg-main:#121b2b;--surface:#192234;--surface-muted:#192337;--surface-hover:#18243a;--line:#4c5361;--pastel-accent:#18263d;--pastel-teal:#263c58;--pastel-violet:#494c50;--pastel-caution:#43322b}:root[data-palette=kaleidoscope]{--accent:#477f66;--accent-hover:#3a6854;--accent-soft:#eff6f3;--accent-text:#3e705a;--bg-main:#f8fbf9;--surface:#ffffff;--surface-muted:#f6faf8;--surface-hover:#eff6f3;--line:#dbebe4;--pastel-accent:#deede6;--pastel-teal:#e4f7ee;--pastel-violet:#f2edd4;--pastel-caution:#e2d9cd}:root[data-theme=dark][data-palette=kaleidoscope]{--accent:#477f66;--accent-hover:#3a6854;--accent-soft:#2c4849;--accent-text:#d1e5dc;--bg-main:#18242e;--surface:#1e2b37;--surface-muted:#23353d;--surface-hover:#273d42;--line:#505a63;--pastel-accent:#2b4548;--pastel-teal:#325151;--pastel-violet:#414634;--pastel-caution:#30302c}:root[data-palette=winter]{--accent:#3c7aa3;--accent-hover:#316486;--accent-soft:#eef6fb;--accent-text:#356b8f;--bg-main:#f7fbfd;--surface:#ffffff;--surface-muted:#f5fafd;--surface-hover:#eef6fb;--line:#d9ebf7;--pastel-accent:#dcecf7;--pastel-teal:#ddf2fc;--pastel-violet:#f1fafd;--pastel-caution:#e8d0cf}:root[data-theme=dark][data-palette=winter]{--accent:#3c7aa3;--accent-hover:#316486;--accent-soft:#294863;--accent-text:#cee5f4;--bg-main:#172435;--surface:#1d2b3e;--surface-muted:#21354a;--surface-hover:#253d55;--line:#4f5a68;--pastel-accent:#284560;--pastel-teal:#294c65;--pastel-violet:#3f5466;--pastel-caution:#352633}:root[data-palette=garlic]{--accent:#be3b45;--accent-hover:#9c3039;--accent-soft:#f9ebec;--accent-text:#a7343d;--bg-main:#fcf6f7;--surface:#ffffff;--surface-muted:#fbf4f5;--surface-hover:#f9ebec;--line:#f1d4d6;--pastel-accent:#f2d8da;--pastel-teal:#fce4ea;--pastel-violet:#fdfcfd;--pastel-caution:#ede8e7}:root[data-theme=dark][data-palette=garlic]{--accent:#be3b45;--accent-hover:#9c3039;--accent-soft:#4a2937;--accent-text:#edc8cb;--bg-main:#201c29;--surface:#262332;--surface-muted:#322534;--surface-hover:#3d2735;--line:#56535f;--pastel-accent:#472836;--pastel-teal:#523648;--pastel-violet:#53505c;--pastel-caution:#423b45}.palette-preview{display:flex;height:25px;overflow:hidden;margin-top:10px;border:1px solid var(--line);border-radius:7px}.palette-preview span{flex:1}.appearance-picker__panel{max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);overflow-y:auto}.appearance-picker__panel .palette-preview-note{margin-top:6px;line-height:1.45}.appearance-controls{display:flex;align-items:center;gap:6px;position:relative}.appearance-picker summary{display:grid;place-items:center;list-style:none;width:40px;min-height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);color:var(--muted);cursor:pointer}.appearance-picker summary::-webkit-details-marker{display:none}.appearance-picker__panel{position:absolute;right:0;top:calc(100% + 10px);z-index:100;width:min(290px,calc(100vw - 28px));padding:18px;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:0 10px 35px var(--overlay);color:var(--ink)}.appearance-picker__panel h3{margin:0 0 6px;font-size:1rem}.appearance-picker__panel p,.appearance-picker__panel small{font-size:.75rem;color:var(--muted)}.appearance-picker__panel label{display:grid;gap:5px;margin-top:14px;font-size:.875rem}.appearance-picker__panel select{width:100%;min-height:44px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);color:var(--ink)}.appearance-picker__panel small{display:block;margin-top:12px}.appearance-picker__panel button{width:100%;margin-top:14px;min-height:44px}.appearance-picker summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media screen and (max-width:768px){.appearance-picker .appearance-picker__panel{position:fixed;top:76px;left:14px;right:14px;width:auto}}#view-dashboard .dashboard-live-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:24px;align-items:start}#view-dashboard .dashboard-live-grid.has-availability{grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr)}#view-dashboard .dashboard-live-main{display:flex;flex-direction:column;gap:14px;min-width:0}#view-dashboard .dashboard-live-main .priority-card{flex-wrap:wrap;min-width:0}#view-dashboard .dashboard-live-main .priority-card>div{min-width:0}#view-dashboard .dashboard-live-main .priority-card p{overflow-wrap:anywhere}#view-dashboard .service-center:not(.service-center--system) .priority-grid,#view-dashboard .service-center:not(.service-center--system) .service-grid--compact{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}#view-dashboard .service-center .service,#view-dashboard .service-center .work{min-width:0;overflow-wrap:anywhere}@media(max-width:760px){#view-dashboard .service-center:not(.service-center--system) .priority-grid,#view-dashboard .service-center:not(.service-center--system) .service-grid--compact{grid-template-columns:minmax(0,1fr)}#view-dashboard .service-center .service-grid--compact .service{flex-wrap:wrap}}#view-dashboard .dashboard-live-main .executive-header,#view-dashboard .dashboard-live-main .delegation-summary-panel{margin-bottom:0}#view-dashboard .dashboard-live-main .delegation-summary-panel{flex-wrap:wrap}#view-dashboard .dashboard-live-main .delegation-summary-metrics{flex-wrap:wrap;margin-top:0}#view-dashboard .workspace-welcome{margin-bottom:14px;gap:12px}#view-dashboard .workspace-welcome p{margin-bottom:3px;font-size:.625rem}#view-dashboard .workspace-welcome h1{font-size:1.5rem;line-height:1.3}#view-dashboard .workspace-welcome span{font-size:.8125rem}#view-dashboard .workspace-welcome>i{font-size:20px;padding:11px;border-radius:12px}#view-dashboard .dashboard-live-grid .service-center{margin-bottom:0;padding:24px}#view-dashboard .dashboard-live-kpis{gap:16px}#view-dashboard .dashboard-live-kpis .at-a-glance-card{background:var(--surface);border-top-color:var(--line)}#view-dashboard .dashboard-live-kpis .is-assets{background:var(--pastel-accent);border-color:transparent}#view-dashboard .dashboard-live-kpis .at-a-glance-card>span{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--ink)}#view-dashboard .dashboard-live-kpis .is-assets>span{color:var(--ink)}#view-dashboard .dashboard-live-kpis i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--accent-soft);color:var(--accent-text)}#view-dashboard .dashboard-live-kpis strong{display:block;margin:12px 0;color:var(--ink)}#view-dashboard .dashboard-live-kpis strong em{font-size:.75rem;font-weight:400;font-style:normal}#view-dashboard .dashboard-availability{padding:24px;min-width:0}.dashboard-availability h2{font-size:1.05rem;margin:0 0 5px}.dashboard-availability p{color:var(--muted);font-size:.8rem}.live-availability-ring{width:172px;height:172px;border-radius:50%;margin:26px auto;padding:13px;background:conic-gradient(var(--accent) var(--availability),var(--surface-hover) 0)}.live-availability-ring>div{width:100%;height:100%;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;flex-direction:column}.live-availability-ring strong{font-size:2rem;color:var(--ink)}.live-availability-ring small,.live-availability-ring span{font-size:.75rem;color:var(--muted)}.live-asset-statuses{display:grid;gap:10px}.live-asset-statuses>div{display:flex;justify-content:space-between;gap:10px;font-size:.8rem;border-bottom:1px solid var(--line);padding-bottom:8px}.live-asset-statuses dt,.live-asset-statuses small{color:var(--muted)}.live-asset-statuses dd{margin:0;font-weight:600;color:var(--ink)}@media(max-width:1000px){#view-dashboard .dashboard-live-grid.has-availability{grid-template-columns:minmax(0,1fr)}}@media(max-width:860px){.appearance-picker summary{width:44px;min-height:44px}.appearance-controls .theme-switcher{min-height:44px}.appearance-controls .theme-switcher select{min-height:42px}#view-dashboard .dashboard-live-grid .service-center,#view-dashboard .dashboard-availability{padding:16px}#view-dashboard .dashboard-live-kpis .at-a-glance-card{padding:14px;min-height:125px}#view-dashboard .dashboard-live-kpis strong{font-size:1.7rem}}@media(min-width:861px){:root[data-density=compact] .workspace-shell .view-container{padding:18px 22px 28px}:root[data-density=compact] .workspace-shell .nav-item a,:root[data-density=compact] .workspace-shell .sidebar summary{min-height:38px;padding:7px 11px}:root[data-density=compact] .workspace-shell .app-header{padding:10px 22px;min-height:62px}:root[data-density=compact] .workspace-welcome{margin-bottom:16px}:root[data-density=compact] #view-dashboard .dashboard-live-grid .service-center,:root[data-density=compact] #view-dashboard .dashboard-availability,:root[data-density=compact] #view-dashboard .chart-panel{padding:16px}:root[data-density=compact] #view-dashboard .at-a-glance-card{padding:14px;min-height:112px}:root[data-density=compact] .data-table td,:root[data-density=compact] .ui-table td{padding-top:7px;padding-bottom:7px}}.scanner-page .camera-shell{background:var(--surface-muted)}@media screen{#view-assets .asset-registry-hero{border-color:var(--line);border-radius:17px;padding:20px 22px 0;gap:18px;box-shadow:var(--workspace-shadow)}#view-assets .asset-registry-hero__title h2{font-size:1.3rem}#view-assets .asset-registry-hero__title small{display:block;margin-top:5px}#view-assets .asset-registry-tabs{margin:0 -22px;padding:10px 22px;background:var(--surface-muted)}#view-assets .asset-registry-tabs .tab-btn.active{border-color:var(--accent-text)!important}#view-assets .asset-browser{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:18px;margin:16px 0;box-shadow:var(--workspace-shadow)}#view-assets .asset-browser .quick-filters{gap:8px;margin-bottom:14px}#view-assets .asset-browser .quick-filters button{border-color:var(--line);border-radius:999px;padding:7px 14px}#view-assets .asset-browser .quick-filters button.active{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent-text)}#view-assets .asset-browser .filters{gap:12px}#view-assets .asset-browser .filters label{gap:6px}#view-assets .asset-browser .filter-utility-row{margin-top:14px;gap:10px}#view-assets .asset-table-toolbar{padding:10px 0;gap:9px;margin:0}#view-assets .asset-registry-results{border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:var(--workspace-shadow)}#view-assets #assets-table thead th{background:var(--surface-muted);color:var(--muted);font-weight:600;padding:14px 12px}#view-assets #assets-table tbody td{border-color:var(--line);padding:14px 12px}#view-assets .asset-results-footer{border-color:var(--line);background:var(--surface-muted);padding:12px;flex-wrap:wrap}#view-assets #assets-table{margin:0}#view-assets #assets-table tbody td{vertical-align:top;line-height:1.65}#view-assets #assets-table td[data-label=เลขทะเบียน]{white-space:normal!important;overflow-wrap:anywhere;min-width:160px;max-width:230px;color:var(--accent-text)}#view-assets #assets-table td[data-label="ชื่อ / รายละเอียด"]{min-width:230px;max-width:360px;overflow-wrap:anywhere}#view-assets #assets-table td[data-label="ชื่อ / รายละเอียด"]>strong{display:block;line-height:1.65}#view-assets #assets-table td[data-label=ราคาทุน],#view-assets #assets-table td[data-label=มูลค่าทางบัญชี]{font-variant-numeric:tabular-nums}#view-assets .asset-data-quality{gap:5px;margin-top:8px}#view-assets .asset-data-quality span{font-weight:500;line-height:1.6}#view-assets .asset-row-actions{min-width:94px;align-items:flex-start}#view-assets .asset-row-actions>.btn{flex-shrink:0}#view-assets #assets-table td[data-label=ห้องจัดเก็บ]{min-width:120px}#view-assets #assets-table td[data-label=ผู้รับผิดชอบ]{min-width:105px}#view-assets #assets-table .asset-status,#view-assets #assets-table .custody-status{white-space:nowrap}#view-assets .asset-more-actions>div{border-color:var(--line);border-radius:12px;box-shadow:var(--workspace-shadow)}#view-assets .asset-more-actions button{min-height:38px}#view-assets .asset-column-picker>div{border-color:var(--line);border-radius:12px;box-shadow:var(--workspace-shadow)}#view-assets .asset-selection-bar{flex-wrap:wrap}#view-assets .asset-selection-bar>div{min-width:0;overflow-wrap:anywhere}#view-assets #modal-asset-detail .asset-detail-sheet{display:flex;flex-direction:column;overflow:hidden;background:var(--surface-muted)}#view-assets #modal-asset-detail .modal-header{flex-shrink:0;padding:18px 22px;gap:12px}#view-assets #modal-asset-detail .modal-header h3{font-size:1.05rem;line-height:1.5;min-width:0}#view-assets #modal-asset-detail .modal-close{width:44px;min-width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--surface-muted)}#view-assets #modal-asset-detail .modal-body{flex:1;min-height:0;overflow:auto;padding:22px;overscroll-behavior:contain}#view-assets #modal-asset-detail .modal-body>div:not(.carousel-outer){background:var(--surface)!important;border-color:var(--line)!important;border-radius:14px!important;min-width:0;overflow-wrap:anywhere}#view-assets #modal-asset-detail .modal-body p{line-height:1.8}#view-assets #modal-asset-detail .modal-body>div[style*=grid-template-columns]>div{min-width:0}#view-assets #modal-asset-detail .carousel-outer{height:240px!important;border-radius:16px!important;background:var(--surface)!important}#view-assets #modal-asset-detail .modal-body .data-table{display:block;overflow-x:auto;max-width:100%;border-radius:8px}#view-assets #modal-asset-detail .modal-body .data-table th,#view-assets #modal-asset-detail .modal-body .data-table td{white-space:nowrap}#view-assets #modal-asset-detail .modal-footer{flex-shrink:0;display:flex;flex-wrap:wrap;gap:8px;padding:14px 22px}@media screen and (hover:hover)and (pointer:fine){#view-assets #assets-table tbody tr:hover{background:var(--surface-hover)}#view-assets .asset-browser .quick-filters button:hover{border-color:var(--accent-text);background:var(--accent-soft)}}@media(min-width:861px){:root[data-density=compact] #view-assets .asset-registry-hero{padding:14px 18px 0}:root[data-density=compact] #view-assets .asset-browser{padding:12px;margin:12px 0}:root[data-density=compact] #view-assets #assets-table tbody td{padding:8px 10px}}@media(max-width:600px){#view-assets .asset-registry-hero{grid-template-columns:minmax(0,1fr);padding:16px 14px 0;gap:12px}#view-assets .asset-registry-hero__actions{grid-column:1/-1;display:flex;justify-content:flex-start}#view-assets .asset-registry-hero__actions .btn{flex:1;min-height:44px;white-space:normal}#view-assets .asset-registry-tabs{margin:0 -14px;padding:9px 14px}#view-assets .asset-browser{padding:14px;margin:12px 0}#view-assets .asset-browser .filters input,#view-assets .asset-browser .filters select{min-height:44px!important;height:44px!important}#view-assets .asset-browser .filters button,#view-assets .asset-browser .advanced-toggle,#view-assets .asset-row-actions>.btn,#view-assets .asset-more-actions summary{min-height:44px}#view-assets .asset-registry-results{border:0;background:transparent;box-shadow:none}#view-assets #assets-table tbody tr{border-radius:15px}#view-assets #assets-table tbody tr{padding:14px;box-shadow:var(--workspace-shadow)}#view-assets #assets-table tbody td{grid-template-columns:92px minmax(0,1fr);padding:8px 0!important;max-width:none;overflow-wrap:anywhere}#view-assets #assets-table td[data-label=เลขทะเบียน],#view-assets #assets-table td[data-label="ชื่อ / รายละเอียด"]{display:block;padding:10px 0!important}#view-assets #assets-table td[data-label=เลขทะเบียน]:before,#view-assets #assets-table td[data-label="ชื่อ / รายละเอียด"]:before{display:block;margin-bottom:4px;font-weight:500}#view-assets #assets-table td[data-label="ชื่อ / รายละเอียด"]>strong{font-size:1rem!important}#view-assets #assets-table td[data-label=ดำเนินการ]{border-top:1px solid var(--line);margin-top:8px;padding-top:12px!important;align-items:center}#view-assets .asset-row-actions>.btn{flex:1;justify-content:center}#view-assets .asset-more-actions summary{width:44px}#view-assets .asset-more-actions button{min-height:44px}#view-assets .asset-table-toolbar{justify-content:flex-start}#view-assets .asset-table-toolbar>.btn{flex:1 1 140px;min-height:44px;white-space:normal}#view-assets .asset-column-picker summary{min-height:44px}#view-assets .asset-selection-bar{position:static}#view-assets .asset-selection-bar>div{flex-basis:100%}#view-assets .asset-selection-bar>.btn{min-height:44px}#view-assets #modal-asset-detail .modal-header{padding:12px 14px}#view-assets #modal-asset-detail .modal-body{padding:14px}#view-assets #modal-asset-detail .carousel-outer{height:180px!important}#view-assets #modal-asset-detail .modal-body>div[style*=grid-template-columns]{grid-template-columns:minmax(0,1fr)!important}#view-assets #modal-asset-detail .modal-body>div[style*=grid-template-columns]>div[style*=grid-column]{grid-column:1/-1!important}#view-assets #modal-asset-detail .modal-footer{padding:12px 14px}#view-assets #modal-asset-detail .modal-footer .btn{min-height:44px;flex:1 1 130px;white-space:normal}#view-assets .asset-results-footer>div{flex-wrap:wrap}}}@media screen{.workspace-shell .locations-workspace{min-width:0;max-width:100%}.workspace-shell .locations-workspace .locations-workspace-header{padding:22px;border-color:var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--workspace-shadow)}.workspace-shell .locations-workspace .locations-title>span{width:48px;height:48px;flex-shrink:0;border-radius:14px;background:var(--accent-soft)}.workspace-shell .locations-workspace .locations-title h3{font-size:1.15rem;line-height:1.5}.workspace-shell .locations-workspace .locations-title p{line-height:1.7}.workspace-shell .locations-workspace .locations-tabs{padding:6px;border-radius:14px;background:var(--surface);border-color:var(--line)}.workspace-shell .locations-workspace .locations-tabs button{min-height:38px;border-radius:10px}.workspace-shell .locations-workspace .locations-tabs button.active{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--accent-text)}.workspace-shell .locations-workspace .locations-tabs b{background:var(--surface-muted);color:var(--ink);font-variant-numeric:tabular-nums}.workspace-shell .locations-workspace .locations-panel,.workspace-shell .locations-workspace .storage-workspace{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--workspace-shadow)}.workspace-shell .locations-workspace .locations-panel-heading{padding:4px 0 10px}.workspace-shell .locations-workspace .locations-table,.workspace-shell .locations-workspace .storage-table{border:1px solid var(--line);border-radius:12px}.workspace-shell .locations-workspace .data-table th{padding:14px 12px;background:var(--surface-muted);color:var(--muted);line-height:1.6}.workspace-shell .locations-workspace .data-table td{padding:14px 12px;line-height:1.65;vertical-align:top;overflow-wrap:anywhere}.workspace-shell .locations-workspace .location-name{align-items:flex-start;min-width:150px;line-height:1.65}.workspace-shell .locations-workspace .location-name i{margin-top:4px;flex-shrink:0}.workspace-shell .locations-workspace .location-capability{padding:4px 9px;border-radius:999px;white-space:nowrap}.workspace-shell .locations-workspace .location-capability.is-on{background:var(--positive-soft)}.workspace-shell .locations-workspace .location-capability.is-off{background:var(--surface-muted)}.workspace-shell .locations-workspace .location-state{justify-content:flex-start;line-height:1.65}.workspace-shell .locations-workspace .location-pending-badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:var(--caution-soft);color:var(--caution);font-weight:700;font-size:.74rem;line-height:1.4}.workspace-shell .locations-workspace .location-actions{flex-wrap:nowrap;min-width:0;white-space:nowrap}.workspace-shell .locations-workspace .location-actions .btn{width:auto;min-height:38px;padding:7px 9px!important;gap:6px}.workspace-shell .locations-workspace .location-actions span,.workspace-shell .locations-workspace .storage-table__edit span{display:inline}.workspace-shell .locations-workspace .storage-table__edit{min-height:38px;gap:6px}.workspace-shell .locations-workspace .storage-table td[data-label=หน่วยเก็บ]>div{flex-wrap:wrap;overflow-wrap:anywhere}.workspace-shell .locations-workspace .modal-content{display:flex;flex-direction:column;max-height:calc(100dvh - 32px);overflow:hidden}.workspace-shell .locations-workspace .modal-content>form{display:flex;flex-direction:column;min-height:0}.workspace-shell .locations-workspace .modal-header{flex-shrink:0;padding:16px 20px;gap:12px}.workspace-shell .locations-workspace .modal-header h3{line-height:1.5;font-size:1.05rem}.workspace-shell .locations-workspace .modal-close{display:grid;place-items:center;width:44px;min-width:44px;height:44px;border-radius:12px;background:var(--surface-muted)}.workspace-shell .locations-workspace .modal-body{min-height:0;overflow:auto;padding:20px;overscroll-behavior:contain}.workspace-shell .locations-workspace .modal-footer{flex-shrink:0;padding:14px 20px;gap:8px}.workspace-shell .locations-workspace .modal-body>.form-row{margin-bottom:14px}.workspace-shell .locations-workspace .modal-body>div[style*="display:flex"]{flex-wrap:wrap}@media(min-width:601px){.workspace-shell .locations-workspace .locations-table{max-width:100%;overflow-x:auto}.workspace-shell .locations-workspace .locations-table .data-table{min-width:975px;width:100%;table-layout:fixed}.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(1){width:12%}.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(2){width:18%}.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(3){width:9%}.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(4){width:16%}.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(5),.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(6),.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(7){width:8%}.workspace-shell .locations-workspace .locations-table .data-table th:nth-child(8){width:21%}}@media(min-width:861px){:root[data-density=compact] .workspace-shell .locations-workspace .locations-workspace-header{padding:16px 18px}:root[data-density=compact] .workspace-shell .locations-workspace .data-table td{padding:9px 12px}}@media(max-width:600px){.workspace-shell .locations-workspace .locations-workspace-header{padding:16px}.workspace-shell .locations-workspace .locations-tabs button{min-height:44px}.workspace-shell .locations-workspace .locations-panel-heading{padding:14px 14px 4px}.workspace-shell .locations-workspace .locations-table,.workspace-shell .locations-workspace .storage-table{border:0}.workspace-shell .locations-workspace .data-table tr{border-color:var(--line);border-radius:16px;box-shadow:var(--workspace-shadow)}.workspace-shell .locations-workspace .data-table td[data-label=สถานที่]{display:block;padding:10px 0}.workspace-shell .locations-workspace .data-table td[data-label=สถานที่]:before{display:block;margin-bottom:5px}.workspace-shell .locations-workspace .location-name{font-size:1rem;min-width:0}.workspace-shell .locations-workspace .location-actions{min-width:0;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.workspace-shell .locations-workspace .location-actions .btn,.workspace-shell .locations-workspace .storage-table__edit{width:100%;min-height:44px}.workspace-shell .locations-workspace .storage-workspace{padding:14px}.workspace-shell .locations-workspace .form-control{min-height:44px;max-width:100%}.workspace-shell .locations-workspace .modal-header,.workspace-shell .locations-workspace .modal-body,.workspace-shell .locations-workspace .modal-footer{padding:14px}.workspace-shell .locations-workspace .modal-footer .btn{min-height:44px}}@media(hover:hover)and (pointer:fine){.workspace-shell .locations-workspace .data-table tbody tr:hover{background:var(--surface-hover)}}}@media screen{#view-requisitions{min-width:0}#view-requisitions .supply-workspace-header{padding:12px 16px;margin-bottom:10px;border-radius:14px;box-shadow:var(--workspace-shadow);align-items:center;gap:12px}#view-requisitions .supply-workspace-header>div:first-child{min-width:0}#view-requisitions .supply-workspace-header h2{font-size:1.05rem;line-height:1.35}#view-requisitions .supply-workspace-header .supply-workspace-kicker,#view-requisitions .supply-workspace-header p:not(.supply-workspace-kicker){display:none}#view-requisitions .supply-workspace-summary{align-items:center}#view-requisitions .supply-workspace-summary span{padding:5px 9px;border-radius:10px;background:var(--surface-muted)}#view-requisitions .supply-workflow-nav{padding:6px;gap:5px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}#view-requisitions .supply-workflow-nav button{border:0;border-radius:10px;min-height:40px}#view-requisitions .supply-workflow-nav button.active{background:var(--accent-soft);color:var(--accent-text)}#view-requisitions .dashboard-panel{border-radius:18px;box-shadow:var(--workspace-shadow);min-width:0}#view-requisitions .panel-header{flex-wrap:wrap;gap:12px}#view-requisitions .panel-header>div{flex-wrap:wrap;min-width:0}#view-requisitions .supply-card-grid{gap:10px}#view-requisitions .catalog-item-card{grid-template-columns:110px minmax(180px,1fr) minmax(110px,.6fr) minmax(165px,.7fr);padding:14px;border-radius:14px;gap:12px;box-shadow:none}#view-requisitions .supply-worklist-detail{overflow-wrap:anywhere;line-height:1.65}#view-requisitions .category-chip{background:var(--accent-soft)!important;border-color:var(--line)!important;line-height:1.5!important}#view-requisitions .supply-image{border-radius:12px;background:var(--surface-muted)}#view-requisitions .supply-worklist-category{flex-wrap:wrap;gap:6px}#view-requisitions .supply-worklist-stock{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}#view-requisitions .table-responsive{border:1px solid var(--line);border-radius:12px;max-width:100%;overflow:auto}#view-requisitions .data-table{min-width:850px}#view-requisitions .data-table th{background:var(--surface-muted);color:var(--muted);padding:14px 12px;line-height:1.6}#view-requisitions .data-table td{padding:14px 12px;vertical-align:top;line-height:1.65;overflow-wrap:anywhere}#view-requisitions .draft-modal{border-radius:18px;background:var(--surface);border-color:var(--line)}#view-requisitions .cart-close{width:44px;height:44px;flex-shrink:0;border-radius:12px}#view-requisitions .modal-content:not([style*="background: none"]){display:flex;flex-direction:column;max-height:calc(100dvh - 32px);overflow:hidden}#view-requisitions .modal-content>form{display:flex;flex-direction:column;min-height:0}#view-requisitions .modal-header,#view-requisitions .modal-footer{flex-shrink:0}#view-requisitions .modal-body{min-height:0;overflow:auto;overscroll-behavior:contain}#view-requisitions .modal-close{min-width:44px;min-height:44px}@media(min-width:901px){:root[data-density=compact] #view-requisitions .catalog-item-card,:root[data-density=compact] #view-requisitions .data-table td{padding:9px 12px}}@media(max-width:1100px){#view-requisitions .catalog-item-card{grid-template-columns:100px minmax(160px,1fr) minmax(130px,.65fr)}#view-requisitions .supply-worklist-action{grid-column:2/4;justify-content:flex-start}}@media(max-width:760px){#view-requisitions .catalog-item-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:14px}#view-requisitions .supply-worklist-category,#view-requisitions .supply-worklist-detail{grid-column:1/-1}#view-requisitions .supply-worklist-stock{grid-column:1;grid-row:auto}#view-requisitions .supply-worklist-action{grid-column:2;justify-content:flex-end;flex-wrap:wrap}#view-requisitions .form-control,#view-requisitions .btn,#view-requisitions .supply-workflow-nav button{min-height:44px}#view-requisitions .shopee-stepper button{min-width:44px;min-height:44px}#view-requisitions .shopee-stepper{flex-wrap:wrap}}@media(max-width:640px){#view-requisitions .supply-workspace-header{padding:12px;gap:8px}#view-requisitions .supply-workspace-summary{display:flex;width:100%;gap:6px}#view-requisitions .supply-workspace-summary span{flex:1 1 auto;padding:5px 7px;font-size:.7rem}#view-requisitions .supply-workspace-summary strong{font-size:.875rem}#view-requisitions .catalog-item-card{grid-template-columns:minmax(0,1fr)}#view-requisitions .supply-worklist-stock,#view-requisitions .supply-worklist-action{grid-column:1}#view-requisitions .supply-worklist-action{justify-content:flex-start}#view-requisitions .draft-modal{border-radius:18px 18px 0 0}#view-requisitions .draft-dock{border-radius:14px}}@media(hover:hover)and (pointer:fine){#view-requisitions .catalog-item-card:hover{border-color:var(--accent-text);box-shadow:var(--workspace-shadow)}#view-requisitions .supply-workflow-nav button:hover{background:var(--accent-soft)}}}@media screen{.workspace-shell .borrow-page{min-width:0}.workspace-shell .borrow-page .tabs{gap:5px;padding:5px;margin-bottom:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.workspace-shell .borrow-page .tabs button{min-height:40px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-weight:650}.workspace-shell .borrow-page .tabs button.active{background:var(--accent-soft);color:var(--accent-text)}.workspace-shell .borrow-page .card{min-width:0;border-color:var(--line);border-radius:18px;box-shadow:var(--workspace-shadow)}.workspace-shell .borrow-page .card h4{font-size:1rem;line-height:1.4}.workspace-shell .borrow-page .time-grid>label:first-child{grid-column:auto}.workspace-shell .borrow-page .time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.workspace-shell .borrow-page .time-grid .offsite-check{min-height:36px}.workspace-shell .borrow-page .asset-browser{min-width:0;margin:14px 0;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.workspace-shell .borrow-page .asset-browser .filters{gap:10px}.workspace-shell .borrow-page .asset-browser .filter-utility-row{margin-top:10px;gap:8px}.workspace-shell .borrow-page .asset-browser input,.workspace-shell .borrow-page .asset-browser select,.workspace-shell .borrow-page .asset-browser .combobox-trigger{border-color:var(--line);background:var(--surface)}.workspace-shell .borrow-page .selected-panel{margin:14px 0;padding:14px;border-color:var(--line);background:var(--accent-soft)}.workspace-shell .borrow-page .request-card{border-color:var(--line);box-shadow:var(--workspace-shadow)}.workspace-shell .borrow-page .request-assets{border-color:var(--line);background:var(--surface-muted)}.workspace-shell .borrow-page .request-assets b{color:var(--muted)}.workspace-shell .borrow-page .request-meta,.workspace-shell .borrow-page .work-item{border-color:var(--line)}.workspace-shell .borrow-page .return-form input,.workspace-shell .borrow-page .form-grid input,.workspace-shell .borrow-page .form-grid textarea{min-width:0;border-color:var(--line);background:var(--surface);color:var(--ink)}@media(max-width:720px){.workspace-shell .borrow-page .tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.workspace-shell .borrow-page .tabs button{min-height:44px;padding:7px}.workspace-shell .borrow-page .card{padding:14px}.workspace-shell .borrow-page .time-grid{grid-template-columns:minmax(0,1fr)}.workspace-shell .borrow-page .form-grid input,.workspace-shell .borrow-page .return-form input{min-height:44px}.workspace-shell .borrow-page .asset-browser{padding:12px}.workspace-shell .borrow-page .asset-browser button,.workspace-shell .borrow-page .asset-browser input,.workspace-shell .borrow-page .asset-browser select,.workspace-shell .borrow-page .asset-browser .combobox-trigger,.workspace-shell .borrow-page .selected-row button,.workspace-shell .borrow-page .actions button,.workspace-shell .borrow-page .return-form button{min-height:44px}.workspace-shell .borrow-page .selected-panel{padding:12px}.workspace-shell .borrow-page .request-summary{min-width:0}.workspace-shell .borrow-page .asset-line{overflow-wrap:anywhere}}@media(hover:hover)and (pointer:fine){.workspace-shell .borrow-page .tabs button:not(.active):hover{background:var(--accent-soft);color:var(--accent-text)}.workspace-shell .borrow-page .request-card:hover{border-color:var(--accent-text)}}}.workspace-shell .sidebar{padding:27px 18px 18px;color:var(--muted);border-right:1px solid var(--line);gap:24px}.workspace-shell .sidebar.is-collapsed{padding:8px 5px}.workspace-shell .brand-section{border-bottom-color:var(--line);padding:0 8px 26px;margin-bottom:20px}.preview-brand{display:flex;align-items:center;gap:11px;min-width:0}.preview-brand__mark{display:grid;place-items:center;flex:0 0 48px;height:48px}.preview-brand__mark img{display:block;width:48px;height:48px;object-fit:contain}.workspace-university-logo{display:block;width:48px;height:48px;flex:none;object-fit:contain}.preview-brand strong{color:var(--ink);font-size:23px;letter-spacing:-.8px}.preview-brand strong span{font-size:11px;color:var(--muted);font-weight:400;letter-spacing:0}.preview-brand p{color:var(--muted);font-size:12px;margin-top:1px}.workspace-shell .nav-menu{gap:5px}.workspace-shell .nav-item a,.workspace-shell .sidebar summary{min-height:45px;font-size:.875rem;font-weight:500;padding:11px 13px;border-radius:10px;line-height:1.6}.workspace-shell .nav-item>a>i,.workspace-shell .sidebar summary>i{width:19px;text-align:center;color:var(--subtle)}.workspace-shell .nav-item>a>i{flex:0 0 19px;align-self:flex-start;margin-top:3px}.workspace-shell .nav-item>a:hover,.workspace-shell .sidebar summary:hover{background:var(--surface-hover);color:var(--accent-text)}.workspace-shell .nav-item.active>a,.workspace-shell .asset-submenu .active>a{background:var(--accent-soft);color:var(--accent-text)!important;font-weight:600}.workspace-shell .nav-item.active>a>i{color:var(--accent-text)}.workspace-shell .asset-submenu{margin:4px 0 8px 21px;padding-left:9px;border-left:1px solid var(--line)}.workspace-shell .asset-submenu a{font-size:.8125rem;min-height:39px;padding:8px 10px}.workspace-shell .profile-section{padding:15px 12px;background:var(--surface-muted);border-color:var(--line);border-radius:14px}.workspace-shell .profile-info{margin-bottom:0;gap:10px}.workspace-shell .profile-avatar{flex:0 0 38px;width:38px;height:38px;background:var(--accent-soft);color:var(--accent-text);border:0}.workspace-shell .profile-name{color:var(--ink);font-size:.8125rem}.workspace-shell .profile-role{color:var(--muted);font-size:.6875rem}.workspace-shell .profile-section #btn-logout{border-color:var(--line)!important;color:var(--muted)!important;background:var(--surface)}.workspace-shell .pwa-install-container{background:var(--accent-soft)!important;border:1px solid var(--line)!important;border-radius:14px!important;margin:18px 0 0!important}.workspace-shell .main-content{min-width:0}.workspace-shell .app-header{padding:17px 30px;min-height:76px;background:var(--surface);border-color:var(--line);box-shadow:none}.workspace-shell .header-title{min-width:0}.workspace-shell .header-title h2{color:var(--ink);font-size:.9375rem;font-weight:500;overflow-wrap:anywhere}.workspace-shell .header-title h2>i{color:var(--subtle);font-size:14px}.workspace-shell .sidebar-collapse-toggle,.workspace-shell .sidebar-hover-toggle,.workspace-shell .sidebar-toggle,.workspace-shell .sidebar-close{background:var(--surface-muted);border:1px solid var(--line);color:var(--muted);border-radius:10px}.workspace-shell .notification-bell-container{display:grid;place-items:center;flex-shrink:0;width:39px;height:39px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.workspace-shell .notification-bell{color:var(--muted);font-size:17px}.workspace-shell .system-time{color:var(--muted);font-size:.75rem}.workspace-shell .view-container{padding:28px 30px 40px;max-width:1580px}.theme-switcher{display:inline-flex;align-items:center;gap:7px;padding:0 10px;min-height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);color:var(--muted);flex-shrink:0}.theme-switcher select{min-width:0;max-width:95px;border:0;background:transparent;color:var(--ink);font-size:.8125rem;min-height:38px;cursor:pointer}.theme-switcher:focus-within{outline:2px solid var(--accent);outline-offset:2px}.login-theme{position:absolute;top:20px;right:20px;z-index:2}.login-container{background:radial-gradient(ellipse at top left,var(--accent-soft),var(--surface-muted) 65%);padding:80px 20px 35px}.login-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--workspace-shadow);border-radius:24px}.login-header h2{color:var(--ink)}.login-logo{background:transparent;animation:none}.login-logo img{display:block;width:96px;height:96px;margin:auto;object-fit:contain}.login-container:before{display:none}.design-kpi--featured{background:var(--accent)!important;border-color:var(--accent)!important}.shelf-label-card{color-scheme:light;--surface:#fff;--ink:#1e293b;--muted:#64748b;--line:#cbd5e1;--positive:#166534;--positive-soft:#dcfce7;--information-soft:#f8fafc}.btn{border-radius:10px;min-height:38px;font-weight:600}.btn-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-success{background:var(--positive-solid);color:var(--on-accent)}.btn-danger{background:var(--negative-solid);color:var(--on-accent)}.btn-warning{background:var(--caution-solid);color:var(--on-accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.workspace-welcome{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 25px}.workspace-welcome p{font-size:.6875rem;font-weight:700;color:var(--muted);letter-spacing:.13em;margin-bottom:8px}.workspace-welcome h1{font-size:1.85rem;line-height:1.5;font-weight:600;color:var(--ink)}.workspace-welcome span{color:var(--muted);font-size:.875rem}.workspace-welcome>i{padding:16px;border-radius:16px;color:var(--accent-text);background:var(--accent-soft);font-size:25px}.form-control,.ui-control{background:var(--surface);color:var(--ink);border-color:var(--line);border-radius:10px}.form-control::placeholder,input::placeholder,textarea::placeholder{color:var(--subtle);opacity:1}.ui-button[data-intent][data-emphasis=solid]{color:var(--surface-muted)}.ui-panel,.card,.dashboard-panel,.chart-panel,.kpi-card,.registry-actions{border-color:var(--line);box-shadow:var(--workspace-shadow);border-radius:17px}.data-table th,.ui-table th{background:var(--surface-muted);color:var(--muted)}.data-table tbody tr:hover{background:var(--surface-hover)}.modal-overlay{background:var(--overlay)}.modal-content{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:20px}.modal-header{background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line)}.modal-close{color:var(--muted)}.modal-body{min-width:0}.modal-footer{background:var(--surface);border-top:1px solid var(--line)}.ui-panel[data-zone=header]{border-color:var(--line)}#view-dashboard .executive-header{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:17px;padding:22px}#view-dashboard .executive-title-box h2{color:var(--ink);font-size:1.125rem}#view-dashboard .at-a-glance-card{min-height:135px;padding:20px;border:1px solid var(--line);border-radius:17px;box-shadow:var(--workspace-shadow)}#view-dashboard .at-a-glance-card strong{font-size:2rem;line-height:1.5}#view-dashboard .at-a-glance-card.is-assets{background:var(--pastel-accent);color:var(--ink);border-color:transparent}#view-dashboard .at-a-glance-card.is-stock{background:var(--pastel-teal);color:var(--ink);border-color:transparent}#view-dashboard .at-a-glance-card.is-risk{background:var(--pastel-caution);color:var(--ink);border-color:transparent}#view-dashboard .at-a-glance-card.is-room{background:var(--pastel-violet);color:var(--ink);border-color:transparent}#view-dashboard .at-a-glance-card.is-assets strong,#view-dashboard .at-a-glance-card.is-assets small,#view-dashboard .at-a-glance-card small{color:var(--ink)}#view-dashboard .at-a-glance-card.is-assets i{background:transparent;color:var(--accent-text)}#view-dashboard .at-a-glance-card.is-stock i{background:transparent;color:var(--teal)}#view-dashboard .at-a-glance-card.is-risk i{background:transparent;color:var(--caution)}#view-dashboard .at-a-glance-card.is-room i{background:transparent;color:var(--violet)}#view-dashboard .charts-section-grid{gap:22px}#view-dashboard .chart-panel{padding:22px}.service-center{border-color:var(--line);background:var(--surface)}.service-center .service-center__header h2{color:var(--ink);font-size:1.2rem}.service-center .service-center__eyebrow{color:var(--accent-text)!important;letter-spacing:.03em}.service-center .service-center__tabs button.active{color:var(--accent-text);border-bottom-color:var(--accent)}.service-center .priority-card,.service-center .service-card{border-radius:14px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:1100px)and (min-width:769px){.workspace-shell{--sidebar-width:254px}.workspace-shell .view-container{padding:24px}}@media(max-width:768px){.modal{padding:10px 0}.workspace-shell .sidebar{padding:24px 16px}.workspace-shell .app-header{padding:12px 16px;min-height:66px;position:-webkit-sticky;position:sticky;top:0;gap:8px}.workspace-shell .sidebar-toggle{width:40px;height:40px;flex-shrink:0}.workspace-shell .header-title h2{font-size:.875rem}.workspace-shell .header-title h2>i{display:none}.workspace-shell .header-actions{gap:8px;flex-shrink:0}.workspace-shell .view-container{padding:20px 16px 30px}.workspace-shell .notification-bell-container{width:36px;height:36px}.theme-switcher{padding:0 6px;gap:4px;min-height:40px}.theme-switcher i{display:none}.theme-switcher select{width:73px;font-size:.75rem}#view-dashboard .at-a-glance-card{padding:15px;min-height:115px}#view-dashboard .at-a-glance-card strong{font-size:1.6rem}#view-dashboard .chart-panel{padding:16px}.modal-content{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:20px}.modal-body{padding:16px;overflow:auto}}@media screen and (hover:hover)and (pointer:fine){.workspace-shell a.at-a-glance-card:hover,.workspace-shell a.priority-card:hover,.workspace-shell a.service:hover,.workspace-shell a.work:hover{border-color:var(--accent-text)!important;box-shadow:var(--hover-shadow)}.workspace-shell .btn:not(:disabled):not([aria-disabled=true]):not(.disabled):hover,.workspace-shell .ui-button:not(:disabled):not([aria-disabled=true]):not(.disabled):hover{box-shadow:var(--hover-shadow)}.workspace-shell .sidebar .nav-item>a:hover,.workspace-shell .sidebar summary:hover,.appearance-picker summary:hover{background:var(--accent-soft);color:var(--accent-text)}}@media screen and (hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.workspace-shell a.at-a-glance-card,.workspace-shell a.priority-card,.workspace-shell a.service,.workspace-shell a.work,.workspace-shell .btn,.workspace-shell .ui-button,.workspace-shell .sidebar .nav-item>a,.workspace-shell .sidebar summary,.appearance-picker summary{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease}.workspace-shell a.at-a-glance-card:hover,.workspace-shell a.priority-card:hover,.workspace-shell a.service:hover,.workspace-shell a.work:hover{transform:translateY(-3px)}.workspace-shell .btn:not(:disabled):not([aria-disabled=true]):not(.disabled):hover,.workspace-shell .ui-button:not(:disabled):not([aria-disabled=true]):not(.disabled):hover{transform:translateY(-1px)}.workspace-shell .sidebar .nav-item>a:hover,.workspace-shell .sidebar summary:hover{transform:translate(2px)}}@media screen{.workspace-shell a.at-a-glance-card:focus-visible,.workspace-shell a.priority-card:focus-visible,.workspace-shell a.service:focus-visible,.workspace-shell a.work:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px;box-shadow:0 0 0 5px var(--accent-soft)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.workspace-shell a.at-a-glance-card:hover,.workspace-shell a.priority-card:hover,.workspace-shell a.service:hover,.workspace-shell a.work:hover,.workspace-shell .btn:hover,.workspace-shell .ui-button:hover,.workspace-shell .sidebar .nav-item>a:hover,.workspace-shell .sidebar summary:hover,.workspace-shell .pillar-card:hover{transform:none!important}}@media print{:root[data-theme]{color-scheme:light;--surface:#fff;--surface-muted:#fff;--surface-hover:#f4f4f4;--ink:#000;--muted:#444;--line:#bbb;--accent:#3347bd;--accent-text:#3347bd}.theme-switcher,.login-theme{display:none!important}}@media screen and (max-width:768px){.workspace-shell .view-container input[type=date],.workspace-shell .view-container input[type=datetime-local]{box-sizing:border-box;min-width:0;max-width:100%;width:100%;min-height:44px!important;font-size:16px!important}}
