:root{--mch-cream-bg: #faf7f1;--mch-cream: #f5e6d3;--mch-cream-soft: #faf1e5;--mch-beige-border: #e4ddd0;--mch-beige-strong: #d3c9b6;--mch-teal: #5a8a7f;--mch-teal-dark: #1b4d47;--mch-teal-light: #e8f1ee;--mch-teal-soft: #c7dbd5;--mch-text: #2b3a38;--mch-text-muted: #6b7a78;--mch-text-soft: #4a5957;--mch-error: #b8423a;--mch-error-bg: #f4d9d5;--mch-error-border: #e5a79f;--mch-success: #4a8c5f;--mch-success-bg: #dfeee3;--mch-success-border:#a3cdb0;--mch-warning: #c28b3a;--mch-warning-bg: #f7e4c8;--mch-warning-border:#e5c38a;--color-bg: var(--mch-cream-bg);--color-surface: #ffffff;--color-surface-alt: var(--mch-cream-soft);--color-subtle: var(--mch-cream);--color-border: var(--mch-beige-border);--color-border-strong: var(--mch-beige-strong);--color-text: var(--mch-text);--color-text-muted: var(--mch-text-muted);--color-text-soft: var(--mch-text-soft);--color-primary: var(--mch-teal-dark);--color-primary-hover: #0f3b36;--color-primary-bg: var(--mch-teal-light);--color-primary-soft: var(--mch-teal-soft);--color-sidebar: var(--mch-teal-dark);--color-sidebar-hover: #133b36;--color-sidebar-active:#1e5953;--color-error: var(--mch-error);--color-error-bg: var(--mch-error-bg);--color-success: var(--mch-success);--color-success-bg: var(--mch-success-bg);--color-warning: var(--mch-warning);--color-warning-bg: var(--mch-warning-bg);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-serif: var(--font-sans);--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--shadow-xs: 0 1px 2px rgba(27, 77, 71, .04);--shadow-sm: 0 1px 3px rgba(27, 77, 71, .07);--shadow-md: 0 4px 12px rgba(27, 77, 71, .09);--t-fast: .12s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);font-size:14px;line-height:1.5;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:600;color:var(--mch-teal-dark);letter-spacing:-.015em;line-height:1.3;margin:0 0 .75rem}h1{font-size:1.25rem;letter-spacing:-.02em}h2{font-size:1rem}h3{font-size:.875rem}h4{font-size:.8125rem}p{margin:0 0 .75rem;color:var(--color-text)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.475rem .875rem;border-radius:var(--radius);border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;cursor:pointer;font-size:.8125rem;font-weight:500;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast);white-space:nowrap}.btn:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn:focus-visible{outline:2px solid var(--mch-teal);outline-offset:2px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:var(--color-surface);color:var(--mch-teal-dark);border-color:var(--color-border-strong)}.btn.secondary:hover{background:var(--mch-teal-light);border-color:var(--mch-teal-soft)}.btn.danger,.btn.secondary.danger{background:var(--color-surface);color:var(--color-error);border-color:var(--color-border-strong)}.btn.danger:hover,.btn.secondary.danger:hover{background:var(--color-error-bg);border-color:var(--mch-error-border)}.btn.small{padding:.3rem .65rem;font-size:.75rem}input[type=text],input[type=password],input[type=tel],input[type=email],input[type=number],input[type=datetime-local],input[type=date],select,textarea{width:100%;padding:.475rem .7rem;border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:.8125rem;transition:border-color var(--t-fast),box-shadow var(--t-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--mch-teal);box-shadow:0 0 0 3px #5a8a7f2e}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}label{display:block;font-size:.75rem;font-weight:500;color:var(--color-text-soft);margin-bottom:.3rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem}.layout{display:grid;grid-template-columns:232px 1fr;min-height:100vh}@media (max-width: 800px){.layout{grid-template-columns:1fr}.sidebar{position:static!important;height:auto!important}}.sidebar{background:var(--color-sidebar);color:#f5e6d3;padding:1rem .75rem;display:flex;flex-direction:column;gap:.5rem;position:sticky;top:0;height:100vh;overflow:hidden}.sidebar-header{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem .9rem;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:.25rem;flex-shrink:0}.sidebar-header img{width:32px;height:32px;object-fit:contain}.sidebar-header .title{font-family:var(--font-sans);font-size:.8125rem;font-weight:600;line-height:1.2;letter-spacing:-.01em;color:#f5e6d3}.sidebar-header .sub{font-size:.6875rem;color:#f5e6d399;margin-top:.15rem;letter-spacing:.03em}.sidebar nav{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-thumb{background:#f5e6d326;border-radius:3px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav a{color:#f5e6d3c7;padding:.42rem .65rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:400;letter-spacing:-.005em;transition:background var(--t-fast),color var(--t-fast)}.sidebar nav a:hover{background:var(--color-sidebar-hover);color:#f5e6d3;text-decoration:none}.sidebar nav a.active{background:var(--color-sidebar-active);color:#fff;font-weight:500}.sidebar .nav-section{font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;color:#f5e6d366;padding:.75rem .65rem .2rem;margin-top:.15rem;font-weight:600}.sidebar .nav-section:first-child{padding-top:.3rem}.sidebar-footer{display:flex;flex-direction:column;gap:.4rem;padding-top:.8rem;margin-top:.3rem;border-top:1px solid rgba(255,255,255,.12);flex-shrink:0}.sidebar-footer select{background:#ffffff0f;color:#f5e6d3;border:1px solid rgba(245,230,211,.25);font-size:.75rem;padding:.35rem .5rem}.sidebar-footer select option{color:var(--mch-text);background:#fff}.sidebar-footer select:focus{border-color:#f5e6d38c;box-shadow:0 0 0 3px #f5e6d314}.sidebar-footer .btn.secondary{background:transparent!important;color:#f5e6d3!important;border-color:#f5e6d34d!important}.sidebar-footer .btn.secondary:hover{background:#f5e6d314!important;border-color:#f5e6d380!important}.nav-agent{position:relative}.sidebar nav a.nav-emergency{color:#ffb4ab;border:1px solid rgba(255,180,171,.28);margin-top:6px}.sidebar nav a.nav-emergency:hover{background:#b3261e59;color:#fff;border-color:#ffb4ab99}.sidebar nav a.nav-emergency.active{background:#b3261e;color:#fff;border-color:#b3261e}.main{padding:1.75rem 2rem;max-width:1240px;width:100%}@media (max-width: 600px){.main{padding:1rem}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap}.page-header h1{margin:0}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1rem}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.875rem 1rem;transition:border-color var(--t-fast);color:var(--color-text)}.stat-card .label{font-size:.6875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:500;margin-bottom:.3rem}.stat-card .value{font-family:var(--font-sans);font-size:1.375rem;font-weight:600;color:var(--mch-teal-dark);letter-spacing:-.02em;line-height:1.1}.stat-card[href]:hover{border-color:var(--color-border-strong);text-decoration:none}.stat-card.stat-good .value{color:var(--color-success)}.stat-card.stat-danger .value{color:var(--color-error)}.stat-card.stat-warn .value{color:var(--color-warning)}table{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;font-size:.8125rem}th,td{padding:.55rem .8rem;text-align:left;border-bottom:1px solid var(--color-border);vertical-align:middle}th{background:var(--color-subtle);font-weight:600;color:var(--mch-teal-dark);font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em}tr:last-child td{border-bottom:none}tr:hover td{background:var(--mch-cream-soft)}.status-badge{display:inline-block;padding:.15rem .45rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:500;background:var(--color-subtle);color:var(--color-text-soft);border:1px solid var(--color-border);letter-spacing:0}.status-badge.status-valid,.status-badge.status-active,.status-badge.status-reconciled{background:var(--color-success-bg);color:var(--color-success);border-color:var(--mch-success-border)}.status-badge.status-revoked,.status-badge.status-failed{background:var(--color-error-bg);color:var(--color-error);border-color:var(--mch-error-border)}.status-badge.status-expired,.status-badge.status-closed,.status-badge.status-archived,.status-badge.status-resolved,.status-badge.status-ended{background:var(--color-subtle);color:var(--color-text-muted);border-color:var(--color-border)}.status-badge.status-open,.status-badge.status-pending,.status-badge.status-posted{background:var(--color-primary-bg);color:var(--mch-teal-dark);border-color:var(--color-primary-soft)}.pri-badge{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--color-border)}.pri-low{background:var(--color-subtle);color:var(--color-text-muted);border-color:var(--color-border)}.pri-medium{background:var(--color-primary-bg);color:var(--mch-teal-dark);border-color:var(--color-primary-soft)}.pri-high{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--mch-warning-border)}.pri-urgent{background:var(--color-error-bg);color:var(--color-error);border-color:var(--mch-error-border)}.badge-dim{font-size:.75rem;color:var(--color-text-muted);font-weight:400}.badge-preferred{display:inline-block;margin-left:.35rem;padding:.05rem .4rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:500;background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--mch-warning-border);text-transform:uppercase;letter-spacing:.04em}.chip{display:inline-block;margin:.1rem .25rem .1rem 0;padding:.15rem .5rem;border-radius:var(--radius-sm);background:var(--color-subtle);color:var(--color-text-soft);font-size:.75rem;font-weight:500;border:1px solid var(--color-border)}.chip-good{background:var(--color-success-bg);color:var(--color-success);border-color:var(--mch-success-border)}.chip-warn{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--mch-warning-border)}.toolbar{display:flex;gap:.5rem;align-items:center;margin-bottom:.75rem;flex-wrap:wrap}.toolbar select{width:auto}.empty{text-align:center;padding:2rem 1rem;color:var(--color-text-muted);font-size:.875rem}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:var(--color-bg)}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;width:100%;max-width:380px;text-align:center;box-shadow:var(--shadow-sm)}.login-card img{width:48px;height:48px;margin:0 auto 1rem;display:block}.login-card h1{font-size:1.125rem;margin-bottom:.25rem}.login-card .sub{color:var(--color-text-muted);font-size:.8125rem;margin-bottom:1.5rem}.login-card form{text-align:left;display:flex;flex-direction:column;gap:.75rem}.login-card .btn{width:100%;margin-top:.5rem}.login-error{background:var(--color-error-bg);color:var(--color-error);padding:.5rem .7rem;border-radius:var(--radius);font-size:.8125rem;border:1px solid var(--mch-error-border)}.powered-by-light{font-size:.6875rem;color:var(--color-text-muted);text-align:center;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--color-border);letter-spacing:.02em}.powered-by-light strong{color:var(--mch-teal-dark);font-weight:600}.powered-by{font-size:.6875rem;color:#f5e6d399;text-align:center;padding-top:.25rem;letter-spacing:.02em}.powered-by strong{color:#f5e6d3;font-weight:600}.pass-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:var(--color-bg)}.pass-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;max-width:440px;width:100%;box-shadow:var(--shadow-sm)}.pass-card .brand{display:flex;align-items:center;gap:.7rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border);margin-bottom:1.25rem}.pass-card .brand img{width:36px;height:36px}.pass-card .brand .name{font-weight:600;font-size:.9375rem;color:var(--mch-teal-dark)}.pass-status{display:inline-block;padding:.3rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;letter-spacing:.06em;margin-bottom:1.25rem;text-transform:uppercase}.pass-status.valid{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--mch-success-border)}.pass-status.revoked{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--mch-error-border)}.pass-status.expired{background:var(--color-subtle);color:var(--color-text-muted);border:1px solid var(--color-border)}.pass-row{display:flex;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid var(--color-border);font-size:.8125rem}.pass-row:last-child{border-bottom:none}.pass-row .k{color:var(--color-text-muted);font-weight:500}.pass-row .v{color:var(--color-text);text-align:right;font-weight:500}.pass-note{margin-top:1rem;padding:.65rem .8rem;background:var(--color-primary-bg);border:1px solid var(--color-primary-soft);border-radius:var(--radius);font-size:.75rem;color:var(--mch-teal-dark)}.event-log{list-style:none;padding:0;margin:0}.event-log li{border-left:2px solid var(--color-border);padding:.5rem 0 .5rem .85rem;margin-left:.3rem;font-size:.8125rem}.event-log .ev-time{color:var(--color-text-muted);font-size:.6875rem}.event-log .ev-type{font-weight:600;color:var(--mch-teal-dark);font-size:.8125rem;margin-top:.1rem}.event-log .ev-actor{color:var(--color-text-muted);font-size:.6875rem}.event-log .ev-body{margin-top:.3rem;white-space:pre-wrap;color:var(--color-text-soft)}.ticket-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b4d4773;display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem}.ticket-modal-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:1.5rem;max-width:640px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.ticket-meta{display:flex;gap:.4rem;flex-wrap:wrap;margin:.5rem 0 1rem;align-items:center}.conv-layout{display:grid;grid-template-columns:320px 1fr;gap:.75rem;min-height:60vh}@media (max-width: 900px){.conv-layout{grid-template-columns:1fr}}.conv-list{overflow-y:auto;max-height:75vh;padding:.4rem}.conv-item{padding:.65rem .75rem;border-radius:var(--radius);cursor:pointer;border:1px solid transparent;margin-bottom:2px;transition:background var(--t-fast)}.conv-item:hover{background:var(--color-subtle)}.conv-item.active{background:var(--color-primary-bg);border-color:var(--color-primary-soft)}.conv-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.8125rem}.conv-preview{font-size:.75rem;color:var(--color-text-muted);margin-top:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-list{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0;max-height:55vh;overflow-y:auto;padding-right:.25rem}.msg{padding:.55rem .8rem;border-radius:var(--radius-lg);max-width:85%;font-size:.8125rem}.msg-meta{font-size:.6875rem;color:var(--color-text-muted);margin-bottom:.25rem}.msg-body{white-space:pre-wrap}.msg-admin{background:var(--mch-teal-dark);color:#fff;align-self:flex-end;border-top-right-radius:var(--radius-sm)}.msg-admin .msg-meta{color:#ffffffbf}.msg-agent{background:var(--color-primary-bg);color:var(--mch-teal-dark);align-self:flex-end;border:1px solid var(--color-primary-soft);border-top-right-radius:var(--radius-sm)}.msg-participant{background:var(--color-subtle);color:var(--color-text);align-self:flex-start;border-top-left-radius:var(--radius-sm)}.msg-system{background:transparent;border:1px dashed var(--color-border);font-size:.75rem;color:var(--color-text-muted);align-self:center}.msg-compose{display:flex;gap:.5rem;align-items:flex-end}.msg-compose textarea{flex:1;min-height:42px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem}.audit-stats{font-size:.8125rem;padding:.8rem 1rem}code,pre{font-family:var(--font-mono);font-size:.8125em;background:var(--color-subtle);color:var(--color-text);padding:.08rem .35rem;border-radius:var(--radius-sm);border:1px solid var(--color-border)}.agent-card{background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--mch-teal)}.agent-suggestion{background:var(--color-primary-bg);border:1px solid var(--color-primary-soft);border-left:3px solid var(--mch-teal);border-radius:var(--radius);padding:.8rem 1rem;margin:1rem 0}.agent-suggestion-empty{background:var(--color-subtle);border:1px solid var(--color-border);border-left:3px solid var(--color-border-strong)}.agent-head{font-size:.8125rem;font-weight:600;margin-bottom:.5rem;color:var(--mch-teal-dark);display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.agent-decision{display:flex;gap:.3rem;flex-wrap:wrap;margin-bottom:.5rem}.agent-reasoning{font-size:.8125rem;color:var(--color-text-soft);background:var(--color-surface);padding:.55rem .75rem;border-radius:var(--radius);border:1px solid var(--color-border);line-height:1.5}.about-page{max-width:920px}.estatia-hero{background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--mch-teal);padding:1.75rem 2rem;margin-bottom:1.5rem;border-radius:var(--radius)}.estatia-hero .eyebrow{font-size:.6875rem;letter-spacing:.15em;text-transform:uppercase;color:var(--mch-teal-dark);font-weight:600;margin-bottom:.5rem}.estatia-hero h2{font-size:1.375rem;letter-spacing:-.02em;margin-bottom:.85rem;max-width:40ch}.estatia-hero .lead{font-size:.9375rem;line-height:1.6;color:var(--color-text-soft);margin:0 0 .85rem;max-width:66ch}.estatia-hero .econcierge-note{margin-top:1.25rem;padding:.7rem .9rem;background:var(--color-subtle);border-left:2px solid var(--mch-teal);border-radius:var(--radius-sm);font-size:.8125rem;color:var(--color-text)}.estatia-section{margin-bottom:1.75rem}.estatia-section h2{font-size:.8125rem;margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-border);color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.plain-list{list-style:none;padding:0;margin:0}.plain-list li{padding:.5rem 0 .5rem 1.25rem;position:relative;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:.875rem}.plain-list li:last-child{border-bottom:none}.plain-list li:before{content:"";position:absolute;left:0;top:.95rem;width:4px;height:4px;border-radius:50%;background:var(--mch-teal)}.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.6rem}.module-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.9rem 1rem;transition:border-color var(--t-fast)}.module-card:hover{border-color:var(--color-border-strong)}.module-card h3{font-size:.875rem;margin-bottom:.3rem;color:var(--mch-teal-dark)}.module-card p{margin:0;font-size:.8125rem;color:var(--color-text-muted);line-height:1.5}.module-card.highlight{border-left:2px solid var(--mch-teal)}.diff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.diff-card{display:flex;gap:.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.9rem 1rem}.diff-card .diff-n{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-primary-bg);color:var(--mch-teal-dark);border:1px solid var(--color-primary-soft);border-radius:var(--radius-sm);font-weight:600;font-size:.75rem}.diff-card h3{font-size:.875rem;margin-bottom:.3rem}.diff-card p{margin:0;font-size:.8125rem;color:var(--color-text-muted);line-height:1.5}.tech-stack .stack-line{display:flex;flex-wrap:wrap;gap:.35rem;margin:0}.tech-stack .stack-line span{background:var(--color-subtle);color:var(--mch-teal-dark);padding:.25rem .6rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;border:1px solid var(--color-border);font-family:var(--font-mono)}label input[type=checkbox]{width:auto;margin-right:.4rem;vertical-align:middle;accent-color:var(--mch-teal)}.hr{height:1px;background:var(--color-border);margin:1rem 0;border:none}.detail-row>td{background:var(--color-surface-alt, #f7f8f6);border-top:none!important;padding:0!important}.detail-panel{padding:1rem 1.2rem;border-left:3px solid var(--mch-teal, #5a8b87);background:var(--color-surface-alt, #f7f8f6)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem 1.5rem}.detail-grid>div{display:flex;flex-direction:column;gap:.15rem}.detail-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-muted, #7a8a88);font-weight:600}tr:hover>td{background:#5a8b870d}.detail-row:hover>td{background:var(--color-surface-alt, #f7f8f6)}.modal-overlay,.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b4d4773;display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem;overflow-y:auto;animation:modal-fade .26s ease both}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.modal{background:var(--color-surface);border-radius:var(--radius-lg);padding:1.5rem;max-width:540px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-md);border:1px solid var(--color-border);margin:auto;animation:modal-rise .3s cubic-bezier(.22,1,.36,1) both}@keyframes modal-rise{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.modal-overlay,.modal-backdrop,.modal{animation:none}}.modal h2{margin:0 0 1rem;color:var(--mch-teal-dark)}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.3rem;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{width:100%;box-sizing:border-box;padding:.4rem .65rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.875rem;background:var(--color-surface);color:var(--mch-text)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--mch-teal);border-color:var(--mch-teal)}.chip.good{background:var(--color-success-bg);color:var(--color-success);border-color:var(--mch-success-border)}.chip.warn{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--mch-warning-border)}.chip.bad{background:var(--color-error-bg);color:var(--color-error);border-color:var(--mch-error-border)}.muted-small{font-size:.78rem;color:var(--color-text-muted);margin-top:2px;line-height:1.4}.muted{color:var(--color-text-muted)}.row-bad td{background:var(--color-error-bg)}.form-error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--mch-error-border);border-radius:8px;padding:.6rem .8rem;margin-bottom:.8rem;font-size:.88rem}.compliance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:16px}.compliance-stat{padding:1rem 1.1rem}.compliance-stat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:6px}.compliance-stat-value{font-size:30px;font-weight:600;color:var(--mch-teal-dark);line-height:1.1}.compliance-stat-note{font-size:.78rem;margin-top:8px;color:var(--color-text-muted)}.compliance-stat-note.good{color:var(--color-success)}.compliance-stat-note.bad{color:var(--color-error)}.kv-table{width:100%}.kv-table th{text-align:left;width:200px;font-weight:500;color:var(--color-text-muted);vertical-align:top;padding:6px 12px 6px 0}.kv-table td{padding:6px 0}.segmented{display:inline-flex;border:1px solid var(--color-border-strong);border-radius:9px;overflow:hidden;background:var(--color-surface)}.segmented button{border:0;background:transparent;padding:.5rem .9rem;font-size:.85rem;cursor:pointer;color:var(--color-text-soft);border-right:1px solid var(--color-border);transition:background .22s ease,color .22s ease}.segmented button:last-child{border-right:0}.segmented button:hover:not(:disabled){background:var(--mch-cream-soft)}.segmented button.active{background:var(--mch-teal-dark);color:#fff}.segmented button:disabled{opacity:.4;cursor:not-allowed}.unit-licence-block{border:1px solid var(--color-border);border-radius:10px;padding:.9rem;background:var(--mch-cream-soft)}.toggle-row{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.toggle-row input[type=checkbox]{margin-top:3px;width:16px;height:16px}.notice-inline{margin-top:8px;padding:.6rem .75rem;border-radius:8px;font-size:.8rem;line-height:1.5;background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--mch-warning-border)}.notice-inline.good{background:var(--mch-teal-light);color:var(--mch-teal-dark);border-color:var(--mch-teal-soft)}.legal-page{min-height:100vh;background:var(--mch-cream-bg);color:var(--mch-text);display:flex;flex-direction:column}.legal-header{background:var(--mch-teal-dark);color:#fff;padding:1.1rem 1.5rem 0}.legal-header-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:1rem}.legal-brand{display:flex;align-items:center;gap:10px}.legal-brand-mark{font-weight:700;letter-spacing:.12em;font-size:.95rem;border:1px solid rgba(255,255,255,.45);padding:4px 9px;border-radius:6px}.legal-brand-text{font-size:.95rem;opacity:.92}.legal-lang{display:flex;gap:6px}.legal-lang button{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:5px 12px;border-radius:7px;cursor:pointer;font-size:.8rem;transition:background .22s ease}.legal-lang button:hover{background:#ffffff1f}.legal-lang button.active{background:#fff;color:var(--mch-teal-dark);border-color:#fff}.legal-nav{max-width:1180px;margin:1rem auto 0;display:flex;gap:4px;flex-wrap:wrap}.legal-nav button{background:transparent;border:0;border-bottom:2px solid transparent;color:#ffffffb8;padding:.6rem .9rem;cursor:pointer;font-size:.86rem;transition:color .22s ease,border-color .22s ease}.legal-nav button:hover{color:#fff}.legal-nav button.active{color:#fff;border-bottom-color:var(--mch-cream)}.legal-main{flex:1;max-width:1180px;width:100%;margin:0 auto;padding:2rem 1.5rem;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:2rem;align-items:start}@media (max-width: 900px){.legal-main{grid-template-columns:1fr}}.legal-doc{background:#fff;border:1px solid var(--color-border);border-radius:14px;padding:2.2rem 2.4rem}.legal-doc h1{font-size:1.7rem;margin:0 0 1.2rem;color:var(--mch-teal-dark);line-height:1.25}.legal-controller{background:var(--mch-cream-soft);border:1px solid var(--color-border);border-radius:10px;padding:1rem 1.1rem;margin-bottom:1.8rem;font-size:.86rem}.legal-controller-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;color:var(--color-text-muted);margin-bottom:6px}.legal-controller-name{font-weight:600;margin-bottom:3px}.legal-controller-line{color:var(--color-text-soft);line-height:1.6}.legal-body{font-size:.92rem;line-height:1.75;color:var(--mch-text)}.legal-body h2{font-size:1.18rem;margin:2rem 0 .7rem;color:var(--mch-teal-dark);padding-bottom:.4rem;border-bottom:1px solid var(--color-border)}.legal-body h3{font-size:1.02rem;margin:1.5rem 0 .5rem;color:var(--mch-teal-dark)}.legal-body h4{font-size:.94rem;margin:1.1rem 0 .4rem;color:var(--mch-text-soft)}.legal-body p{margin:.55rem 0}.legal-body ul{margin:.55rem 0 .55rem 1.2rem;padding:0}.legal-body li{margin:.3rem 0}.legal-body a{color:var(--mch-teal);text-decoration:underline}.legal-body hr{border:0;border-top:1px solid var(--color-border);margin:1.6rem 0}.legal-body code{background:var(--mch-cream);padding:1px 5px;border-radius:4px;font-size:.86em}.legal-body pre{background:var(--mch-cream-soft);border:1px solid var(--color-border);border-radius:8px;padding:.9rem;overflow-x:auto;font-size:.82rem}.legal-table-wrap{overflow-x:auto;margin:1rem 0}.legal-body table{width:100%;border-collapse:collapse;font-size:.84rem}.legal-body th,.legal-body td{border:1px solid var(--color-border);padding:.55rem .7rem;text-align:left;vertical-align:top}.legal-body th{background:var(--mch-cream);font-weight:600}.legal-aside{display:flex;flex-direction:column;gap:1rem;position:sticky;top:1.5rem}.legal-aside-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1.1rem 1.2rem;font-size:.83rem;line-height:1.6}.legal-aside-card h3{margin:0 0 .6rem;font-size:.92rem;color:var(--mch-teal-dark)}.legal-aside-card p{margin:.4rem 0;color:var(--color-text-soft)}.legal-aside-card a{color:var(--mch-teal)}.legal-aside-ai{background:var(--mch-teal-light);border-color:var(--mch-teal-soft)}.legal-muted{color:var(--color-text-muted)}.legal-muted-small{font-size:.74rem;color:var(--color-text-muted)}.legal-error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--mch-error-border);border-radius:8px;padding:.8rem 1rem}.legal-footer{border-top:1px solid var(--color-border);background:#fff;padding:1.1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--color-text-muted)}.legal-footer-link{color:var(--mch-teal);text-decoration:none}.legal-footer-link:hover{text-decoration:underline}.legal-body blockquote{margin:.9rem 0;padding:.7rem 1rem;border-left:3px solid var(--mch-teal-soft);background:var(--mch-teal-light);border-radius:0 8px 8px 0;color:var(--mch-teal-dark);font-size:.88rem}.legal-body blockquote p{margin:.25rem 0}.btn-plus-inline{display:inline-flex;align-items:center;gap:6px;background:var(--mch-teal-light);color:var(--mch-teal-dark);border:1px solid var(--mch-teal-soft);border-radius:20px;padding:4px 12px 4px 9px;cursor:pointer;font-size:.82rem;transition:background .2s ease,border-color .2s ease,transform .16s ease}.btn-plus-inline:hover{background:var(--mch-teal-dark);color:#fff;border-color:var(--mch-teal-dark)}.btn-plus-inline .plus{font-size:1rem;font-weight:600;line-height:1}.btn-plus-inline .count{font-variant-numeric:tabular-nums;opacity:.85}.btn-plus{display:inline-flex;align-items:center;gap:7px}.btn-plus span:first-child{font-size:1.05rem;font-weight:600;line-height:1}.modal-wide{max-width:780px;width:92vw}.occ-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem}.occ-section{margin-bottom:1.4rem}.occ-section-title{font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;color:var(--color-text-muted);margin-bottom:.5rem;display:flex;align-items:center}.occ-section table{width:100%}.occ-form{border:1px solid var(--color-border);border-radius:10px;padding:1.1rem;background:var(--mch-cream-soft);margin-top:.5rem}.mono-cell{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:var(--color-text-soft);white-space:nowrap}.audit-block{margin-bottom:1.1rem}.audit-block:last-child{margin-bottom:0}.audit-block-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;color:var(--color-text-muted);margin-bottom:.4rem}.audit-quote{background:var(--mch-cream-soft);border-left:3px solid var(--mch-beige-strong);border-radius:0 8px 8px 0;padding:.6rem .85rem;font-size:.86rem;line-height:1.6;white-space:pre-wrap}.audit-why{background:var(--mch-teal-light);border:1px solid var(--mch-teal-soft);border-radius:10px;padding:.9rem 1rem}.audit-why .audit-block-label{color:var(--mch-teal-dark)}.audit-why code{background:#fff9;padding:1px 5px;border-radius:4px}.toolbar-toggle{margin-left:16px;align-items:center;gap:7px;padding:.35rem .7rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);white-space:nowrap}.toolbar-toggle input[type=checkbox]{margin-top:0}.reach-pair{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}@media (max-width: 700px){.reach-pair{grid-template-columns:1fr}}
