:root{--lf-steel-dark: #264060;--lf-steel-dark-80: #516680;--lf-steel-dark-60: #7d8ca0;--lf-steel-dark-40: #a8b3bf;--lf-steel-dark-20: #d4d9df;--lf-steel: #3d5a7c;--lf-steel-80: #647b96;--lf-steel-60: #8b9cb0;--lf-steel-40: #b1bdcb;--lf-steel-20: #d8dee5;--lf-steel-light: #6f8ba6;--lf-steel-light-80: #8ca2b8;--lf-steel-light-60: #a9b9ca;--lf-steel-light-40: #c5d1db;--lf-steel-light-20: #e2e8ed;--lf-forest: #315c4f;--lf-forest-80: #5a7d72;--lf-forest-60: #839d95;--lf-forest-40: #adbeb9;--lf-forest-20: #d6dedc;--lf-moss: #4a7a5b;--lf-moss-80: #6e957c;--lf-moss-60: #92af9d;--lf-moss-40: #b7cabd;--lf-moss-20: #dbe4de;--lf-sage: #6b9e8a;--lf-sage-80: #89b1a1;--lf-sage-60: #a6c5b9;--lf-sage-40: #c4d8d0;--lf-sage-20: #e1ece8;--lf-amber-deep: #b4850e;--lf-amber-deep-80: #c39d3e;--lf-amber-deep-60: #d2b66e;--lf-amber-deep-40: #e1ce9f;--lf-amber-deep-20: #f0e7cf;--lf-amber: #d2a413;--lf-amber-80: #dbb642;--lf-amber-60: #e4c871;--lf-amber-40: #eddba1;--lf-amber-20: #f6edd0;--lf-brown: #7b5b33;--lf-brown-80: #957c5c;--lf-brown-60: #b09d85;--lf-brown-40: #cabdad;--lf-brown-20: #e5ded6;--lf-sand: #bea578;--lf-sand-80: #cbb793;--lf-sand-60: #d8c9ae;--lf-sand-40: #e5dbc9;--lf-sand-20: #f2ede4;--lf-bordeaux: #82202f;--lf-bordeaux-80: #9b4d59;--lf-bordeaux-60: #b47982;--lf-bordeaux-40: #cda6ac;--lf-bordeaux-20: #e6d2d5;--lf-font: #343434;--lf-font-80: #5d5d5d;--lf-font-60: #858585;--lf-font-40: #aeaeae;--lf-font-20: #d6d6d6;--lf-page: #f5f6f8;--lf-page-80: #f7f8f9;--lf-page-60: #f9fafb;--lf-page-40: #fbfbfc;--lf-page-20: #fdfdfe;--lf-muted: #e3e5e8;--lf-muted-80: #e9eaed;--lf-muted-60: #eeeff1;--lf-muted-40: #f4f5f6;--lf-muted-20: #f9fafa;--lf-gold: #ffc000;--lf-logo-blue: #365997}:root{--lf-font-display: "Aptos Display", Aptos, "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--lf-font-black: "Aptos Black", "Aptos Display", Aptos, "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--lf-font-ui: Aptos, "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif}:root{--lf-font-mono: "Aptos Mono", "Cascadia Mono", Consolas, "Courier New", monospace;--lf-page-size: 28px;--lf-page-line: 36px;--lf-section-size: 20px;--lf-section-line: 26px;--lf-item-size: 16px;--lf-item-line: 22px;--lf-body-size: 14px;--lf-body-line: 20px;--lf-meta-size: 12px;--lf-meta-line: 16px}h1{font-family:var(--lf-font-display);font-size:var(--lf-page-size);line-height:var(--lf-page-line);font-weight:600}h2{font-family:var(--lf-font-display);font-size:var(--lf-section-size);line-height:var(--lf-section-line);font-weight:600}h3{font-family:var(--lf-font-ui);font-size:var(--lf-item-size);line-height:var(--lf-item-line);font-weight:600}code,.lf-id{font-family:var(--lf-font-mono);font-weight:600;font-size:1em}.lf-item{font-size:var(--lf-item-size);line-height:var(--lf-item-line);font-weight:600}.lf-body{font-size:var(--lf-body-size);line-height:var(--lf-body-line)}.lf-meta{font-size:var(--lf-meta-size);line-height:var(--lf-meta-line)}:root{--surface-page: var(--lf-page);--surface-card: #ffffff;--surface-survey: #fff9c4;--surface-nav: var(--lf-steel-dark);--surface-raised: var(--lf-muted-40);--text-primary: var(--lf-font);--text-secondary: var(--lf-font-80);--text-muted: var(--lf-font-60);--text-on-dark: #ffffff;--text-on-dark-muted: var(--lf-steel-light-40);--accent: var(--lf-steel);--accent-strong: var(--lf-steel-dark);--accent-soft: var(--lf-steel-20);--focus-ring: var(--lf-steel-light);--state-ok: var(--lf-forest);--state-ok-soft: var(--lf-moss-20);--state-warn: var(--lf-amber-deep);--state-warn-soft: var(--lf-amber-20);--state-danger: var(--lf-bordeaux);--state-danger-soft: var(--lf-bordeaux-20);--border: var(--lf-muted);--border-strong: var(--lf-font-40);--radius-pill: 3px;--radius: 4px;--radius-card: 8px;--surface-nav-active: color-mix(in srgb, #fff 14%, var(--lf-steel-dark));--surface-nav-hover: color-mix(in srgb, #fff 8%, var(--lf-steel-dark));--border-nav: color-mix(in srgb, #fff 14%, transparent);--text-on-dark-strong: #fff;--shadow-card: 0 1px 2px rgba(38, 64, 96, .06), 0 1px 3px rgba(38, 64, 96, .1)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--lf-font-ui);font-size:var(--lf-body-size);line-height:var(--lf-body-line);color:var(--text-primary);background:var(--surface-page)}h1,h2,h3{letter-spacing:-.01em;color:var(--text-primary);margin:0 0 .5rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.app{display:flex;min-height:100%}.nav{width:254px;flex-shrink:0;background:var(--surface-nav);color:var(--text-on-dark);display:flex;flex-direction:column}.nav-brand{display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1rem .75rem;text-decoration:none}.nav-brand:hover{text-decoration:none}.nav-brand img{height:26px;width:auto;align-self:flex-start}.nav-brand span{font-size:var(--lf-meta-size);line-height:var(--lf-meta-line);font-weight:500;letter-spacing:.03em;color:color-mix(in srgb,#fff 70%,transparent)}.nav-scroll{flex:1;padding:.5rem .6rem}.nav-link{display:flex;align-items:center;gap:.6rem;padding:.4rem .6rem;margin-bottom:2px;border-radius:var(--radius);color:var(--text-on-dark);text-decoration:none;font-size:var(--lf-body-size);line-height:var(--lf-body-line)}.nav-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-link:hover{background:var(--surface-nav-hover);color:var(--text-on-dark-strong);text-decoration:none}.nav-link.active{background:var(--surface-nav-active);color:var(--text-on-dark-strong);font-weight:600}.nav-foot{border-top:1px solid var(--border-nav);padding:.75rem 1rem;display:flex;flex-direction:column;gap:.15rem;font-size:var(--lf-meta-size);line-height:var(--lf-meta-line);color:var(--text-on-dark-muted)}.nav-foot .who{color:var(--text-on-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topband{height:44px;flex-shrink:0;display:flex;align-items:center;gap:1rem;padding:0 1rem 0 1.5rem;background:var(--surface-card);border-bottom:1px solid var(--border)}.topband .trail{display:flex;align-items:center;gap:.4rem;min-width:0;font-size:var(--lf-meta-size);line-height:var(--lf-meta-line);color:var(--text-secondary)}.user-menu{margin-left:auto;position:relative}.user-menu>button{display:flex;align-items:center;gap:.5rem;font-size:var(--lf-meta-size);line-height:var(--lf-meta-line);color:var(--text-secondary);background:none;border:1px solid transparent;border-radius:var(--radius);padding:.25rem .4rem;cursor:pointer}.user-menu>button:hover{background:var(--lf-muted-60)}.avatar{width:26px;height:26px;border-radius:999px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);font-size:var(--lf-meta-size);line-height:var(--lf-meta-line);font-weight:700}.user-menu [role=menu]{position:absolute;right:0;top:calc(100% + 4px);z-index:10;min-width:12rem;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:0 6px 20px #26406024;padding:.35rem}.user-menu [role=menuitem]{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;background:none;border:none;border-radius:var(--radius);padding:.4rem .6rem;cursor:pointer;color:var(--text-primary)}.user-menu [role=menuitem]:hover{background:var(--lf-muted-60)}.auth-page{min-height:100%;display:grid;place-items:center;padding:1rem;background:var(--surface-nav)}.auth-card{width:100%;max-width:380px}.auth-card .logo{height:30px;width:auto;display:block;margin-bottom:1rem}.card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:1rem 1.25rem}.card.survey-card{background:var(--surface-survey)}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:var(--radius);border:1px solid transparent;background:var(--accent);color:#fff;cursor:pointer}.btn:hover{background:var(--accent-strong)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{background:var(--surface-card);color:var(--accent-strong);border-color:var(--border-strong)}.btn-secondary:hover{background:var(--lf-muted-40)}.btn-link{background:none;border:none;padding:0;color:var(--accent);cursor:pointer}.btn-link:hover{text-decoration:underline}.btn-danger{background:var(--state-danger)}.btn-danger:hover{background:#6d1a27}.field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.field label{font-weight:600;color:var(--text-secondary);font-size:var(--lf-meta-size);line-height:var(--lf-meta-line)}.field input,.field select{padding:.45rem .6rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:#fff}.badge{display:inline-block;padding:1px 5px;border-radius:var(--radius-pill);font-size:var(--lf-meta-size);line-height:var(--lf-meta-line);font-weight:600;vertical-align:middle}@supports (text-box: trim-both cap alphabetic){.badge{text-box:trim-both cap alphabetic;padding:4px 5px 6px}}.badge-active{background:var(--lf-moss-20);color:var(--lf-forest)}.badge-archived{background:var(--lf-muted-60);color:var(--lf-font-80)}.badge-role{background:var(--lf-steel-20);color:var(--lf-steel-dark)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:var(--lf-meta-size);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:.4rem .75rem;border-bottom:1px solid var(--border-strong)}.table td{padding:.55rem .75rem;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.table tbody tr:hover{background:var(--lf-page-60)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.empty-state h3{color:var(--text-secondary)}.error-banner{background:var(--state-danger-soft);color:var(--state-danger);border:1px solid var(--lf-bordeaux-40);border-radius:var(--radius-card);padding:.6rem .9rem;margin-bottom:.75rem}.item-card{display:flex;flex-direction:column;gap:.25rem;background:var(--surface-card);border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius-card);padding:.6rem .8rem;margin-top:.6rem}.item-card-head{display:flex;gap:.5rem;align-items:baseline;flex-wrap:wrap}.item-card-id,.item-card-title{font-size:var(--lf-item-size);line-height:var(--lf-item-line);font-weight:600;color:var(--text-primary)}.item-card-title{flex:1 1 12rem}.item-card-facts{font-size:var(--lf-meta-size);line-height:var(--lf-meta-line);color:var(--text-muted)}.item-card-note{color:var(--text-secondary)}.report h2{margin-top:0}.report .card{margin-top:1rem}.report-watermark{border:2px solid var(--state-warn);color:var(--state-warn);background:var(--state-warn-soft);border-radius:var(--radius-card);padding:.5rem .8rem;font-weight:600;margin-bottom:1rem}.report-stale{border:2px solid var(--state-danger);color:var(--state-danger);background:var(--state-danger-soft);border-radius:var(--radius-card);padding:.5rem .8rem;margin-top:1rem}.report-grid{display:grid;grid-template-columns:max-content 1fr;gap:.3rem 1.25rem;margin:0}.report-grid dt{color:var(--text-muted)}.report-grid dd{margin:0}.report-grid dd.mono{font-family:var(--lf-font-mono);overflow-wrap:anywhere}.report-table{border-collapse:collapse;width:100%;font-size:var(--lf-body-size);line-height:var(--lf-body-line)}.report-table th{text-align:left;color:var(--text-muted);font-weight:500;padding:.3rem .5rem;white-space:nowrap}.report-table td{padding:.3rem .5rem;border-top:1px solid var(--border);vertical-align:top}.report-glance{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.6rem 1rem;margin:.5rem 0 1rem}.report-glance-item{display:flex;align-items:center;gap:.6rem;break-inside:avoid}.field-label{font-size:var(--lf-meta-size);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.report-footer{margin-top:1.25rem;padding-top:.75rem;border-top:2px solid var(--border);font-size:var(--lf-body-size);line-height:var(--lf-body-line)}@media print{nav,header,.no-print{display:none!important}.harvey,.area-icon{print-color-adjust:exact;-webkit-print-color-adjust:exact}main{padding:0!important;max-width:none!important}body{background:#fff}.card{box-shadow:none!important;border:1px solid var(--border);break-inside:avoid}.report-table tr{break-inside:avoid}a{text-decoration:none;color:inherit}}
