@font-face{font-family:Paperlogy;src:url(/fonts/Paperlogy-4Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Paperlogy;src:url(/fonts/Paperlogy-5Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Paperlogy;src:url(/fonts/Paperlogy-7Bold.woff2)format("woff2");font-weight:700;font-display:swap}:root{color:#2a3530;font-synthesis:none;--c-brand-50:#f1f6f3;--c-brand-100:#e2ece7;--c-brand-300:#a9c1b5;--c-brand-500:#5f8374;--c-brand-600:#4f7062;--c-brand-700:#3f5c50;--c-brand-900:#1c2a24;--c-gold-500:#b89764;--c-surface:#f8f7f2;--c-surface-card:#fff;--c-surface-subtle:#f0f3f1;--c-text:#24312c;--c-text-muted:#5c6863;--c-border:#d9e2dd;--c-border-strong:#b6c8bf;--c-success:#3f7a52;--c-warning:#9a6b16;--c-danger:#a34848;--c-info:#526f8a;--brand:var(--c-brand-500);--brand-strong:var(--c-brand-700);--surface:var(--c-surface);--card:var(--c-surface-card);--subtle:var(--c-surface-subtle);--border:var(--c-border);--text:var(--c-text);--text-muted:var(--c-text-muted);--warning:var(--c-warning);--error:var(--c-danger);--info:var(--c-info);--shadow:0 8px 28px #2a353012;background:#faf8f2;font-family:Paperlogy,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--surface);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh}.sidebar{color:#e8efeb;background:#1c2a24;flex-direction:column;width:240px;padding:28px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;margin-bottom:40px;display:flex}.brand-mark{color:#d4b27d;border:1px solid #557064;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.brand strong,.brand small{display:block}.brand strong{font-size:17px}.brand small{color:#9fb5ab;margin-top:2px;font-size:12px}.sidebar nav{gap:6px;display:grid}.sidebar nav a{color:#b8c8c0;border-radius:8px;padding:11px 13px;font-size:14px;text-decoration:none}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#2e443b}.sidebar-foot{color:#9fb5ab;gap:12px;margin-top:auto;font-size:12px;display:grid}.sidebar-user{color:#e8efeb;border:1px solid #2e443b;border-radius:10px;gap:2px;padding:12px;text-decoration:none;display:grid}.sidebar-user:hover,.sidebar-user.active{background:#2e443b}.sidebar-user strong{font-size:14px}.sidebar-user small{color:#9fb5ab}.auth-screen{background:var(--surface);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.auth-card{border:1px solid var(--border);background:var(--card);width:min(440px,100%);box-shadow:var(--shadow);border-radius:16px;gap:14px;padding:32px 28px;display:grid}.auth-brand{color:var(--text);margin-bottom:4px}.auth-brand .brand-mark{border-color:var(--c-brand-300);color:var(--c-gold-500)}.auth-brand small{color:var(--text-muted)}.auth-card h1{letter-spacing:-.03em;margin:0;font-size:26px;font-weight:500}.auth-copy{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.auth-submit{width:100%;min-height:48px;margin-top:6px}.auth-status{color:var(--text-muted)}.role-description{color:var(--text-muted);margin-top:6px;font-size:13px;display:block}.catalog-form-grid.single-column{grid-template-columns:1fr;max-width:420px}.editing-row td{background:var(--subtle)}.user-edit-grid{margin-top:4px}.reset-password-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.reset-password-row input{border:1px solid var(--c-border-strong);border-radius:8px;min-height:44px;padding:10px 12px}.design-link{color:#9fb5ab;text-decoration:none}.design-link:hover,.design-link.active{color:#fff}.status-dot{background:#7bae7b;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.status-dot.offline{background:#d9b66a}.main-content{min-height:100vh;margin-left:240px}.page{max-width:1440px;margin:auto;padding:48px clamp(24px,5vw,72px)}.page-head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px;display:flex}.eyebrow{color:var(--brand);letter-spacing:.16em;margin:0 0 7px;font-size:11px;font-weight:700}.page-head h1{letter-spacing:-.04em;margin:0;font-size:clamp(30px,4vw,42px);font-weight:500}.page-head p:last-child{color:var(--text-muted);margin:8px 0 0}.primary-button{color:#fff;background:var(--brand-strong);cursor:pointer;border:0;border-radius:8px;padding:11px 17px}.primary-button:hover{background:#324f43}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card,.panel{border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow);border-radius:12px}.stat-card{padding:20px}.stat-card>span{color:var(--text-muted);font-size:13px}.stat-card strong{margin:13px 0 4px;font-size:31px;font-weight:500;display:block}.stat-card small{color:var(--text-muted)}.stat-card.warning{border-top:3px solid #c49a3f}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:18px;margin-top:18px;display:grid}.panel{padding:24px}.panel-head{justify-content:space-between;align-items:start;display:flex}.panel-head h2{margin:0;font-size:20px}.text-button{color:var(--brand-strong);cursor:pointer;background:0 0;border:0}.empty-state{min-height:230px;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state>span{width:44px;height:44px;color:var(--brand);background:var(--subtle);border-radius:50%;place-items:center;margin-bottom:13px;font-size:21px;display:grid}.empty-state strong{color:var(--text)}.empty-state p{margin:7px 0 0;font-size:13px}.empty-state.tall{min-height:420px}.attention-list{margin:22px 0 0;padding:0;list-style:none}.attention-list li{border-top:1px solid var(--border);align-items:center;gap:10px;padding:14px 0;display:flex}.attention-list p{color:var(--text-muted);margin:0;font-size:13px}.badge{text-align:center;border-radius:5px;min-width:67px;padding:4px 7px;font-size:11px}.badge.warning{color:#76520f;background:#f8eac8}.badge.error{color:#873d3d;background:#f7dede}.badge.info{color:#475b70;background:#e1e8ef}.mobile-nav{display:none}.catalog-form{margin-bottom:18px}.catalog-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.category-quick-form{background:var(--subtle);border-radius:10px;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;margin-top:20px;padding:18px;display:grid}.catalog-list{padding:0;overflow:hidden}.catalog-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:20px;padding:24px;display:flex}.catalog-toolbar h2{margin:0}.catalog-toolbar input{border:1px solid var(--c-border-strong);background:#fff;border-radius:8px;width:min(360px,42vw);min-height:44px;padding:10px 13px}.catalog-list .empty-state{min-height:310px}.form-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;display:flex}.form-error{color:var(--error);grid-column:1/-1;margin:0}.row-action-link{place-items:center;text-decoration:none;display:inline-grid}.back-link{color:var(--brand-strong);margin-bottom:20px;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.item-detail-head{margin-bottom:22px}.detail-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.detail-stat-text{font-size:22px!important}.item-detail-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px;display:grid}.detail-section{margin-bottom:18px}.detail-section h2{margin:0;font-size:20px}.detail-list{margin:20px 0 0}.detail-list>div{border-top:1px solid var(--border);grid-template-columns:110px minmax(0,1fr);gap:16px;padding:14px 0;display:grid}.detail-list dt{color:var(--text-muted)}.detail-list dd{white-space:pre-wrap;margin:0}.location-summary{margin:20px 0 0;padding:0;list-style:none}.location-summary li{border-top:1px solid var(--border);justify-content:space-between;gap:18px;padding:14px 0;display:flex}.location-summary strong{font-variant-numeric:tabular-nums;font-weight:500}.compact-empty{color:var(--text-muted);text-align:center;margin-top:20px;padding:32px 0}.form-guidance{color:var(--text-muted);background:var(--subtle);border-radius:8px;margin:18px 0 0;padding:12px 14px;font-size:13px}.asset-section{overflow:hidden}.asset-section .table-scroll{margin:20px -24px -24px}.asset-section .catalog-form-grid{border-bottom:1px solid var(--border);margin-top:20px;padding-bottom:20px}.asset-section .catalog-form-grid .form-guidance{margin-top:0}.field-hint{color:var(--c-text-muted);font-size:12px;font-weight:400}.detail-stat-text{overflow-wrap:anywhere}.detail-stat-text .status-badge{font-size:14px}.primary-link{place-items:center;text-decoration:none;display:inline-grid}.table-link{color:var(--c-brand-700);text-decoration:none}.table-link:hover{text-decoration:underline}.location-summary li.muted{color:var(--text-muted)}.detail-action{place-items:center;margin-top:16px;text-decoration:none;display:inline-grid}.text-button{text-decoration:none}.type-chooser{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.type-choice{border:1px solid var(--c-border-strong);color:var(--text);background:#fff;border-radius:10px;gap:6px;padding:16px 18px;text-decoration:none;display:grid}.type-choice:hover{border-color:var(--c-brand-500);background:var(--c-brand-50)}.type-choice strong{font-size:15px}.type-choice span{color:var(--text-muted);font-size:13px;line-height:1.5}.filter-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-bar select{border:1px solid var(--c-border-strong);background:#fff;border-radius:8px;min-height:44px;padding:8px 12px}.movement-table{min-width:760px}.movement-table td,.movement-table th{white-space:nowrap}.movement-table .summary-chips{white-space:normal;max-width:320px}.page-head .status-badge{align-self:flex-start;font-size:13px}.pagination{color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;font-size:13px;display:flex}.pagination div{gap:8px;display:flex}.movement-lines{gap:14px;margin-top:20px;display:grid}.line-card{border:1px solid var(--border);background:var(--subtle);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:18px;display:grid}.line-card .field-wide{grid-column:1/-1}.line-card .form-guidance{background:#fff;margin-top:0}.line-head{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.line-head strong{font-size:14px}.asset-picker{border:1px dashed var(--c-border-strong);background:#fff;border-radius:8px;grid-column:1/-1;gap:10px;margin:0;padding:14px 16px;display:grid}.asset-picker legend{padding:0 6px;font-size:13px;font-weight:500}.asset-picker legend small{color:var(--text-muted);margin-top:2px;font-weight:400;display:block}.asset-picker-list{flex-wrap:wrap;gap:8px;display:flex}.asset-choice{border:1px solid var(--c-border-strong);background:var(--c-surface);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:6px 12px;font-size:13px;display:inline-flex}.asset-choice input{width:16px;height:16px;accent-color:var(--c-brand-600)}.movement-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.form-error.standalone{margin:0 0 14px}.confirm-panel{margin-bottom:14px}.cancel-reason{max-width:420px;margin-top:10px}.summary-chips{flex-wrap:wrap;gap:6px;display:flex}.chip{min-height:26px;color:var(--c-brand-700);background:var(--c-brand-50);border-radius:5px;align-items:center;padding:2px 9px;font-size:12px;text-decoration:none;display:inline-flex}.chip:hover{background:var(--c-brand-100)}.attention-list .status-badge{justify-content:center;min-width:56px}.fixed-value{border:1px dashed var(--c-border);min-height:44px;color:var(--text);background:var(--c-surface);border-radius:8px;align-items:center;margin:0;padding:10px 12px;font-weight:400;display:flex}.context-panel{padding:18px 24px}.context-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 20px;display:grid}.context-grid span{color:var(--text-muted);font-size:12px;display:block}.context-grid strong{font-weight:500}.event-actions{justify-content:flex-start;margin-bottom:18px}.event-actions .button{place-items:center;text-decoration:none;display:inline-grid}.asset-choice-main{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.asset-damaged{border-left:1px solid var(--c-border);color:var(--c-danger);cursor:pointer;align-items:center;gap:4px;margin-left:8px;padding-left:8px;font-size:12px;display:inline-flex}.asset-damaged input{accent-color:var(--c-danger)}.chip-danger{color:var(--c-danger);background:#f7e1e1}.count-list{gap:14px;margin-top:20px;display:grid}.count-card{border:1px solid var(--border);background:#fff;border-radius:12px;gap:14px;padding:18px;display:grid}.count-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.count-head strong{font-size:16px;display:block}.count-head small{color:var(--text-muted);margin-top:3px;display:block}.count-system{text-align:right}.count-system span,.count-result span{color:var(--text-muted);font-size:12px;display:block}.count-system strong{font-variant-numeric:tabular-nums;font-size:22px;font-weight:500}.count-conflict{color:#76520f;background:#f8eac8;border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.count-form{gap:12px;display:grid}.count-form .stepper{margin-top:0}.count-form .stepper input{border:1px solid var(--c-border-strong);text-align:center;border-radius:10px;min-height:52px;padding:8px;font-size:26px;font-weight:500}.count-actions{justify-content:flex-end;gap:10px;display:flex}.count-actions .button{min-height:48px}.count-result{grid-template-columns:1fr 1fr auto auto;align-items:center;gap:12px;display:grid}.count-result strong{font-size:20px;font-weight:500;display:block}.count-result small{color:var(--text-muted);font-size:12px;display:block}.inline-add{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-add select{border:1px solid var(--c-border-strong);background:#fff;border-radius:8px;min-height:40px;padding:6px 10px}.review-toggle{margin-top:18px}.review-missing{margin-top:14px}.restore-steps{color:var(--text);margin:18px 0 0;padding-left:20px;line-height:1.7}.restore-steps code{background:var(--subtle);border-radius:4px;padding:1px 5px;font-size:13px}.activity-table td code{color:var(--c-brand-700);font-size:12px}.activity-summary{min-width:280px;white-space:normal!important}.activity-details{background:var(--subtle);white-space:pre-wrap;border-radius:8px;margin:8px 0 0;padding:10px;font-size:12px}.filter-bar input[type=date],.filter-bar input[type=search]{border:1px solid var(--c-border-strong);background:#fff;border-radius:8px;min-height:44px;padding:8px 12px}.field-check{min-height:44px;color:var(--text-muted);align-items:center;gap:10px;font-size:13px;display:flex}.field-check input{width:18px;height:18px;accent-color:var(--brand-strong)}.danger-confirm{background:#fff5f5;border:1px solid #e6bcbc;border-radius:10px;align-items:center;gap:10px;padding:16px;display:flex}.danger-confirm>div{flex:1}.danger-confirm strong{color:var(--error)}.danger-confirm p{color:var(--text-muted);margin:4px 0 0;font-size:13px}.location-name{padding-left:var(--location-indent,0)}@media (width<=920px){.sidebar{display:none}.main-content{margin-left:0;padding-bottom:76px}.page{padding:28px 20px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.catalog-form-grid,.detail-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.item-detail-grid{grid-template-columns:1fr}.line-card{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-nav{z-index:10;padding:8px max(8px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav a{color:var(--text-muted);text-align:center;padding:8px 2px;font-size:11px;text-decoration:none}.mobile-nav a.active{color:var(--brand-strong);font-weight:700}}@media (width<=560px){.page-head{flex-direction:column;align-items:stretch}.primary-button{width:100%}.stat-grid{gap:10px}.stat-card{padding:16px}.stat-card strong{font-size:27px}.panel{padding:19px}.catalog-form-grid,.category-quick-form{grid-template-columns:1fr}.catalog-toolbar{flex-direction:column;align-items:stretch}.catalog-toolbar input{width:100%}.catalog-list{padding:0}.detail-list>div{grid-template-columns:1fr;gap:5px}.asset-section .table-scroll{margin-inline:-19px;margin-bottom:-19px}.danger-confirm{flex-direction:column;align-items:stretch}.type-chooser,.line-card{grid-template-columns:1fr}.pagination{flex-direction:column;align-items:stretch}.movement-actions .button{flex:auto}.count-result{grid-template-columns:1fr 1fr}.count-actions .button{flex:auto}.panel-head{flex-direction:column;align-items:stretch;gap:12px}.panel-head .button,.attachment-upload-button{justify-content:center}.search-form{flex-direction:column;align-items:stretch}.print-facts{grid-template-columns:1fr}.export-bar{margin-top:0}.maintenance-actions .button,.form-actions .button{flex:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.design-system-page{max-width:1520px}.ds-hero{border-bottom:1px solid var(--c-border);grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:64px;padding:30px 0 64px;display:grid}.ds-hero h1{letter-spacing:-.05em;max-width:760px;margin:0;font-size:clamp(40px,5vw,68px);font-weight:500;line-height:1.12}.ds-hero-copy{max-width:700px;color:var(--c-text-muted);margin:24px 0 0;font-size:17px;line-height:1.75}.ds-principles{border:1px solid var(--c-border);background:var(--c-surface-card);box-shadow:var(--shadow);border-radius:12px;grid-template-columns:34px 1fr;align-self:end;gap:16px 12px;padding:24px;display:grid}.ds-principles span{color:var(--c-gold-500);font-size:12px;font-weight:700}.ds-principles strong{font-size:14px}.ds-section{border-bottom:1px solid var(--c-border);padding:64px 0}.ds-section-head{grid-template-columns:minmax(220px,.65fr) minmax(300px,1fr);align-items:end;gap:40px;margin-bottom:28px;display:grid}.ds-section-head h2{letter-spacing:-.03em;margin:0;font-size:28px}.ds-section-head>p{max-width:650px;color:var(--c-text-muted);margin:0;line-height:1.7}.color-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.color-card{border:1px solid var(--c-border);background:#fff;border-radius:10px;overflow:hidden}.color-swatch{height:92px}.color-card strong,.color-card code,.color-card small{margin-inline:14px;display:block}.color-card strong{margin-top:13px;font-size:13px}.color-card code{color:var(--c-text-muted);margin-top:5px;font-size:12px}.color-card small{color:var(--c-text-muted);margin-block:5px 14px}.type-specimen{border-top:1px solid var(--c-border)}.type-specimen>div{border-bottom:1px solid var(--c-border);grid-template-columns:220px 1fr;align-items:baseline;padding:22px 0;display:grid}.type-specimen span{color:var(--c-text-muted);font-size:12px}.type-specimen p{margin:0}.sample-page-title{letter-spacing:-.04em;font-size:32px;font-weight:500;line-height:1.3}.sample-section-title{font-size:20px;font-weight:700}.sample-number{font-variant-numeric:tabular-nums;font-size:30px;font-weight:500}.sample-number small{color:var(--c-text-muted);font-size:14px}.component-board{gap:16px;display:grid}.component-board.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.specimen-card,.form-board,.inventory-specimen{border:1px solid var(--c-border);box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:24px}.specimen-card h3{margin:0 0 20px;font-size:16px}.button-row,.badge-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:8px;min-height:44px;padding:0 16px;font-weight:500}.button:focus-visible,.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.stepper button:focus-visible{outline-offset:2px;outline:3px solid #5f837447}.button-primary{color:#fff;background:var(--c-brand-600)}.button-primary:hover{background:var(--c-brand-700)}.button-secondary{color:var(--c-brand-700);border-color:var(--c-border-strong);background:#fff}.button-tertiary{color:var(--c-brand-700);background:var(--c-brand-50)}.button-danger{color:#fff;background:var(--c-danger)}.button:disabled{color:#87918d;cursor:not-allowed;background:#e4e8e6}.status-badge{white-space:nowrap;border-radius:5px;align-items:center;min-height:26px;padding:3px 9px;font-size:12px;font-weight:500;display:inline-flex}.status-badge.neutral{color:#53605b;background:#e9edeb}.status-badge.info{color:#3e5d78;background:#e4edf4}.status-badge.success{color:#2f6842;background:#e2f0e6}.status-badge.warning{color:#7d560f;background:#f8ebc9}.status-badge.danger{color:#873b3b;background:#f7e1e1}.connection-samples{color:var(--c-text-muted);gap:12px;margin-top:24px;font-size:13px;display:grid}.connection-dot{border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.connection-dot.online{background:var(--c-success)}.connection-dot.pending{background:var(--c-warning)}.connection-dot.failed{background:var(--c-danger)}.form-board{grid-template-columns:repeat(3,1fr)}.field{color:var(--c-text);align-content:start;gap:7px;font-size:13px;font-weight:500;display:grid}.field b{color:var(--c-danger)}.field input,.field select,.field textarea,.inventory-toolbar input{border:1px solid var(--c-border-strong);width:100%;min-height:44px;color:var(--c-text);background:#fff;border-radius:8px;padding:10px 12px}.field textarea{resize:vertical}.field-wide{grid-column:1/-1}.field-error input{border-color:var(--c-danger)}.field-error small{color:var(--c-danger);font-weight:400}.inventory-toolbar{grid-template-columns:minmax(240px,1fr) auto auto;gap:10px;margin-bottom:20px;display:grid}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th{color:var(--c-text-muted);background:var(--c-surface-subtle);letter-spacing:.06em;text-align:left;padding:12px 14px;font-size:11px;font-weight:700}.data-table td{border-bottom:1px solid var(--c-border);vertical-align:middle;padding:16px 14px}.data-table tbody tr:hover{background:var(--c-brand-50)}.data-table td strong,.data-table td small{display:block}.data-table td small{color:var(--c-text-muted);margin-top:4px}.data-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.danger-text{color:var(--c-danger);font-weight:700}.row-action{min-width:44px;min-height:36px;color:var(--c-brand-700);cursor:pointer;background:0 0;border:0}.mobile-specimen-wrap{grid-template-columns:minmax(320px,420px) 1fr;align-items:center;gap:clamp(32px,7vw,100px);display:grid}.mobile-device{border:8px solid var(--c-brand-900);background:var(--c-surface);border-radius:30px;padding:0 18px 18px;overflow:hidden;box-shadow:0 24px 60px #1c2a242e}.mobile-device header{gap:4px;display:grid}.mobile-device header small{color:var(--c-text-muted)}.mobile-device header strong{font-size:20px}.mobile-device header span{color:var(--c-brand-600);font-size:12px}.mobile-count-card{border:1px solid var(--c-border);background:#fff;border-radius:12px;margin:18px 0;padding:18px}.mobile-count-card>div:first-child{justify-content:space-between;align-items:center;display:flex}.mobile-count-card span{color:var(--c-text-muted);font-size:13px}.mobile-count-card>div:first-child strong{font-size:24px;font-weight:500}.quantity-field{border-top:1px solid var(--c-border);margin-top:18px;padding-top:16px}.stepper{grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;margin-top:8px;display:grid}.stepper button{border:1px solid var(--c-border-strong);height:52px;color:var(--c-brand-700);background:var(--c-brand-50);cursor:pointer;border-radius:10px;font-size:22px}.stepper strong{text-align:center;font-size:30px;font-weight:500}.mobile-count-card>p{border-top:1px solid var(--c-border);justify-content:space-between;margin:16px 0 0;padding-top:14px;display:flex}.mobile-count-card>p strong{color:var(--c-danger)}.camera-button{border:1px dashed var(--c-border-strong);width:100%;min-height:48px;color:var(--c-brand-700);cursor:pointer;background:#fff;border-radius:10px;margin-bottom:15px}.mobile-save{width:100%;min-height:48px;margin-top:16px}.mobile-notes{grid-template-columns:36px 1fr;gap:24px 14px;max-width:520px;display:grid}.mobile-notes>span{color:var(--c-gold-500);font-size:13px;font-weight:700}.mobile-notes p{color:var(--c-text-muted);margin:0;line-height:1.6}.mobile-notes strong{color:var(--c-text);margin-bottom:3px;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.link-button{color:var(--c-brand-700);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}tr[draggable=true]{cursor:grab}tr.dragging{opacity:.5}.drop-target{outline:2px dashed var(--c-brand-600);outline-offset:-2px;background:var(--c-brand-50)}.location-summary li.drop-target{border-radius:8px}.map-links{margin-top:6px}.map-links.compact .chip{min-height:22px;padding:0 7px;font-size:11px}.location-detail{color:var(--text-muted);white-space:pre-line;margin-top:2px;display:block}.search-box{margin:4px 0 12px;position:relative}.search-box input{border:1px solid var(--c-border-strong);background:#fff;border-radius:8px;width:100%;min-height:40px;padding:8px 12px;font-size:13px}.search-suggestions{z-index:20;border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow);border-radius:10px;gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0}.search-suggestion{color:var(--c-text);border-radius:6px;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 8px;padding:6px 8px;text-decoration:none;display:grid}.search-suggestion:hover,.search-suggestion:focus-visible{background:var(--c-brand-50)}.search-suggestion strong{font-weight:500}.search-suggestion small{color:var(--text-muted);grid-column:2}.search-kind{background:var(--c-brand-50);color:var(--c-brand-700);border-radius:4px;padding:1px 6px;font-size:11px}.search-hint,.search-more{color:var(--text-muted);margin:0;padding:6px 8px;font-size:12px}.search-more{color:var(--c-brand-700);text-decoration:none}.search-form{align-items:end;gap:12px;padding:20px;display:flex}.search-form .field{flex:1}.search-results{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.search-results li{border-bottom:1px solid var(--border);gap:2px;padding:8px 0;display:grid}.search-results small{color:var(--text-muted)}.export-bar{flex-wrap:wrap;gap:8px;margin:-8px 0 16px;display:flex}.print-page{color:#111;background:#fff;max-width:210mm;margin:0 auto;padding:24px;font-size:13px;line-height:1.5}.print-toolbar{gap:10px;margin-bottom:20px;display:flex}.print-head{border-bottom:2px solid #111;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:12px;display:flex}.print-head h1{letter-spacing:.02em;margin:4px 0 0;font-size:24px}.print-org{color:#555;margin:0;font-size:12px}.print-meta{border-collapse:collapse;font-size:12px}.print-meta th,.print-meta td{border:1px solid #999;padding:3px 8px}.print-meta th{text-align:left;background:#f2f2f2;font-weight:500}.print-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 24px;margin:16px 0;display:grid}.print-facts div{grid-template-columns:90px 1fr;gap:8px;display:grid}.print-facts dt{color:#555}.print-facts dd{margin:0}.print-table{border-collapse:collapse;width:100%;margin-top:8px;font-size:12px}.print-table th,.print-table td{vertical-align:top;text-align:left;border:1px solid #999;padding:6px 8px}.print-table th{background:#f2f2f2;font-weight:500}.print-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.print-table small{color:#555}.print-signatures{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px;display:grid}.print-signatures div{border:1px solid #999;justify-content:space-between;align-items:flex-end;min-height:64px;padding:8px 12px;display:flex}.print-signatures em{color:#777;font-style:normal}.print-foot{color:#777;margin-top:24px;font-size:11px}@page{size:A4 portrait;margin:15mm}@media print{body{background:#fff}.no-print{display:none!important}.print-page{max-width:none;padding:0}.print-table thead{display:table-header-group}.print-table tfoot{display:table-footer-group}.print-table tr,.print-signatures{break-inside:avoid;page-break-inside:avoid}.print-signatures{break-before:auto}}.maintenance-actions{margin-top:16px}.maintenance-open{gap:12px;margin-top:12px;display:grid}.pagination{color:var(--text-muted);justify-content:center;margin-top:16px}.attachment-panel .count-badge{min-width:24px;color:var(--c-brand-700);background:var(--c-brand-50);text-align:center;vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:13px;display:inline-block}.attachment-upload-button{cursor:pointer;align-items:center;display:inline-flex}.attachment-upload-button.is-busy{color:var(--text-muted);cursor:progress}.attachment-upload-button:focus-within{outline-offset:2px;outline:3px solid #5f837447}.attachment-note{max-width:520px;margin-top:16px}.attachment-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin:20px 0 0;padding:0;list-style:none;display:grid}.attachment-card{gap:8px;display:grid}.attachment-card a{border:1px solid var(--border);aspect-ratio:4/3;background:#f0f2f1;border-radius:10px;display:block;overflow:hidden}.attachment-card img{object-fit:cover;width:100%;height:100%;display:block}.attachment-meta{gap:3px;font-size:13px;display:grid}.attachment-meta strong{overflow-wrap:anywhere;font-weight:500}.attachment-meta small{color:var(--text-muted)}.attachment-delete{justify-self:start;min-height:36px;margin-top:4px}@media (width<=1100px){.color-grid{grid-template-columns:repeat(2,1fr)}.form-board{grid-template-columns:1fr 1fr}.field-error{grid-column:1/-1}}@media (width<=760px){.ds-hero,.ds-section-head,.component-board.two-column,.mobile-specimen-wrap{grid-template-columns:1fr}.ds-hero{gap:32px;padding-top:10px}.ds-hero h1{font-size:40px}.ds-section{padding:44px 0}.ds-section-head{gap:10px}.type-specimen>div{grid-template-columns:1fr;gap:10px}.form-board{grid-template-columns:1fr}.field-error,.field-wide{grid-column:auto}.inventory-toolbar{grid-template-columns:1fr 1fr}.inventory-toolbar label{grid-column:1/-1}.mobile-device{max-width:420px;margin:auto}}@media (width<=480px){.color-grid{grid-template-columns:1fr 1fr}.color-swatch{height:70px}.specimen-card,.form-board,.inventory-specimen{padding:18px}}
