:root{--color-text:#203041;--color-text-secondary:#627489;--color-border:#62748929;--color-border-strong:#6274893d;--color-surface:#f8fafce0;--color-surface-strong:#fffffff0;--color-surface-muted:#f2f6faf5;--color-surface-soft:#20304109;--color-surface-primary-soft:#0f766e17;--color-primary:#15736b;--color-primary-strong:#115e58;--color-primary-contrast:#f5fffd;--color-shadow:0 16px 36px #20304114;--color-bg-radial:#15736b1a;--color-bg-start:#edf4fb;--color-bg-mid:#f5f8fb;--color-bg-end:#eaf1f7;--bottom-nav-height:4.5rem;--bottom-nav-offset:calc(var(--bottom-nav-height) + 1.75rem + env(safe-area-inset-bottom));color:var(--color-text);background:radial-gradient(circle at top, var(--color-bg-radial), transparent 22%), linear-gradient(180deg, var(--color-bg-start) 0%, var(--color-bg-mid) 32%, var(--color-bg-end) 100%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--color-text);background:0 0;margin:0}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid color-mix(in srgb, var(--color-primary) 70%, white);outline-offset:2px}h1,h2,p{margin:0}#root{min-height:100vh}.app-shell{max-width:76rem;min-height:100vh;padding:1rem 1rem calc(var(--bottom-nav-offset) + .5rem);margin:0 auto}.app-header{gap:1rem;margin-bottom:1rem;display:grid}.header-actions{flex-wrap:wrap;align-items:center;gap:.65rem;min-width:0;display:flex}.profile-menu{position:relative}.settings-link{background:var(--color-surface-strong);border:1px solid var(--color-border);min-height:2.5rem;color:var(--color-primary);border-radius:.95rem;justify-content:center;align-items:center;gap:.45rem;padding:.65rem .9rem;font-weight:700;display:inline-flex}.notification-link{background:var(--color-surface-strong);border:1px solid var(--color-border);border-radius:.95rem;justify-content:center;align-items:center;min-width:2.5rem;min-height:2.5rem;font-weight:800;display:inline-flex;position:relative}.notification-link strong{color:#fff;background:#b91c1c;border-radius:999px;justify-content:center;align-items:center;min-width:1.25rem;min-height:1.25rem;padding:0 .3rem;font-size:.72rem;display:inline-flex;position:absolute;top:-.35rem;right:-.35rem}.settings-link:hover{background:var(--color-surface-primary-soft)}.header-button{min-height:2.5rem;padding-inline:.9rem}.app-brand{gap:.2rem;min-width:0;display:grid}.app-brand strong{font-size:1.4rem;font-weight:800}.app-brand span{color:var(--color-text-secondary);overflow-wrap:anywhere;font-size:.92rem}.eyebrow{color:var(--color-primary);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.status-pill,.tag,.pill{border-radius:999px;padding:.45rem .8rem;font-size:.82rem;font-weight:700}.status-pill{text-align:center;white-space:normal;justify-content:center;align-items:center;line-height:1.15;display:inline-flex}.status-pill.is-online{color:#166534;background:#22c55e1f}.status-pill.is-offline{color:#9a3412;background:#fb923c29}.status-pill.is-warning{color:#854d0e;background:#facc1538}.status-sync-pending,.status-sync-syncing,.status-sync-synced,.status-sync-failed,.status-sync-conflict{padding-inline:.7rem}.status-sync-pending{color:#1d4ed8;background:#3b82f61f}.status-sync-syncing{color:#0369a1;background:#0ea5e91f}.status-sync-synced{color:#166534;background:#22c55e1f}.status-sync-failed{color:#9a3412;background:#f9731624}.status-sync-conflict{color:#991b1b;background:#b91c1c1f}.system-banner,.demo-banner,.footer-note{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:1rem;padding:.9rem 1rem}.footer-note-error{color:#991b1b;background:#fee2e2f2}.system-banner{background:#fff3e0eb;margin-bottom:1rem}.system-banner-sync{background:#ecfdf5f2}.app-content,.page,.task-list,.journal-list,.library-list,.field-grid,.page-header{gap:1rem;display:grid}.app-header>*,.page-header>*,.history-header>*,.journal-card-header>*,.user-card-header>*,.header-actions>*{min-width:0}.page-title{letter-spacing:-.04em;font-size:clamp(1.8rem,5vw,3rem);line-height:1.05}.page-subtitle{color:var(--color-text-secondary);max-width:44rem;margin-top:.55rem}.card{background:var(--color-surface-strong);border:1px solid var(--color-border);box-shadow:var(--color-shadow);border-radius:1.3rem;padding:1rem}.hero-card{background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 12%, transparent), #22c55e0d), var(--color-surface-strong);padding:1.2rem}.hero-actions,.submit-row,.pill-row,.meta-list,.journal-tags{flex-wrap:wrap;gap:.75rem;display:flex}.meta-list{color:var(--color-text-secondary);font-size:.92rem}.button,.button-secondary{cursor:pointer;border:1px solid #0000;border-radius:.95rem;justify-content:center;align-items:center;min-height:2.9rem;padding:.75rem 1rem;font-weight:700;display:inline-flex}.button{background:var(--color-primary);color:var(--color-primary-contrast);border-color:color-mix(in srgb, var(--color-primary) 82%, black 8%);box-shadow:0 10px 20px color-mix(in srgb, var(--color-primary) 22%, transparent)}.button-secondary{background:var(--color-surface-primary-soft);color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 16%, var(--color-border))}.button:hover,.button-secondary:hover,.theme-option:hover{transform:translateY(-1px)}.pill{border:1px solid var(--color-border);background:var(--color-surface-strong);color:var(--color-text-secondary)}.pill-active,.tag{background:var(--color-surface-primary-soft);color:var(--color-primary)}.journal-card,.task-item,.document-item,.form-card,.queue-card,.queue-entry-list,.library-upload-card,.library-document-card,.library-preview-panel,.library-document-copy,.library-audit-card,.library-audit-panel,.library-audit-list,.library-audit-item{gap:1rem;display:grid}.library-document-header{gap:.75rem;display:grid}.library-document-title-row{gap:.65rem;display:grid}.library-document-title-row h2{margin:0}.library-document-meta{gap:.45rem .9rem}.library-document-actions{align-items:stretch}.library-audit-list{gap:.75rem}.library-audit-item{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.95rem;gap:.5rem;padding:.85rem 1rem}.library-audit-item-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.library-preview-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;padding:.9rem}.library-preview-frame,.library-preview-image{background:color-mix(in srgb, var(--color-surface-primary-soft) 65%, white 20%);border:0;border-radius:.85rem;width:100%;min-height:min(78vw,28rem)}.library-preview-image{object-fit:contain;padding:.25rem}.library-load-more-row{justify-content:center}.library-tag-preview{color:#0f766e;background:#0e74901f}.queue-entry-row{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:.9rem;gap:.45rem;padding:.85rem;display:grid}.queue-entry-error{color:#b45309}.history-block,.history-entry{gap:.75rem;display:grid}.dashboard-grid,.settings-list,.settings-section,.dashboard-action-card,.dashboard-stat,.task-section{gap:1rem;display:grid}.dashboard-stat{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1rem;padding:1rem}.dashboard-stat-value{letter-spacing:-.05em;font-size:clamp(2rem,7vw,3rem);line-height:1}.dashboard-action-card p,.dashboard-stat p,.settings-list-item{color:var(--color-text-secondary)}.home-hero-card{gap:1rem}.home-work-panel{gap:1rem;display:grid}.home-header{align-items:center}.home-panel-header{gap:.25rem;display:grid}.home-stats-grid{grid-template-columns:repeat(3,minmax(5.4rem,6.4rem));justify-content:start;gap:.45rem}.status-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.status-chip{background:#143d2e0a;border:1px solid #16203214;border-radius:.95rem;gap:.15rem;padding:.65rem .75rem;display:grid}.status-chip-overdue{background:#b91c1c0d;border-color:#b91c1c29}.status-chip-critical{background:#b91c1c14;border-color:#b91c1c38}.status-chip-warning{background:#b4530914;border-color:#b4530933}.haccp-dashboard-panel{background:linear-gradient(135deg,#b91c1c0f,#b453090d);border:1px solid #b91c1c1f;border-radius:1rem;gap:.75rem;padding:.85rem;display:grid}.haccp-dashboard-panel h2{margin:0}.status-chip-label{color:#536277;font-size:.8rem;font-weight:700}.status-chip-value{letter-spacing:-.04em;font-size:1.45rem;line-height:1}.home-task-list{gap:.75rem;display:grid}.tighter-stat{gap:.25rem;padding:.58rem .72rem}.settings-list-item{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.9rem;gap:.5rem;padding:.85rem 1rem;display:grid}.settings-section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.settings-section h2{margin:0;font-size:1.1rem}.settings-field-item{gap:.85rem}.settings-field-grid{grid-template-columns:1fr}.rule-panel{background:var(--color-surface-primary-soft);border:1px dashed color-mix(in srgb, var(--color-primary) 18%, transparent);border-radius:1rem;gap:.75rem;padding:.85rem;display:grid}.rule-grid{gap:.75rem}.alert-item{border-color:#b453092e}.alert-item-read{opacity:.72}.alert-tag-critical{color:#991b1b;background:#b91c1c1f}.alert-tag-warning{color:#92400e;background:#b453091f}.compact-stat{gap:.4rem;padding:.9rem 1rem}.compact-stat p{display:none}.compact-stat .field-help{margin-top:-.15rem}.compact-task-item{gap:.7rem}.priority-task-item{gap:.6rem;padding:.85rem 1rem}.task-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;gap:.6rem;padding:.85rem 1rem;display:grid}.priority-task-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.scan-panel,.scan-panel-copy,.scan-video-frame,.qr-preview-card,.qr-settings-section,.qr-resolve-card{gap:1rem;display:grid}.scan-video-frame,.qr-preview-card{background:var(--color-surface-primary-soft);border:1px dashed color-mix(in srgb, var(--color-primary) 22%, transparent);border-radius:1rem;place-items:center;padding:1.5rem}.scan-video-frame{background:#111827;width:100%;min-height:min(68vw,24rem);padding:0;position:relative;overflow:hidden}.scan-video{object-fit:cover;background:#111827;width:100%;height:100%;min-height:min(68vw,24rem);display:block}.scan-video-overlay{pointer-events:none;z-index:2;place-items:center;display:grid;position:absolute;inset:0}.scan-video-box{aspect-ratio:1;border:3px solid #ffffffe0;border-radius:1.4rem;width:min(16rem,70vw);box-shadow:0 0 0 999px #0a122138}.scan-panel-copy{margin-top:1rem}.qr-preview-card{min-height:20rem}.qr-preview-image{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:1rem;width:min(18rem,100%)}.qr-preview-empty{color:var(--color-text-secondary);text-align:center}.qr-resolve-page{max-width:36rem;margin:0 auto;padding-top:12vh}.settings-choice-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.theme-option{border:1px solid var(--color-border);background:var(--color-surface-strong);min-height:3rem;color:var(--color-text-secondary);cursor:pointer;border-radius:1rem;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.theme-option-active{border-color:color-mix(in srgb, var(--color-primary) 32%, transparent);background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surface-strong));color:var(--color-primary);box-shadow:0 10px 20px color-mix(in srgb, var(--color-primary) 16%, transparent)}.theme-preview-note strong{color:var(--color-text)}.priority-tag{white-space:nowrap}.journal-status-row,.profile-grid,.profile-section,.profile-row{gap:.75rem;display:grid}.journal-status-tag.status-overdue{color:#991b1b;background:#b91c1c1f}.journal-status-tag.status-current{color:#92400e;background:#b453091f}.journal-status-tag.status-soon{color:#0f766e;background:#0e74901f}.profile-row{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:.9rem;padding:.8rem .95rem}.danger-section{border-color:#b91c1c2e}.button-danger{color:#fff7f7;background:#991b1b}.history-header{gap:.75rem;display:grid}.history-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.history-pagination-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.history-filter{min-width:12rem;min-height:2.7rem;padding-block:.35rem}.history-datetime{min-width:11rem}.correction-panel h3{margin:0}.correction-summary,.correction-history-list{gap:.65rem;display:grid}.correction-summary{border:1px solid color-mix(in srgb, var(--color-primary) 18%, transparent);background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));border-radius:.9rem;padding:.85rem 1rem}.correction-summary-header{color:var(--color-text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;font-size:.92rem;display:flex}.correction-summary-diff{color:var(--color-primary);font-weight:700;line-height:1.5}.assignments-panel,.assignment-grid,.assignment-item,.schedule-day-grid,.schedule-time-list,.users-grid,.user-card,.user-role-grid,.roles-grid,.role-card,.permission-grid{gap:.75rem;display:grid}.assignment-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.schedule-day-grid{grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr))}.users-grid{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}.roles-grid{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr))}.user-card-header{gap:.75rem;display:grid}.user-card h2{margin-top:.25rem;font-size:1.2rem}.user-role-list{flex-wrap:wrap;gap:.5rem;display:flex}.user-role-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.permission-grid{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.assignment-item{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.9rem;padding:.75rem}.schedule-day-item{padding:.5rem .65rem}.export-format-card{min-width:min(100%,14rem)}.export-format-card-active{background:#143d2e14;border-color:#143d2e52}.schedule-time-list{gap:.65rem}.schedule-time-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;display:grid}.schedule-cron-preview{min-height:6.5rem}.history-block h2{margin:0;font-size:1.1rem}.journal-card-header h2{margin-top:.25rem;font-size:1.25rem}.journal-card-header p{color:var(--color-text-secondary)}.field-grid{grid-template-columns:1fr}.field{gap:.5rem;display:grid}.field-wide{grid-column:1/-1}.field-label{gap:.35rem;font-weight:700;display:inline-flex}.field-label em{color:#b42318;font-style:normal}.field-help{color:var(--color-text-secondary);font-size:.88rem}.input{border:1px solid var(--color-border);background:var(--color-surface-strong);width:100%;min-height:3rem;color:var(--color-text);border-radius:.95rem;padding:.8rem .95rem;box-shadow:inset 0 1px 2px #0f172a0a}.input::placeholder{color:color-mix(in srgb, var(--color-text-secondary) 78%, transparent)}.input-textarea{resize:vertical;min-height:8rem}.checkbox-row{align-items:center;gap:.65rem;min-height:3rem;display:inline-flex}.checkbox-row input{width:1.15rem;height:1.15rem}.bottom-nav{width:calc(100% - 2rem);max-width:32rem;min-height:var(--bottom-nav-height);background:color-mix(in srgb, var(--color-surface-strong) 94%, transparent);border:1px solid var(--color-border);box-shadow:var(--color-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:1.25rem;justify-content:center;align-items:center;padding:.55rem .6rem;display:flex;position:fixed;bottom:1rem;left:50%;overflow:visible;transform:translate(-50%)}.bottom-nav-links{grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:.35rem;width:100%;display:grid}.bottom-nav-gap{min-height:2.8rem}.bottom-link{min-height:2.8rem;color:var(--color-text-secondary);text-align:center;border-radius:1rem;justify-content:center;align-items:center;font-size:.92rem;font-weight:700;line-height:1.15;display:inline-flex}.bottom-link-active{background:var(--color-surface-primary-soft);color:var(--color-primary)}.bottom-scan-link{background:var(--color-primary);width:3.7rem;height:3.7rem;color:var(--color-primary-contrast);border:4px solid var(--color-surface-strong);box-shadow:0 18px 36px color-mix(in srgb, var(--color-primary) 24%, transparent);border-radius:999px;justify-content:center;align-items:center;font-weight:800;display:inline-flex;position:absolute;top:-.9rem;left:50%;transform:translate(-50%)}.bottom-scan-link-active{background:var(--color-primary-strong)}.empty-state{text-align:left}.login-page{max-width:32rem;margin:0 auto;padding-top:10vh}.route-loading{color:#405065;place-items:center;min-height:100vh;font-weight:700;display:grid}@media (width>=768px){.app-shell{padding:1.5rem 1.5rem calc(var(--bottom-nav-offset) + .75rem)}.app-header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.header-actions{justify-content:flex-end}.page-header,.history-header{justify-content:space-between;align-items:flex-end;display:flex}.hero-card,.card{padding:1.4rem}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-stats-grid{grid-template-columns:repeat(3,minmax(5.5rem,6.8rem))}.status-strip{grid-template-columns:repeat(3,minmax(7rem,8.5rem));justify-content:start}.profile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.journal-card-header,.user-card-header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.correction-summary-header{align-items:center}.login-page{padding-top:14vh}}@media (width>=640px){.settings-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=768px){.settings-field-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.users-grid-compact{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));align-items:stretch}.user-card-compact{min-height:8.25rem;color:inherit;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s}.user-card-compact:hover{border-color:#143d2e3d;transform:translateY(-2px);box-shadow:0 18px 38px #143d2e1f}.user-avatar{color:#143d2e;background:#143d2e14;border-radius:999px;place-items:center;width:2.65rem;height:2.65rem;font-weight:800;display:grid}.user-card-compact-body{gap:.35rem;min-width:0;display:grid}.user-card-compact-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.user-card-compact-header h2{margin:0;font-size:1rem;line-height:1.35}.user-roles-line{color:#143d2e;margin:0;font-size:.92rem;font-weight:700;line-height:1.35}.sticky-actions{bottom:var(--bottom-nav-offset);z-index:20;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex;position:sticky}@media (width<=640px){.user-card-compact{min-height:auto}.sticky-actions{display:grid;position:static}}.user-card-email{overflow-wrap:anywhere;word-break:break-word;line-break:anywhere;max-width:100%}.user-card-compact,.user-card-compact-body,.hero-actions,.meta-list,.submit-row,.history-actions{min-width:0}.meta-list span{overflow-wrap:anywhere}@media (width<=489px){.app-shell{padding:.875rem .875rem calc(var(--bottom-nav-offset) + .5rem)}.page-title{font-size:clamp(1.55rem,7vw,2.2rem)}.settings-link-label{display:none}.header-actions{gap:.5rem}.header-actions .status-pill{flex:9rem}.page-header .hero-actions,.history-actions,.submit-row{width:100%}.page-header .hero-actions>*,.history-actions>*,.submit-row>*{flex:100%}.history-filter,.history-datetime{width:100%;min-width:0}.home-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch}.bottom-nav{border-radius:1.1rem;width:calc(100% - 1rem);padding:.45rem .5rem;bottom:.5rem}.bottom-nav-links{gap:.2rem}.bottom-nav-gap,.bottom-link{min-height:3rem}.bottom-link{padding-inline:.15rem;font-size:.78rem}.bottom-scan-link{border-width:3px;width:3.25rem;height:3.25rem;top:-.7rem}}:root{--color-text:#18251f;--color-text-secondary:#66756d;--color-border:#1c59381f;--color-border-strong:#1c593838;--color-surface:#fafcf9eb;--color-surface-strong:#fff;--color-surface-muted:#f0f6f1;--color-surface-soft:#1f7a4d0f;--color-surface-primary-soft:#dff3e8;--color-primary:#1f7a4d;--color-primary-strong:#155c39;--color-primary-contrast:#f8fff9;--color-warning:#b7791f;--color-danger:#b42318;--color-info:#2563eb;--color-shadow:0 18px 42px #113e2714;--color-bg-radial:#1f7a4d1f;--color-bg-start:#f4f7f4;--color-bg-mid:#f8fbf8;--color-bg-end:#eef5ef}:root[data-theme=dark]{--color-text:#edf7ef;--color-text-secondary:#b7c7bd;--color-border:#bedac529;--color-border-strong:#bedac547;--color-surface:#0e2117db;--color-surface-strong:#122b1ef0;--color-surface-muted:#1a3928e0;--color-surface-soft:#3cc97b1f;--color-surface-primary-soft:#3cc97b2e;--color-primary:#62c887;--color-primary-strong:#3bab69;--color-primary-contrast:#082015;--color-shadow:0 24px 54px #0000006b;--color-bg-radial:#62c8871f;--color-bg-start:#08130d;--color-bg-mid:#0d1c13;--color-bg-end:#142318}body{background:radial-gradient(circle at 16% 0%, var(--color-bg-radial), transparent 26rem), radial-gradient(circle at 90% 16%, #b7791f14, transparent 22rem), linear-gradient(180deg, var(--color-bg-start) 0%, var(--color-bg-mid) 42%, var(--color-bg-end) 100%);min-width:320px}.app-shell{grid-template-columns:18rem minmax(0,1fr);gap:1.1rem;max-width:92rem;padding:1rem;display:grid}.desktop-sidebar{color:#f5fff7;background:radial-gradient(circle at 20% 0,#6cc78440,#0000 18rem),linear-gradient(#0d432a 0%,#07341f 100%);border-radius:1.65rem;grid-template-rows:auto 1fr auto;gap:1.1rem;min-height:calc(100vh - 2rem);padding:1rem;display:grid;position:sticky;top:1rem;box-shadow:0 22px 50px #08341f40}.sidebar-brand,.mobile-brand{align-items:center;gap:.75rem;min-width:0;display:flex}.brand-mark{letter-spacing:-.08em;background:#ffffff1f;border:2px solid;border-radius:999px;flex:none;place-items:center;width:3rem;height:3rem;font-weight:900;display:inline-grid}.sidebar-brand span:last-child,.mobile-brand span:last-child{gap:.1rem;display:grid}.sidebar-brand strong,.mobile-brand strong{font-size:1.05rem;line-height:1.1}.sidebar-brand small,.mobile-brand small{color:#f5fff7b8;line-height:1.25}.sidebar-nav{align-content:start;gap:.35rem;display:grid}.sidebar-link{color:#f5fff7d1;border-radius:1rem;align-items:center;gap:.8rem;min-height:3rem;padding:.72rem .85rem;font-weight:800;display:flex;position:relative}.sidebar-link:hover,.sidebar-link-active{color:#fff;background:#ffffff24}.sidebar-icon{background:#ffffff1a;border-radius:.75rem;place-items:center;width:1.85rem;height:1.85rem;font-weight:900;display:inline-grid}.nav-badge,.bottom-badge{color:#fff;background:#f59e0b;border-radius:999px;place-items:center;min-width:1.25rem;height:1.25rem;margin-left:auto;padding:0 .35rem;font-size:.72rem;display:inline-grid}.sidebar-footer{color:#f5fff7db;background:#ffffff14;border-radius:1.1rem;gap:.25rem;padding:.85rem;display:grid}.sidebar-safe-icon{font-size:1.4rem}.sidebar-footer small{color:#f5fff79e}.app-workspace{align-content:start;min-width:0;display:grid}.app-header{z-index:20;border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface-strong) 88%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:1.45rem;justify-content:flex-end;align-items:center;gap:1rem;margin-bottom:1rem;padding:.7rem;display:flex;position:sticky;top:1rem;box-shadow:0 12px 30px #113e270f}.mobile-brand-row{margin-right:auto;display:none}.header-actions{justify-content:flex-end}.status-pill{border:1px solid #0000;gap:.45rem;min-height:2.3rem}.status-dot{background:currentColor;border-radius:999px;width:.55rem;height:.55rem;display:inline-block}.user-chip{border:1px solid var(--color-border);background:var(--color-surface-strong);border-radius:999px;align-items:center;gap:.6rem;min-height:2.65rem;padding:.35rem .7rem .35rem .35rem;display:inline-flex}.user-chip span:last-child{line-height:1.12;display:grid}.user-chip small{color:var(--color-text-secondary);font-size:.72rem}.user-avatar{width:2rem;height:2rem;color:var(--color-primary-contrast);background:var(--color-primary);border-radius:999px;place-items:center;font-size:.78rem;font-weight:900;display:inline-grid}.page{gap:1rem}.card{border-color:var(--color-border);border-radius:1.35rem}.button,.button-secondary{border-radius:1rem;min-height:3rem}.button:disabled,.button-secondary:disabled{opacity:.58;cursor:not-allowed;transform:none}.operator-hero{background:radial-gradient(circle at 100% 0,#1f7a4d21,#0000 16rem),linear-gradient(135deg,#fffffffa,#f7fcf7f5);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;padding:clamp(1rem,3vw,1.6rem);display:grid;position:relative;overflow:hidden}:root[data-theme=dark] .operator-hero{background:radial-gradient(circle at 100% 0,#62c8872e,#0000 16rem),linear-gradient(135deg,#122b1ef5,#0c1f14f5)}.operator-hero:after{content:"МСЗ";color:#1f7a4d0f;letter-spacing:-.12em;pointer-events:none;font-size:clamp(4rem,13vw,9rem);font-weight:1000;position:absolute;bottom:-1.3rem;right:1.4rem}.operator-hero-copy,.operator-hero-status{z-index:1;position:relative}.operator-hero-status{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;display:flex}.quick-qr-grid{grid-template-columns:1.25fr .75fr;gap:1rem;display:grid}.qr-primary-action,.qr-secondary-action{border:1px solid var(--color-border);min-height:5.25rem;box-shadow:var(--color-shadow);border-radius:1.35rem;align-items:center;gap:.9rem;padding:1rem;display:flex}.qr-primary-action{color:var(--color-primary-contrast);background:radial-gradient(circle at 100% 0%, #ffffff2e, transparent 12rem), linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-strong) 100%)}.qr-secondary-action{color:var(--color-primary);background:var(--color-surface-strong);justify-content:space-between}.qr-action-icon{background:#ffffff2e;border-radius:1.05rem;place-items:center;width:3.35rem;height:3.35rem;font-size:1.8rem;font-weight:900;display:inline-grid}.qr-primary-action span:nth-child(2){gap:.1rem;display:grid}.qr-primary-action strong,.qr-secondary-action strong{font-size:1.05rem}.qr-primary-action small{color:#ffffffc7}.home-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.stat-card{border:1px solid var(--color-border);background:var(--color-surface-strong);border-radius:1.2rem;gap:.35rem;min-height:7rem;padding:1rem;display:grid;box-shadow:0 12px 26px #113e270f}.stat-card span:first-child{border-radius:.8rem;place-items:center;width:2.15rem;height:2.15rem;font-weight:900;display:inline-grid}.stat-card strong{font-size:2rem;line-height:1}.stat-card small{color:var(--color-text-secondary);line-height:1.25}.stat-card-green span:first-child{color:#166534;background:#22c55e26}.stat-card-amber span:first-child{color:#b45309;background:#f59e0b29}.stat-card-red span:first-child{color:#b42318;background:#f43f5e1f}.section-heading-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.inline-link{color:var(--color-primary);font-weight:800}.home-work-panel{gap:1rem}.operator-task-row{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1.1rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:.9rem}.task-row:hover,.journal-card:hover,.document-item:hover,.qr-primary-action:hover,.qr-secondary-action:hover,.stat-card:hover{transform:translateY(-1px);box-shadow:0 18px 34px #113e271a}.task-icon{background:#3b82f61c;border-radius:1rem;place-items:center;width:3.2rem;height:3.2rem;font-size:1.45rem;display:inline-grid}.task-icon-overdue{background:#f43f5e1f}.task-icon-current{background:#22c55e24}.task-icon-soon{background:#f59e0b24}.task-main{gap:.2rem;min-width:0;display:grid}.task-main strong{overflow-wrap:anywhere}.task-main small{color:var(--color-text-secondary)}.priority-tag-current{color:#166534;background:#22c55e24}.priority-tag-soon{color:#92400e;background:#f59e0b29}.priority-tag-overdue{color:#b42318;background:#f43f5e1f}.offline-card{background:linear-gradient(135deg,#fff7ede6,#fffffff5);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid}:root[data-theme=dark] .offline-card{background:linear-gradient(135deg,#4a30148c,#122b1eeb)}.offline-card-icon{color:#0f766e;background:#0e74901c;border-radius:1rem;place-items:center;width:3.4rem;height:3.4rem;font-size:1.6rem;display:inline-grid}.offline-card p:not(.eyebrow){color:var(--color-text-secondary)}.compact-empty-state{background:var(--color-surface-muted);color:var(--color-text-secondary);border-radius:1rem;padding:1rem}.journal-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr))}.journal-card{align-content:start}.journal-card-header{gap:.75rem;display:grid}.journal-status-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.status-overdue,.journal-status-tag.status-overdue,.status-chip-overdue{color:#b42318;background:#f43f5e1f}.status-current,.journal-status-tag.status-current{color:#166534;background:#22c55e24}.status-soon,.journal-status-tag.status-soon{color:#92400e;background:#f59e0b29}.tag-archived{color:#475569;background:#64748b1f}.scan-panel{overflow:hidden}.scan-video-frame{background:linear-gradient(135deg,#0b2418,#0f3d28);border-radius:1.25rem}.scan-video-box{border-color:#ffffffe6;box-shadow:0 0 0 999px #03160d38}.input,.textarea,.select{border-color:var(--color-border);background:var(--color-surface-strong);border-radius:1rem}@media (width>=1024px){.bottom-nav{display:none}.app-shell{padding-bottom:1rem}}@media (width<=1023px){.app-shell{max-width:44rem;padding:.8rem .8rem calc(var(--bottom-nav-offset) + .75rem);display:block}.desktop-sidebar{display:none}.app-header{justify-content:space-between;padding:.55rem;top:.6rem}.mobile-brand-row{display:block}.mobile-brand small{color:var(--color-text-secondary)}.header-actions .status-pill:nth-of-type(2),.user-chip span:last-child,.notification-link{display:none}.operator-hero,.quick-qr-grid,.offline-card{grid-template-columns:1fr}.operator-hero-status{justify-content:flex-start}.qr-secondary-action{min-height:3.8rem}}@media (width<=620px){.home-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.stat-card{min-height:6.2rem;padding:.75rem}.stat-card strong{font-size:1.55rem}.stat-card small{font-size:.78rem}.operator-task-row{grid-template-columns:auto minmax(0,1fr)}.operator-task-row .tag{grid-column:2;justify-self:start}.offline-card .button{width:100%}.page-title{letter-spacing:-.035em}}.login-page{width:min(100%,32rem);margin-inline:auto;padding:max(2rem,8vh) clamp(1.25rem,4vw,2rem) clamp(1.25rem,4vw,2rem)}.login-page .page-header,.login-page .form-card{width:100%}.login-page .page-subtitle{max-width:100%}.bottom-nav{min-height:4.75rem;padding:.48rem .55rem calc(.48rem + env(safe-area-inset-bottom));border-radius:1.45rem}.bottom-nav-links{gap:.25rem}.bottom-link{letter-spacing:-.02em;border-radius:1rem;grid-template-rows:1.55rem auto;place-items:center;gap:.22rem;min-height:3.35rem;padding:.35rem .18rem .28rem;font-size:.68rem;font-weight:800;line-height:1.05;display:grid;position:relative}.bottom-link-icon,.bottom-scan-icon{place-items:center;width:1.55rem;height:1.55rem;display:inline-grid}.bottom-link-icon svg,.bottom-scan-icon svg,.sidebar-icon svg{width:1.28rem;height:1.28rem;display:block}.bottom-link-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.bottom-scan-link{border-width:4px;grid-template-rows:1.55rem auto;place-items:center;gap:.12rem;width:3.95rem;height:3.95rem;padding:.42rem .3rem .34rem;font-size:.7rem;line-height:1;display:grid;top:-1.05rem}.bottom-scan-link small{font-size:.68rem;font-weight:900;line-height:1;display:block}.bottom-badge{min-width:1.05rem;height:1.05rem;margin-left:0;padding:0 .25rem;font-size:.62rem;position:absolute;top:.24rem;right:.38rem}.sidebar-icon{flex:none}@media (width<=620px){.login-page{padding:1.25rem 1rem calc(var(--bottom-nav-offset) + 1rem);padding-top:max(1.35rem, env(safe-area-inset-top))}.login-page .page-title{font-size:clamp(2rem,9vw,2.55rem)}.login-page .page-subtitle{font-size:.98rem}.bottom-nav{width:auto;max-width:none;bottom:.55rem;left:.5rem;right:.5rem;transform:none}}@media (width<=380px){.bottom-link{font-size:.62rem}.bottom-link-icon svg,.bottom-scan-icon svg{width:1.15rem;height:1.15rem}}
