:root{--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-deep: #0a0b0d;--bg-surface: #12151c;--bg-card: rgba(20, 25, 35, .65);--bg-card-hover: rgba(28, 35, 48, .8);--border-gold: rgba(207, 168, 68, .25);--border-gold-hover: rgba(230, 198, 105, .6);--border-mute: rgba(255, 255, 255, .08);--color-gold: #cfa844;--color-gold-light: #e6c669;--color-gold-dark: #9d7821;--color-text-primary: #f3f4f6;--color-text-secondary: #9ca3af;--color-text-mute: #6b7280;--color-success: #10b981;--color-success-bg: rgba(16, 185, 129, .1);--color-info: #3b82f6;--color-info-bg: rgba(59, 130, 246, .1);--shadow-premium: 0 10px 30px -10px rgba(0, 0, 0, .7);--shadow-glow: 0 0 20px rgba(207, 168, 68, .15);--shadow-glow-strong: 0 0 30px rgba(207, 168, 68, .35);--transition-smooth: all .35s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-deep);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;background-image:radial-gradient(circle at 10% 20%,rgba(207,168,68,.05) 0%,transparent 40%),radial-gradient(circle at 90% 80%,rgba(54,100,139,.04) 0%,transparent 40%),linear-gradient(rgba(255,255,255,.005) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.005) 1px,transparent 1px);background-size:100% 100%,100% 100%,60px 60px,60px 60px;z-index:-1;pointer-events:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;letter-spacing:-.02em;color:var(--color-text-primary);line-height:1.25}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#cfa84433;border-radius:4px;transition:var(--transition-smooth)}::-webkit-scrollbar-thumb:hover{background:var(--color-gold)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px #cfa8441a}50%{box-shadow:0 0 25px #cfa84440}}.animate-fade{animation:fadeIn .8s ease-out forwards}.animate-slide{animation:slideUp .6s cubic-bezier(.16,1,.3,1) forwards}.glass-card{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-mute);border-radius:16px;padding:24px;box-shadow:var(--shadow-premium);transition:var(--transition-smooth)}.glass-card:hover{background:var(--bg-card-hover);border-color:#cfa84433;transform:translateY(-4px)}.glass-card-gold{background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-gold);border-radius:16px;padding:30px;box-shadow:var(--shadow-premium),var(--shadow-glow);transition:var(--transition-smooth)}.glass-card-gold:hover{border-color:var(--border-gold-hover);box-shadow:var(--shadow-premium),var(--shadow-glow-strong)}.text-gold-gradient{background:linear-gradient(135deg,#fce6a8,#cfa844,#9d7821);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.btn-primary{background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 60%,var(--color-gold-dark) 100%);color:#000;border:none;font-family:var(--font-heading);font-weight:600;font-size:.95rem;padding:12px 28px;border-radius:8px;cursor:pointer;box-shadow:0 4px 15px #cfa84440;transition:var(--transition-smooth);display:inline-flex;align-items:center;gap:8px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #cfa84466;filter:brightness(1.05)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-gold);font-family:var(--font-heading);font-weight:500;font-size:.95rem;padding:12px 28px;border-radius:8px;cursor:pointer;transition:var(--transition-smooth);display:inline-flex;align-items:center;gap:8px}.btn-secondary:hover{background:#cfa8441a;border-color:var(--color-gold-light);color:var(--color-gold-light)}.form-group{margin-bottom:20px}.form-label{display:block;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:8px}.form-input{width:100%;background:#0a0c1199;border:1px solid var(--border-mute);border-radius:8px;padding:14px 16px;color:var(--color-text-primary);font-family:var(--font-body);font-size:1rem;transition:var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 10px #cfa84426;background:#0f1219cc}.tabs-container{display:flex;gap:12px;margin-bottom:30px;border-bottom:1px solid var(--border-mute);padding-bottom:12px;overflow-x:auto}.tab-btn{background:transparent;border:none;color:var(--color-text-secondary);font-family:var(--font-heading);font-size:1.05rem;font-weight:500;padding:8px 16px;cursor:pointer;position:relative;transition:var(--transition-fast);white-space:nowrap}.tab-btn:hover{color:var(--color-gold-light)}.tab-btn.active{color:var(--color-gold);font-weight:600}.tab-btn.active:after{content:"";position:absolute;bottom:-13px;left:0;width:100%;height:2px;background-color:var(--color-gold);box-shadow:0 0 10px var(--color-gold)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media (max-width: 1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.badge-gold{background:#cfa8441f;border:1px solid rgba(207,168,68,.3);color:var(--color-gold-light);padding:4px 10px;border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}.badge-success{background:var(--color-success-bg);border:1px solid rgba(16,185,129,.3);color:var(--color-success);padding:4px 10px;border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}.premium-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--border-mute);margin-top:16px}.premium-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.premium-table th{background:#ffffff05;color:var(--color-text-secondary);font-family:var(--font-heading);font-weight:600;padding:14px 16px;border-bottom:1px solid var(--border-mute);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.premium-table td{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--color-text-primary);background:#ffffff01}.premium-table tr:last-child td{border-bottom:none}.premium-table tr:hover td{background:#ffffff05}.tooltip-trigger{position:relative;cursor:help;border-bottom:1px dotted var(--color-text-secondary)}.calculator-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:#ffffff1a;outline:none;margin:15px 0;transition:var(--transition-fast)}.calculator-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--color-gold);cursor:pointer;box-shadow:0 0 10px #cfa84480;transition:var(--transition-fast)}.calculator-slider::-webkit-slider-thumb:hover{background:var(--color-gold-light);transform:scale(1.2)}.portal-shell,.login-shell{width:100%}.portal-header-title{min-width:0;flex:1 1 520px}.portal-header-title h1,.portal-header-title p,.tab-btn,.btn-primary,.btn-secondary,.premium-table th,.premium-table td{overflow-wrap:anywhere}.glass-card p,.glass-card li,.glass-card h2,.glass-card h3,.glass-card h4,.glass-card-gold p,.glass-card-gold li,.glass-card-gold h2,.glass-card-gold h3,.glass-card-gold h4,footer p{overflow-wrap:anywhere}.glass-card strong,.glass-card-gold strong{overflow-wrap:normal;word-break:keep-all}.portal-actions{flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end}.project-detail-grid>*,.calculator-grid>*,.premium-table-wrapper{min-width:0}.gallery-strip{scrollbar-width:thin}.gallery-strip>div{touch-action:manipulation}.future-documents:disabled{color:var(--color-text-mute);border-color:var(--border-mute);background:#ffffff05;cursor:not-allowed;opacity:.75}.future-documents:disabled:hover{color:var(--color-text-mute);border-color:var(--border-mute);background:#ffffff05}.login-shell{min-height:100svh!important}@media (max-width: 1024px){.portal-header{align-items:flex-start!important}.portal-actions{width:100%;justify-content:space-between!important}.tabs-container{gap:8px;margin-bottom:24px;padding-bottom:10px}.tab-btn{font-size:1rem!important;padding:10px 16px!important}.overview-card,.macro-section,.calculator-card,.financial-card{padding:22px!important}.project-detail-grid,.calculator-grid{gap:24px!important}.premium-table{min-width:680px}}@media (max-width: 768px){.portal-header-title{flex-basis:100%}.portal-actions{align-items:stretch!important}.portal-actions>.btn-secondary{justify-content:center}.macro-heading{align-items:flex-start!important}.macro-heading h2{font-size:1.25rem!important}.project-visual img{height:260px!important}.project-visual>div{left:18px!important;right:18px!important;bottom:18px!important}.metric-output-grid,.estimate-output-grid{grid-template-columns:1fr!important;gap:16px!important}.form-row,.range-label-row{align-items:flex-start!important;flex-direction:column;gap:4px}.login-shell{align-items:flex-start!important;overflow:auto!important;padding:76px 16px 20px!important}.login-toggle{left:16px;right:16px!important;justify-content:flex-end}.auth-card{max-width:520px!important;padding:24px!important}.auth-glow{width:360px!important;height:360px!important}}@media (max-width: 480px){.portal-shell{padding:14px!important}.portal-header{margin-bottom:22px!important}.portal-actions{flex-direction:column;width:100%}.portal-actions>*,.portal-actions .btn-secondary{width:100%}.portal-actions .btn-secondary{padding:10px 16px}.overview-card,.macro-section,.calculator-card,.financial-card,.glass-card{padding:18px!important}.tabs-container{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}.tab-btn{font-size:.92rem!important;padding:9px 12px!important}.project-visual{padding:8px!important}.project-visual img{height:220px!important}.project-visual>div{position:static!important;margin-top:8px;padding:10px 12px!important}.btn-primary,.btn-secondary{min-height:44px}.document-actions>*{justify-content:center;width:100%}.auth-card{padding:20px!important}}
