:root{--color-bg:#fafafa;--color-surface:#fff;--color-surface-muted:#f4f4f5;--color-accent:#e05a3a;--color-accent-hover:#c94a2c;--color-text:#09090b;--color-text-muted:#71717a;--color-border:#e4e4e7;--radius:6px;--font-body:"DM Sans", "Helvetica Neue", Arial, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);min-height:100vh;font-size:15px;line-height:1.65;position:relative}body:before{content:"";z-index:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-size:200px 200px;position:fixed;inset:0}a{color:inherit;text-decoration:none}.page-wrapper{z-index:1;max-width:1600px;margin:0 auto;padding:2.5rem 1.5rem;animation:.25s both pageEnter;position:relative}.page-wrapper--wide{max-width:1600px}.nav{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:100;justify-content:space-between;align-items:center;height:56px;padding:0 2rem;display:flex;position:sticky;top:0}.nav-brand{font-family:var(--font-body);color:var(--color-text);letter-spacing:-.01em;font-size:.9375rem;font-weight:600;text-decoration:none}.nav-brand span{color:var(--color-accent)}.nav-links{gap:.125rem;display:flex}.nav-link{color:var(--color-text-muted);border-radius:var(--radius);padding:.375rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .1s,background .1s}.nav-link:hover,.nav-link.active{color:var(--color-text);background:var(--color-surface-muted);text-decoration:none}.nav-actions{align-items:center;gap:.5rem;display:flex}.section-title{font-family:var(--font-body);color:var(--color-text);margin-bottom:1.25rem;font-size:1.125rem;font-weight:600}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:.75rem;font-size:.6875rem;font-weight:600}.text-muted{color:var(--color-text-muted)}.card{background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);padding:1.5rem 2rem}.btn{border-radius:var(--radius);font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.375rem;padding:.5rem 1.125rem;font-size:.875rem;font-weight:500;line-height:1.4;transition:opacity .1s;display:inline-flex}.btn-lg{padding:.625rem 1.5rem;font-size:.9375rem}.btn-primary{background:var(--color-text);color:#fff;border:1px solid #0000}.btn-primary:hover:not(:disabled){opacity:.85}.btn-secondary{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.btn-secondary:hover:not(:disabled){opacity:.7}.btn-ghost{border:1px solid var(--color-border);color:var(--color-text-muted);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--color-text);border-color:#d1d1d6}.btn-danger{color:#dc2626;background:0 0;border:1px solid #fca5a5}.btn-danger:hover:not(:disabled){background:#fef2f2}.btn-accent{background:var(--color-accent);color:#fff;border:1px solid #0000}.btn-accent:hover:not(:disabled){opacity:.9}.btn:disabled{opacity:.45;cursor:not-allowed}.form-field{margin-bottom:1.25rem}.form-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.375rem;font-size:.75rem;font-weight:600;display:block}.form-hint{color:var(--color-text-muted);margin-bottom:.5rem;font-size:.8125rem}.form-input{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;font-family:var(--font-body);color:var(--color-text);background:var(--color-surface);outline:none;padding:.5625rem .75rem;font-size:.9375rem;transition:border-color .1s}.form-input::placeholder{color:var(--color-text-muted);opacity:.7}.form-input:focus{border-color:var(--color-accent)}.form-select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;font-family:var(--font-body);color:var(--color-text);background:var(--color-surface);cursor:pointer;appearance:auto;outline:none;padding:.5625rem .75rem;font-size:.9375rem;transition:border-color .1s}.form-select:focus{border-color:var(--color-accent)}.form-select-list{height:160px;padding:.375rem}.chips{flex-wrap:wrap;gap:.375rem;margin-top:.5rem;display:flex}.chip{background:var(--color-surface-muted);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:.25rem;padding:.2rem .5rem .2rem .625rem;font-size:.8rem;font-weight:500;display:inline-flex}.chip-remove{width:14px;height:14px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:.7rem;line-height:1;transition:color .1s,background .1s;display:inline-flex}.chip-remove:hover{background:var(--color-border);color:var(--color-text)}.alert{border-radius:var(--radius);border:1px solid;margin-bottom:1rem;padding:.625rem .875rem;font-size:.875rem;font-weight:500}.alert-success{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.alert-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.table-card{background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);margin-bottom:1.5rem;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.875rem}.data-table th{background:var(--color-surface-muted);text-align:left;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--color-border);padding:.625rem 1rem;font-size:.6875rem;font-weight:600}.data-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;padding:.75rem 1rem}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--color-surface-muted)}.table-actions{flex-wrap:wrap;gap:.375rem;display:flex}.sub-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.sub-card{background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);padding:1.25rem 1.5rem;transition:border-color .15s}.sub-card:hover{border-color:#d1d1d6}.sub-card-actions{border-top:1px solid var(--color-border);gap:.5rem;margin-top:1.125rem;padding-top:.875rem;display:flex}.sub-card-date{color:var(--color-text-muted);margin-top:.625rem;font-size:.75rem}.filter-row{margin-bottom:.625rem}.filter-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:.2rem;font-size:.6875rem;font-weight:600}.filter-value{color:var(--color-text);font-size:.875rem;font-weight:500}.empty-state{text-align:center;background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);padding:4rem 2rem}.empty-state h3{color:var(--color-text);margin-bottom:.5rem;font-size:1.0625rem;font-weight:600}.empty-state p{color:var(--color-text-muted);max-width:400px;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;font-size:.9375rem}.modal-backdrop{z-index:1000;background:#0006;justify-content:center;align-items:center;padding:1rem;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-card{background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);width:100%;max-width:440px;padding:2rem;animation:.2s slideUp;position:relative}.modal-card-wide{max-width:560px}.modal-close{border:1px solid var(--color-border);width:28px;height:28px;color:var(--color-text-muted);border-radius:var(--radius);cursor:pointer;background:0 0;justify-content:center;align-items:center;font-size:1rem;line-height:1;transition:border-color .1s,color .1s;display:flex;position:absolute;top:.875rem;right:.875rem}.modal-close:hover{color:var(--color-text);border-color:#d1d1d6}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding:2rem 0 3rem;display:grid}@media (width<=768px){.hero{grid-template-columns:1fr;gap:2rem;padding:1.5rem 0 2rem}}.hero-title{font-size:clamp(1.75rem,3.5vw,2.75rem);font-family:var(--font-body);letter-spacing:-.025em;color:var(--color-text);margin-bottom:.875rem;font-weight:600;line-height:1.15}.hero-subtitle{color:var(--color-text-muted);margin-bottom:1.75rem;font-size:.9375rem;line-height:1.75}.check-item{color:var(--color-text-muted);align-items:flex-start;gap:.625rem;margin-bottom:.5rem;font-size:.875rem;line-height:1.5;display:flex}.check-item:last-child{margin-bottom:0}.check-icon{border:1px solid var(--color-accent);width:16px;height:16px;color:var(--color-accent);border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin-top:3px;font-size:.55rem;font-weight:800;display:inline-flex}.section-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.stats-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:2rem;display:grid}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem 1.5rem}.stat-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:.375rem;font-size:.6875rem;font-weight:600}.stat-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--color-text);font-size:2rem;font-weight:700;line-height:1}.badge{border-radius:var(--radius);border:1px solid;align-items:center;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-active{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.badge-inactive{color:#dc2626;background:#fef2f2;border-color:#fecaca}.pagination{border-top:1px solid var(--color-border);justify-content:center;align-items:center;gap:.75rem;padding:1rem;display:flex}.pagination-label{color:var(--color-text-muted);font-size:.875rem;font-weight:500}.filter-bar{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:.75rem;display:grid}@media (width<=700px){.filter-bar{grid-template-columns:1fr}.filter-bar .btn{width:100%}}.msd-trigger{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;font-family:var(--font-body);color:var(--color-text);cursor:pointer;text-align:left;align-items:center;gap:.5rem;padding:.5625rem .75rem;font-size:.9375rem;transition:border-color .1s;display:flex}.msd-trigger:hover{border-color:#d1d1d6}.msd-trigger.open{border-color:var(--color-accent)}.msd-panel{background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);z-index:200;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 4px 16px #00000014}.msd-search{border:none;border-bottom:1px solid var(--color-border);width:100%;font-family:var(--font-body);color:var(--color-text);background:var(--color-surface-muted);outline:none;padding:.5rem .75rem;font-size:.875rem}.msd-search::placeholder{color:var(--color-text-muted);opacity:.7}.msd-actions{border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);gap:.75rem;padding:.375rem .75rem;display:flex}.msd-actions button{font-family:var(--font-body);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;transition:color .1s}.msd-actions button:hover{color:var(--color-text)}.msd-list{max-height:200px;overflow-y:auto}.msd-item{cursor:pointer;color:var(--color-text);align-items:center;gap:.5rem;padding:.4375rem .75rem;font-size:.875rem;transition:background 80ms;display:flex}.msd-item:hover{background:var(--color-surface-muted)}.msd-checkbox{width:14px;height:14px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.nav-hamburger{color:var(--color-text);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;transition:color .1s;display:none}.nav-hamburger:hover{color:var(--color-text-muted)}.nav-mobile-menu{z-index:99;background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-direction:column;gap:.25rem;padding:.75rem 1rem;display:flex;position:sticky;top:56px}.nav-mobile-menu .nav-link{padding:.625rem .75rem}.nav-mobile-actions{border-top:1px solid var(--color-border);gap:.5rem;margin-top:.5rem;padding-top:.5rem;display:flex}.nav-mobile-actions .btn{flex:1;justify-content:center}@media (width<=640px){.nav{padding:0 1rem}.nav-links,.nav-actions{display:none}.nav-hamburger{display:flex}.page-wrapper{padding:1.5rem 1rem}.card{padding:1.125rem 1.25rem}.modal-card{padding:1.25rem}.sub-grid{grid-template-columns:1fr}.section-header{flex-wrap:wrap;gap:.75rem}.empty-state{padding:2.5rem 1.25rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pageEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
