.tf-root{display:inline-block}.tf-root,.tf-trigger{position:relative}.tf-trigger.has-active{border-color:var(--brass);color:var(--brass-dim)}.tf-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;-webkit-margin-start:2px;margin-inline-start:2px;border-radius:9px;background:var(--brass);color:#2b1d12;font-size:.72rem;font-weight:800;line-height:1}.tf-overlay{display:none}.tf-panel{position:absolute;top:calc(100% + 8px);inset-inline-end:0;z-index:60;width:min(560px,92vw);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:tf-pop .15s ease}@keyframes tf-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tf-panel-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line-soft);background:var(--surface-2);border-radius:var(--radius) var(--radius) 0 0}.tf-panel-title{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:.95rem;color:var(--ink)}.tf-panel-title svg{color:var(--brass-dim)}.tf-panel-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:30px;background:var(--brass);color:#fff;font-size:.72rem;font-weight:800}.tf-panel-close{display:inline-flex;padding:5px;border:none;background:none;color:var(--ink-faint);cursor:pointer;border-radius:8px;transition:background .14s ease,color .14s ease}.tf-panel-close:hover{background:var(--surface-3,rgba(0,0,0,.06));color:var(--ink)}.tf-panel-body{padding:14px 16px;overflow:visible}.tf-panel-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--line-soft);background:var(--surface-2);border-radius:0 0 var(--radius) var(--radius)}.tf-builder{gap:14px}.tf-builder,.tf-empty{display:flex;flex-direction:column}.tf-empty{align-items:center;text-align:center;gap:4px;padding:26px 12px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--ink-faint)}.tf-empty svg{color:var(--brass-soft,var(--brass-dim));margin-bottom:4px}.tf-empty p{margin:0;font-weight:700;color:var(--ink-soft);font-size:.9rem}.tf-empty span{font-size:.8rem}.tf-rows{display:flex;flex-direction:column;gap:8px}.tf-row{grid-template-columns:52px minmax(0,1fr) auto;grid-gap:8px;gap:8px;padding:8px;border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--surface-2)}.tf-row,.tf-row-controls{display:grid;align-items:center}.tf-row-controls{grid-template-columns:minmax(110px,1fr) minmax(96px,.9fr) minmax(120px,1.3fr);grid-gap:7px;gap:7px;min-width:0}.tf-row-controls:not(:has(.tf-row-value)){grid-template-columns:minmax(120px,1.2fr) minmax(110px,1fr)}.tf-row-value{min-width:0}.tf-panel .cselect{width:100%}.tf-panel .control{width:100%;height:36px;padding:0 12px;border-width:1px;border-radius:9px;font-size:.85rem;background:var(--surface)}.tf-panel .cselect-trigger{height:36px}.tf-panel .cselect-value{font-size:.85rem}.tf-panel .cselect-caret{-webkit-margin-start:-2px;margin-inline-start:-2px}.tf-panel .cselect-pop{min-width:190px}.tf-panel .tf-range{width:100%}.tf-panel .tf-range>.control,.tf-panel .tf-range>.cselect{flex:1 1;min-width:0}.tf-connector{display:flex;align-items:center;justify-content:center}.tf-where{font-size:.8rem;font-weight:700;color:var(--ink-faint)}.tf-join-echo{font-size:.8rem;font-weight:800;color:var(--brass-dim)}.tf-join{display:inline-flex;padding:2px;border-radius:8px;background:var(--surface-3,rgba(0,0,0,.06));gap:2px}.tf-join button{min-width:22px;height:24px;padding:0 6px;border:none;border-radius:6px;background:none;color:var(--ink-faint);font:inherit;font-size:.8rem;font-weight:800;cursor:pointer;transition:background .14s ease,color .14s ease}.tf-join button.on{background:var(--brass);color:#fff}.tf-row-remove{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:none;color:var(--ink-faint);cursor:pointer;transition:color .14s ease,background .14s ease}.tf-row-remove:hover{color:var(--red);background:var(--red-soft,rgba(220,38,38,.1))}.tf-range{display:flex;align-items:center;gap:6px}.tf-range-sep{color:var(--ink-faint)}.tf-builder-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.tf-add{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:1px dashed var(--brass-soft,var(--line));border-radius:var(--radius-sm);background:var(--brass-soft,var(--surface-2));color:var(--leather,var(--brass-dim));font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:border-color .14s ease,background .14s ease}.tf-add:hover{border-color:var(--brass);border-style:solid}.tf-add:disabled{opacity:.5;cursor:not-allowed}.tf-clear{border:none;background:none;color:var(--ink-faint);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.tf-clear:hover{color:var(--red)}.tf-ms-option{gap:8px}.tf-ms-check{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1.5px solid var(--line);border-radius:5px;color:#fff;flex:none}.tf-ms-check.on{background:var(--brass);border-color:var(--brass)}.tf-dot{width:8px;height:8px;border-radius:50%;flex:none}.tf-dot.s-green{background:var(--green)}.tf-dot.s-red{background:var(--red)}.tf-dot.s-amber{background:var(--amber)}.tf-dot.s-blue{background:var(--blue)}.tf-dot.s-gray{background:var(--gray)}.tf-loadmore{width:100%;padding:8px;margin-top:4px;border:none;border-top:1px solid var(--line-soft);background:none;color:var(--brass-dim);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}.tf-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}.tf-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 11px;border-radius:30px;background:var(--brass-soft);color:var(--leather);font-size:.8rem;font-weight:600}.tf-chip-text b{font-weight:800}.tf-chip-x{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:50%;background:rgba(43,29,18,.12);color:var(--leather);cursor:pointer}.tf-chip-x:hover{background:var(--red);color:#fff}.tf-chips-clear{border:none;background:none;color:var(--ink-faint);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.tf-chips-clear:hover{color:var(--red)}@media (max-width:640px){.tf-overlay{display:block;position:fixed;inset:0;z-index:60;background:rgba(20,13,7,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.tf-panel{position:fixed;inset:auto 0 0 0;top:auto;width:100%;max-height:85vh;overflow-y:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:tf-sheet .2s ease}@keyframes tf-sheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tf-row{grid-template-columns:38px minmax(0,1fr) auto;align-items:start}.tf-row-controls,.tf-row-controls:not(:has(.tf-row-value)){grid-template-columns:1fr}.tf-connector{padding-top:6px;align-items:flex-start}.tf-row-remove{align-self:start}}.hidden{display:none!important}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.text-center{text-align:center}.full-width{width:100%}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.clamp-2,.clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.clamp-2{-webkit-line-clamp:2;line-clamp:2}.clamp-3{-webkit-line-clamp:3;line-clamp:3}.row{display:flex;align-items:center;gap:.6rem}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.gap-sm,.row.gap-sm{gap:.35rem}.col{display:flex;flex-direction:column;gap:.6rem}.spacer{flex:1 1}.grid{display:grid;grid-gap:1rem;gap:1rem}.grid.cols-2{grid-template-columns:1.6fr 1fr;align-items:start}.grid.cols-2eq{grid-template-columns:1fr 1fr;align-items:stretch}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-auto{grid-template-columns:repeat(auto-fill,minmax(285px,1fr))}.mt-0{margin-top:0}.mt-1{margin-top:.6rem}.mt-2{margin-top:1rem}.mb-2{margin-bottom:1rem}@media (max-width:1024px){.grid.cols-2,.grid.cols-2eq,.grid.cols-3{grid-template-columns:1fr}}.pwa-banners{position:fixed;inset-inline:0;inset-block-end:0;z-index:1000;display:flex;flex-direction:column;gap:8px;padding:12px;pointer-events:none}.pwa-banner{pointer-events:auto;margin-inline:auto;width:min(560px,100%);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md)}.pwa-banner-update{border-color:var(--brass-dim);background:linear-gradient(180deg,var(--surface),var(--surface-2))}.pwa-banner-text{font-size:14px;font-weight:600;color:var(--ink)}.pwa-banner-actions{display:flex;gap:8px;flex-shrink:0}.pwa-btn{font:inherit;font-weight:600;font-size:13px;cursor:pointer;border-radius:var(--radius-sm);padding:8px 16px;border:1px solid transparent;white-space:nowrap}.pwa-btn-primary{color:var(--leather);background:linear-gradient(145deg,var(--brass),var(--brass-dim))}.pwa-btn-primary:hover{box-shadow:var(--shadow-brass)}.pwa-btn-ghost{color:var(--ink-soft);background:transparent;border-color:var(--line)}.pwa-btn-ghost:hover{background:var(--surface-2);color:var(--ink)}@media (max-width:480px){.pwa-banner{flex-direction:column;align-items:stretch;text-align:center}.pwa-banner-actions{justify-content:center}}.m-shell{display:flex;flex-direction:column;background:var(--parchment);overflow-x:hidden}.m-gate,.m-shell{min-height:100vh;min-height:100dvh}.m-gate{display:grid;place-items:center;padding:24px;background:var(--parchment)}.m-header{position:-webkit-sticky;position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;min-height:52px;padding-inline:16px;-webkit-padding-before:calc(10px + env(safe-area-inset-top));padding-block-start:calc(10px + env(safe-area-inset-top));-webkit-padding-after:10px;padding-block-end:10px;background:rgba(244,238,226,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.m-header-brand{font-size:1.2rem;font-weight:800;color:var(--brass-dim);letter-spacing:.5px}.m-header-title{font-size:1.15rem;font-weight:700;color:var(--ink)}.m-content{flex:1 1;overflow-y:auto;overflow-x:hidden;width:100%;max-width:720px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));-webkit-padding-before:16px;padding-block-start:16px;-webkit-padding-after:calc(84px + env(safe-area-inset-bottom));padding-block-end:calc(84px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.m-bottom-nav{position:fixed;inset-inline:0;inset-block-end:0;z-index:40;gap:4px;padding-inline:8px;-webkit-padding-before:6px;padding-block-start:6px;-webkit-padding-after:calc(6px + env(safe-area-inset-bottom));padding-block-end:calc(6px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(43,29,18,.08)}.m-bottom-nav,.m-nav-item{display:flex;justify-content:center}.m-nav-item{flex:1 1;max-width:120px;min-height:56px;flex-direction:column;align-items:center;gap:3px;padding:6px 4px;border-radius:var(--radius-sm);color:var(--ink-faint);text-decoration:none;transition:color .15s ease,background .15s ease}.m-nav-item:active{background:var(--surface-2)}.m-nav-item.active{color:var(--brass-dim)}.m-nav-label{font-size:.7rem;font-weight:600;line-height:1.2;text-align:center}.m-home{gap:22px}.m-home,.m-welcome{display:flex;flex-direction:column}.m-welcome{gap:4px;padding:18px;border-radius:var(--radius);color:var(--brass-soft);background:linear-gradient(145deg,var(--leather),var(--leather-2));box-shadow:var(--shadow-md)}.m-welcome-hi{font-size:.85rem;opacity:.85}.m-welcome-name{font-size:1.35rem;font-weight:800;color:#fff}.m-welcome-role{align-self:flex-start;margin-top:4px;padding:3px 12px;border-radius:30px;font-size:.75rem;font-weight:600;color:var(--leather);background:linear-gradient(145deg,var(--brass),var(--brass-dim))}.m-section{display:flex;flex-direction:column;gap:10px}.m-section-title{font-size:1rem;font-weight:700;color:var(--ink)}.m-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.m-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.m-stat{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);-webkit-border-start:4px solid var(--gray);border-inline-start:4px solid var(--gray);box-shadow:var(--shadow-sm)}.m-stat.tone-blue{border-inline-start-color:var(--blue)}.m-stat.tone-brass{border-inline-start-color:var(--brass)}.m-stat.tone-amber{border-inline-start-color:var(--amber)}.m-stat.tone-red{border-inline-start-color:var(--red)}.m-stat-value{font-size:1.6rem;font-weight:800;color:var(--ink);line-height:1}.m-stat-label{font-size:.8rem;color:var(--ink-soft)}.m-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.m-quick-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:92px;padding:14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--ink);text-decoration:none;transition:transform .12s ease,box-shadow .15s ease}.m-quick-action:active{transform:scale(.97);box-shadow:var(--shadow-md)}.m-quick-action-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;color:var(--brass-dim);background:var(--surface-2);border:1px solid var(--line-soft)}.m-quick-action-label{font-size:.85rem;font-weight:600}.m-home-more{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;padding:8px 2px;font-size:.85rem;font-weight:700;color:var(--brass-dim);text-decoration:none}.m-home-more:active{opacity:.7}.m-page{display:flex;flex-direction:column;min-height:50vh;justify-content:center}.m-profile{gap:20px}.m-profile-head{display:flex;align-items:center;gap:14px;padding:18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);margin-bottom:16px}.m-profile-avatar{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;border-radius:50%;font-size:1.3rem;font-weight:800;color:var(--leather);background:linear-gradient(145deg,var(--brass),var(--brass-dim))}.m-profile-id{min-width:0}.m-profile-name{font-size:1.2rem;font-weight:800;color:var(--ink);overflow-wrap:anywhere}.m-profile-role{font-size:.85rem;color:var(--ink-soft)}.m-profile-fields{display:flex;flex-direction:column;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:16px}.m-profile-field{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line-soft)}.m-profile-field:last-child{border-bottom:none}.m-profile-field dt{font-size:.85rem;color:var(--ink-soft)}.m-profile-field dd{font-size:.9rem;font-weight:600;color:var(--ink);text-align:end;overflow-wrap:anywhere}.m-logout-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;padding:12px;font:inherit;font-weight:700;cursor:pointer;color:var(--red);background:var(--red-bg);border:1px solid var(--red);border-radius:var(--radius)}.m-logout-btn:active{filter:brightness(.97)}.mtasks{gap:14px}.mtasks,.mtasks-controls{display:flex;flex-direction:column}.mtasks-controls{gap:10px}.mtasks-filters{display:flex;gap:8px;overflow-x:auto;-webkit-padding-after:2px;padding-block-end:2px;scrollbar-width:none}.mtasks-filters::-webkit-scrollbar{display:none}.mtasks-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);border-radius:30px;white-space:nowrap}.mtasks-chip.on{color:var(--leather);background:linear-gradient(145deg,var(--brass),var(--brass-dim));border-color:var(--brass-dim)}.mtasks-chip-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.72rem;font-weight:700;border-radius:20px;color:var(--ink-soft);background:var(--surface-2)}.mtasks-chip.on .mtasks-chip-count{color:var(--brass-dim);background:rgba(255,255,255,.85)}.mtasks-sort{display:flex;align-items:center;gap:10px}.mtasks-sort-label{font-size:.8rem;color:var(--ink-soft)}.mtasks-list{display:flex;flex-direction:column;gap:12px;list-style:none}.mtask-card{display:flex;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);-webkit-border-start:4px solid var(--line);border-inline-start:4px solid var(--line)}.mtask-card.state-OVERDUE{border-inline-start-color:var(--red)}.mtask-card.state-IN_PROGRESS{border-inline-start-color:var(--amber)}.mtask-card.state-COMPLETED{border-inline-start-color:var(--green)}.mtask-card.state-PENDING{border-inline-start-color:var(--blue)}.mtask-card.state-CANCELLED{opacity:.62}.mtask-media{flex-shrink:0;width:52px;height:52px;display:grid;place-items:center;overflow:hidden;border-radius:12px;color:var(--brass-dim);background:var(--surface-2);border:1px solid var(--line-soft)}.mtask-media img{width:100%;height:100%;object-fit:cover}.mtask-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}.mtask-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.mtask-title{font-size:.98rem;font-weight:700;color:var(--ink);line-height:1.35;overflow-wrap:anywhere}.mtask-top .tag{flex-shrink:0}.mtask-sub{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.82rem;color:var(--ink-soft)}.mtask-box,.mtask-due,.mtask-horse,.mtask-type{display:inline-flex;align-items:center;gap:5px;min-width:0}.mtask-horse{font-weight:600;color:var(--ink)}.mtask-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.8rem;color:var(--ink-soft)}.mtask-due.overdue{color:var(--red);font-weight:700}.mtask-state{display:flex}.mtask-horse-link{text-decoration:none;color:var(--brass-dim)}.mtask-horse-link:active{opacity:.7}.m-exec{display:flex;flex-wrap:wrap;gap:8px;-webkit-margin-before:8px;margin-block-start:8px}.m-exec .btn{flex:1 1 auto;min-height:44px;justify-content:center}.m-exec-field{display:flex;flex-direction:column;gap:6px}.m-exec-label{font-size:.85rem;font-weight:600;color:var(--ink)}.m-exec-pending{display:flex;flex-direction:column;gap:8px;-webkit-margin-before:8px;margin-block-start:8px}.m-exec-badge{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:4px 10px;border-radius:20px;font-size:.78rem;font-weight:700}.m-exec-badge.pending{color:var(--blue);background:var(--surface-2);border:1px solid var(--blue)}.m-exec-badge.failed{color:var(--red);background:var(--red-bg);border:1px solid var(--red)}.m-exec-failed-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.m-exec-failed-reason{font-size:.8rem;color:var(--ink-soft)}.m-care-actions{display:flex;flex-direction:column;gap:8px}.m-care-actions .btn{min-height:48px;justify-content:center}.m-shift{gap:18px}.m-shift,.m-shift-report-actions{display:flex;flex-direction:column}.m-shift-report-actions{gap:8px}.m-shift-report-actions .btn{min-height:48px;justify-content:center}.m-shift-list{gap:12px;list-style:none}.m-shift-card,.m-shift-list{display:flex;flex-direction:column}.m-shift-card{gap:8px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);-webkit-border-start:4px solid var(--line);border-inline-start:4px solid var(--line)}.m-shift-card.status-ACTIVE{border-inline-start-color:var(--green)}.m-shift-card.status-PLANNED{border-inline-start-color:var(--blue)}.m-shift-card.status-COMPLETED{border-inline-start-color:var(--gray)}.m-shift-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-shift-num{display:inline-flex;align-items:center;gap:6px;font-size:.9rem}.m-shift-num,.m-shift-title{font-weight:700;color:var(--ink)}.m-shift-title{font-size:.98rem;line-height:1.35;overflow-wrap:anywhere}.m-shift-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.8rem;color:var(--ink-soft)}.m-shift-actions{display:flex;flex-wrap:wrap;gap:8px;-webkit-margin-before:4px;margin-block-start:4px}.m-shift-actions .btn{flex:1 1 auto;min-height:44px;justify-content:center}.m-scan{display:flex;flex-direction:column;gap:16px}.m-scan-stage{position:relative;width:100%;aspect-ratio:1/1;max-height:60vh;overflow:hidden;border-radius:var(--radius);background:#000;border:1px solid var(--line);display:grid;place-items:center}.m-scan-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}.m-scan-video.on{display:block}.m-scan-overlay{color:var(--brass);opacity:.6}.m-scan-reticle{position:absolute;inset:18%;border:2px solid rgba(255,255,255,.35);border-radius:14px;box-shadow:0 0 0 100vmax rgba(0,0,0,.25)}.m-scan-panel{display:flex;flex-direction:column;gap:12px}.m-scan-panel .btn{min-height:50px;justify-content:center}.m-scan-hint{margin:0;text-align:center;font-size:.9rem;color:var(--ink-soft)}.m-scan-notice{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;text-align:center;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.m-scan-notice h3{font-size:1rem;font-weight:700;color:var(--ink)}.m-scan-notice p{margin:0;font-size:.85rem;color:var(--ink-soft);line-height:1.6}.m-hlist{display:flex;flex-direction:column;gap:14px}.m-search{position:relative;display:flex;align-items:center}.m-search .ic{position:absolute;inset-inline-start:12px;display:grid;place-items:center;color:var(--ink-faint);pointer-events:none}.m-search input{width:100%;min-height:48px;padding-block:12px;-webkit-padding-start:40px;padding-inline-start:40px;-webkit-padding-end:14px;padding-inline-end:14px;font:inherit;font-size:.95rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.m-search input:focus{outline:none;border-color:var(--brass)}.m-hlist-meta{font-size:.8rem;color:var(--ink-soft)}.m-hlist-items{display:flex;flex-direction:column;gap:10px;list-style:none}.m-hlist-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--ink);text-decoration:none;transition:transform .12s ease}.m-hlist-item:active{transform:scale(.99)}.m-hlist-media{flex-shrink:0;width:48px;height:48px;display:grid;place-items:center;overflow:hidden;border-radius:12px;color:var(--brass-dim);background:var(--surface-2);border:1px solid var(--line-soft)}.m-hlist-media img{width:100%;height:100%;object-fit:cover}.m-hlist-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.m-hlist-name{font-size:.98rem;font-weight:700;color:var(--ink);overflow-wrap:anywhere}.m-hlist-sub{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:.8rem;color:var(--ink-soft)}.m-hlist-chev{flex-shrink:0;display:grid;place-items:center;color:var(--ink-faint)}.m-hp{display:flex;flex-direction:column;gap:18px}.m-back{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:6px 2px;font-size:.85rem;font-weight:600;color:var(--brass-dim);text-decoration:none}.m-back:active{opacity:.7}.m-hp-hero{display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.m-hp-photo{flex-shrink:0;width:72px;height:72px;display:grid;place-items:center;overflow:hidden;border-radius:16px;color:var(--brass-dim);background:var(--surface-2);border:1px solid var(--line-soft)}.m-hp-photo img{width:100%;height:100%;object-fit:cover}.m-hp-id{min-width:0;display:flex;flex-direction:column;gap:5px}.m-hp-name{font-size:1.25rem;font-weight:800;color:var(--ink);line-height:1.25;overflow-wrap:anywhere}.m-hp-en{font-size:.85rem;color:var(--ink-soft)}.m-hp-badges{flex-wrap:wrap;gap:6px}.m-hp-badges,.m-hp-warn{display:flex;align-items:center}.m-hp-warn{gap:8px;padding:12px 14px;border-radius:var(--radius);color:var(--red);background:var(--red-bg);border:1px solid var(--red);font-size:.85rem;font-weight:600;line-height:1.6}.m-hp-swatch{display:inline-flex;align-items:center;gap:6px}.m-hp-swatch-dot{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}.m-notif{display:flex;flex-direction:column;gap:14px}.m-notif-filter{overflow-x:auto;scrollbar-width:none}.m-notif-filter::-webkit-scrollbar{display:none}.m-notif-list{gap:12px;list-style:none}.m-notif-card,.m-notif-list{display:flex;flex-direction:column}.m-notif-card{gap:8px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);-webkit-border-start:4px solid var(--line);border-inline-start:4px solid var(--line)}.m-notif-card.sev-CRITICAL{border-inline-start-color:var(--red)}.m-notif-card.sev-HIGH{border-inline-start-color:var(--amber)}.m-notif-card.sev-MEDIUM{border-inline-start-color:var(--blue)}.m-notif-card.sev-LOW{border-inline-start-color:var(--gray)}.m-notif-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.m-notif-type{font-size:.82rem;font-weight:600;color:var(--ink-soft)}.m-notif-title{font-size:.98rem;font-weight:700;color:var(--ink);line-height:1.35;overflow-wrap:anywhere}.m-notif-desc{font-size:.85rem;color:var(--ink-soft);line-height:1.6;overflow-wrap:anywhere}.m-notif-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.8rem;color:var(--ink-soft)}.m-notif-due,.m-notif-link,.m-notif-time{display:inline-flex;align-items:center;gap:5px;min-width:0}.m-notif-due.overdue{color:var(--red);font-weight:700}.m-notif-links{display:flex;flex-wrap:wrap;gap:8px 16px;-webkit-padding-before:2px;padding-block-start:2px}.m-notif-link{font-size:.82rem;font-weight:600;color:var(--brass-dim);text-decoration:none}.m-notif-link:active{opacity:.7}@media print{body{background:#fff}.form-actions,.modal-overlay,.page-actions,.row-actions,.sidebar,.sidebar-backdrop,.subnav,.toast-wrap,.topbar{display:none!important}.main{-webkit-margin-start:0;margin-inline-start:0}.content{padding:0}.breed-card,.card,.table-wrap{box-shadow:none;border-color:#ddd}@page{margin:1.6cm}.no-print{display:none!important}.print-only{display:block!important}.report-print-head{margin-bottom:14px;border-bottom:2px solid #333;padding-bottom:10px}.report-print-head h1{font-size:1.4rem;margin:0 0 2px}.report-print-head .meta{font-size:.82rem;color:#444}.report-print-head .rp-brand{display:flex;align-items:center;gap:12px;margin-bottom:6px}.report-print-head .rp-logo{height:52px;width:auto;max-width:160px;object-fit:contain}.report-print-head .rp-report-title{font-size:.95rem;font-weight:600;color:#222}table{font-size:.8rem}thead{display:table-header-group}tr{page-break-inside:avoid}.report-print-table{width:100%;border-collapse:collapse;margin-top:12px}.report-print-table td,.report-print-table th{border:1px solid #ccc;padding:4px 6px;text-align:start;vertical-align:top}.report-print-table thead th{background:#f2f2f2;font-weight:700}}.print-only{display:none}