@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap";
:root{--background:#fdfcfb;--foreground:#000;--primary:#9e6726;--primary-hover:#81531e;--secondary:#7a7a7a;--accent:#ce996a;--success:#2e7d32;--danger:#d32f2f;--surface:#ffffffd9;--surface-border:#9e672633;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 10px #0000000d;--shadow-lg:0 8px 30px #00000014;--shadow-glow:0 0 20px #9e672626;--container-width:1400px}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{color:var(--foreground);background-color:var(--background);min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;position:relative;overflow-x:hidden}body:before{content:"";opacity:.8;z-index:-1;pointer-events:none;background:radial-gradient(circle at 2px 2px,#9e672608 1px,#0000 0) 0 0/24px 24px;position:fixed;inset:0}h1,h2,h3,h4,h5,h6{letter-spacing:-.025em;color:var(--foreground);margin-bottom:.5em;font-family:Outfit,sans-serif;font-weight:600;line-height:1.2}a{color:var(--primary);text-decoration:none;transition:all .2s}.glass-panel{background:var(--surface);-webkit-backdrop-filter:blur(16px);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.5rem;transition:transform .2s,box-shadow .2s}.glass-panel:hover{box-shadow:var(--shadow-lg)}.glass-card{background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1rem;transition:all .2s ease-in-out}.glass-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.mgs-sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--surface-border);z-index:50;background:#fdfcfbcc;flex-direction:column;width:280px;height:100vh;padding:2rem 1rem;display:flex;position:sticky;top:0}.logo-container{align-items:center;gap:.75rem;padding:0 1rem 2.5rem;display:flex}.logo-icon{background:var(--primary);border-radius:var(--radius-sm);color:#fff;width:32px;height:32px;box-shadow:var(--shadow-glow);justify-content:center;align-items:center;font-weight:700;display:flex}.logo-text{letter-spacing:-.02em;color:var(--primary);font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:600}.btn{border-radius:var(--radius-lg);cursor:pointer;border:none;justify-content:center;align-items:center;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-ghost{color:var(--primary);border:1px solid var(--primary);background:0 0}.btn-ghost:hover{background:#9e67260d}.badge{border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{color:var(--success);background:#2e7d321a}.badge-warning{color:var(--warning);background:#f59e0b1a}.badge-danger{color:var(--danger);background:#d32f2f1a}.badge-info{color:var(--primary);background:#9e67261a}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.5s cubic-bezier(.16,1,.3,1) forwards slideUp}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--surface-border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}.app-container{min-height:100vh;display:flex}.main-content{flex:1;padding:2rem;overflow-y:auto}.project-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem;display:grid}.nav-label{text-transform:uppercase;color:var(--secondary);letter-spacing:.05em;padding:0 1rem .75rem;font-size:.75rem;font-weight:600}.nav-link{border-radius:var(--radius-md);color:var(--secondary);align-items:center;gap:.75rem;margin-bottom:.25rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.nav-link:hover,.nav-link.active{color:var(--primary);background:#9e67260d}@media print{.mgs-sidebar,nav,header.page-header,.btn,.nav-label,#summary,#registry,#scope,#millwork,#finish,#estimate,#flags,#notes,#audit,body:before{display:none!important}.main-content{background:#fff!important;margin:0!important;padding:0!important}.app-container{display:block!important}#preview{box-shadow:none!important;background:#fff!important;border:none!important;padding:0!important;display:block!important}#preview h2{display:none!important}#preview div{box-shadow:none!important;border:none!important}}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#0006;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.modal-container{width:90%;max-width:600px;max-height:90vh;animation:.4s cubic-bezier(.16,1,.3,1) slideUp;position:relative;overflow-y:auto}.form-group{margin-bottom:1.5rem}.form-label{color:var(--primary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.form-input{border-radius:var(--radius-sm);border:1px solid var(--surface-border);background:#fff;width:100%;padding:.75rem;font-family:inherit;font-size:.875rem;transition:border-color .2s}.form-input:focus{border-color:var(--primary);outline:none}.dropzone{border:2px dashed var(--surface-border);border-radius:var(--radius-md);text-align:center;cursor:pointer;background:#9e672605;padding:2.5rem;transition:all .2s}.dropzone.active{border-color:var(--primary);background:#9e672614;transform:scale(1.01)}.file-preview-list{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.file-preview-item{border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:#9e672608;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.8125rem;display:flex}.file-remove-btn{color:var(--secondary);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1rem}.file-remove-btn:hover{color:#f44}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.analysis-progress{background:#9e67261a;border-radius:4px;width:100%;height:8px;margin-top:2rem;overflow:hidden}.analysis-bar{background:var(--primary);width:0%;height:100%;transition:width 5s linear}.analysis-bar.active{width:100%}
