html{scroll-behavior:smooth}body{background-color:#fdfcfb;color:#332e2a;font-family:Noto Sans,sans-serif;-webkit-font-smoothing:antialiased}h1{font-size:clamp(1.875rem,5vw,3rem);font-weight:700;color:#122e33;margin-bottom:.5rem}h2{font-size:clamp(1.5rem,4vw,2.25rem);font-weight:700;color:#1f4a50;margin-bottom:.5rem}h3{font-size:clamp(1.25rem,3.5vw,1.875rem);font-weight:700;color:#2d6a71;margin-bottom:.5rem}h4{font-size:clamp(1.125rem,3vw,1.5rem);font-weight:600;color:#2d6a71;margin-bottom:.5rem}h5{font-size:clamp(1rem,2.5vw,1.25rem);font-weight:600;color:#3a92a6;margin-bottom:.25rem}h6{font-size:clamp(.875rem,2vw,1.125rem);font-weight:600;color:#3a92a6;margin-bottom:.25rem}p{color:#4a4540;line-height:1.625}a{color:#2d6a71;text-decoration:none;font-weight:500;transition:all .2s ease}a:hover{color:#1f4a50;text-decoration:underline}button,input,textarea,select{transition:all .2s ease}.btn{padding:.5rem 1rem;border-radius:.5rem;font-weight:500;font-size:.875rem;transition:all .2s ease;cursor:pointer;border:none;outline:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background-color:#2d6a71;color:#fff;box-shadow:0 4px 6px -1px #2d6a711a}.btn-primary:hover{background-color:#1f4a50;box-shadow:0 10px 15px -3px #2d6a7126}.btn-primary:active{background-color:#122e33}.btn-secondary{background-color:#87c1c2;color:#122e33;box-shadow:0 4px 6px -1px #2d6a711a}.btn-secondary:hover{background-color:#6abbbd;box-shadow:0 10px 15px -3px #2d6a7126}.btn-secondary:active{background-color:#5299a0}.btn-accent{background-color:#f5a623;color:#fff;box-shadow:0 4px 6px -1px #f5a6231a}.btn-accent:hover{background-color:#e8941f;box-shadow:0 10px 15px -3px #f5a62326}.btn-accent:active{background-color:#d4761a}.btn-outline{background-color:transparent;color:#2d6a71;border:2px solid #2D6A71}.btn-outline:hover{background-color:#f0f8f9}.btn-outline:active{background-color:#d0ebf0}.btn-ghost{background-color:transparent;color:#2d6a71}.btn-ghost:hover{background-color:#d0ebf0}.btn-ghost:active{background-color:#b1dfe8}.btn-danger{background-color:#ef4444;color:#fff;box-shadow:0 4px 6px -1px #ef44441a}.btn-danger:hover{background-color:#dc2626;box-shadow:0 10px 15px -3px #ef444426}.btn-danger:active{background-color:#b91c1c}.btn-sm{padding:.375rem .75rem;font-size:.75rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.input,.textarea,.select{padding:.5rem .75rem;border:1px solid #E8E5DF;border-radius:.5rem;background-color:#fff;color:#332e2a;font-size:.875rem;box-shadow:0 1px 2px #0000000d;transition:all .2s ease}.input::placeholder,.textarea::placeholder{color:#a89d8f}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:#2d6a71;box-shadow:0 0 0 3px #2d6a711a,0 1px 2px #0000000d}.input:disabled,.textarea:disabled,.select:disabled{background-color:#f7f5f1;cursor:not-allowed;opacity:.6}.textarea{resize:none;min-height:100px;font-family:Noto Sans,sans-serif}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2345313d' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:1.25em 1.25em;padding-right:2.5rem}.card{background-color:#fff;border:1px solid #E8E5DF;border-radius:.75rem;box-shadow:0 4px 6px -1px #2d6a711a;transition:box-shadow .2s ease}.card:hover{box-shadow:0 10px 15px -3px #2d6a7126}.card-header{border-bottom:1px solid #E8E5DF;padding:1rem 1.5rem}.card-body{padding:1rem 1.5rem}.card-footer{border-top:1px solid #E8E5DF;padding:1rem 1.5rem;display:flex;justify-content:flex-end;gap:.5rem}.section{padding:2rem 1rem}@media(min-width:768px){.section{padding:3rem 2rem}}.section-title{color:#2d6a71;font-weight:700;font-size:clamp(1.5rem,4vw,2.25rem);margin-bottom:.5rem}.section-subtitle{color:#6b6560;font-size:clamp(.875rem,2vw,1.125rem);margin-bottom:1.5rem}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-success{background-color:#d1fae5;color:#065f46}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-error{background-color:#fee2e2;color:#991b1b}.badge-info{background-color:#dbeafe;color:#1e40af}.divider{border-top:1px solid #E8E5DF}.status-good{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:9999px;background-color:#10b981;color:#fff;font-weight:700;font-size:1.25rem}.status-warning{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:9999px;background-color:#f59e0b;color:#fff;font-weight:700;font-size:1.25rem}.status-bad{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:9999px;background-color:#ef4444;color:#fff;font-weight:700;font-size:1.25rem}.gradient-primary{background:linear-gradient(135deg,#2d6a71,#87c1c2)}.gradient-primary-text{background:linear-gradient(135deg,#2d6a71,#87c1c2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes pulse-subtle{0%,to{opacity:1}50%{opacity:.8}}.animate-pulse-subtle{animation:pulse-subtle 2s cubic-bezier(.4,0,.6,1) infinite}@media(max-width:640px){.hidden-sm{display:none!important}}@media print{@page{margin:1.5cm;size:A4}.report-action-hide,aside,.fixed,button{display:none!important}.shadow-lg,.shadow-md,.shadow{box-shadow:none!important}.report-section,.card,.status,.summary-text>div,.grid>div,table tr,.p-4.rounded-lg,.p-6.rounded-lg,.score-card,img,figure{page-break-inside:avoid!important;break-inside:avoid!important}.report-section{page-break-before:auto;break-before:auto}p,li,div{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid!important;break-after:avoid!important;page-break-inside:avoid!important;break-inside:avoid!important}table{page-break-inside:auto;break-inside:auto}thead{display:table-header-group}tbody tr{page-break-inside:avoid;break-inside:avoid}body{background:#fff!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.flex{page-break-inside:avoid;break-inside:avoid}.grid>*{page-break-inside:avoid!important;break-inside:avoid!important}.relative img{page-break-before:avoid;page-break-after:avoid}img{max-width:100%!important;height:auto!important;page-break-inside:avoid!important}.report-section{margin-bottom:2rem!important}.bg-white,[style*=background-color],[style*=backgroundColor]{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.flex-1{width:100%!important}.container{max-width:100%!important}#visualization .grid{page-break-inside:avoid!important;display:grid!important}#summary .grid{page-break-inside:avoid!important}#faq>div>div{page-break-inside:avoid!important}#zonal-analysis>div>div{page-break-inside:avoid!important;margin-bottom:1.5rem}#five-elements .border{page-break-inside:avoid!important;break-inside:avoid!important;margin-bottom:1rem}#zonal-analysis .mb-12,#zonal-analysis .p-6.rounded-lg{page-break-inside:avoid!important;break-inside:avoid!important}#zonal-analysis [style*=pageBreakBefore]{page-break-before:always!important;break-before:page!important;margin-top:2rem!important}#zonal-analysis .mt-12 .grid.grid-cols-1{page-break-inside:avoid!important;break-inside:avoid!important}#visualization .space-y-12>div{page-break-inside:avoid!important;break-inside:avoid!important;margin-bottom:1.5rem}#visualization .grid{page-break-inside:avoid!important;break-inside:avoid!important}#client-details,#images,#summary,#room-scores,#floorplan-analysis,#five-elements,#zonal-analysis,#video-summary,#visualization,#special-guidance,#remedies,#action-plan,#final-tips,#conclusion,#notes,#faq{page-break-before:auto;margin-top:1.5rem}#summary,#zonal-analysis,#visualization{page-break-before:always}}.pdf-export-mode{padding:0;background:#fff}.pdf-export-mode .report-section{margin-bottom:0;padding:0!important;page-break-inside:avoid;overflow:visible}.pdf-export-mode img{max-width:100%;height:auto;page-break-inside:avoid}.pdf-export-mode .grid{page-break-inside:avoid;overflow:visible}.pdf-export-mode .card,.pdf-export-mode .p-4,.pdf-export-mode .p-6,.pdf-export-mode .rounded-lg{page-break-inside:avoid;break-inside:avoid;margin-bottom:10px}.pdf-export-mode table{page-break-inside:auto}.pdf-export-mode table tr{page-break-inside:avoid;break-inside:avoid}.pdf-export-mode #five-elements .border{page-break-inside:avoid!important;break-inside:avoid!important;margin-bottom:15px}.pdf-export-mode #zonal-analysis .mb-12{page-break-inside:avoid!important;break-inside:avoid!important;margin-bottom:20px}.pdf-export-mode #zonal-analysis .p-6.rounded-lg{page-break-inside:avoid!important;break-inside:avoid!important}.pdf-export-mode #zonal-analysis [style*=pageBreakBefore]{page-break-before:always!important;break-before:page!important;margin-top:2rem!important}.pdf-export-mode #zonal-analysis .mt-12 .grid{page-break-inside:avoid!important;break-inside:avoid!important;margin-bottom:15px}.pdf-export-mode .score-card,.pdf-export-mode .summary-text{page-break-inside:avoid;break-inside:avoid}.pdf-export-mode #zonal-analysis .flex.justify-between.items-start{margin-bottom:10px}.pdf-export-mode #zonal-analysis .text-5xl{margin-bottom:8px}.pdf-export-mode .grid>div{page-break-inside:avoid;break-inside:avoid;margin-bottom:10px}.pdf-export-mode #visualization .grid{page-break-inside:avoid}.pdf-export-mode h2,.pdf-export-mode h3,.pdf-export-mode h4{page-break-after:avoid;break-after:avoid;margin-top:20px}.pdf-export-mode .report-section:not(:first-child){margin-top:30px}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in-up{animation:fade-in-up .3s ease-out forwards}.animate-fade-in{animation:fade-in .3s ease-out forwards}.shadow-elevation-sm{box-shadow:0 1px 2px #2d6a710d}.shadow-elevation-md{box-shadow:0 4px 6px -1px #2d6a711a}.shadow-elevation-lg{box-shadow:0 10px 15px -3px #2d6a7126}.shadow-elevation-xl{box-shadow:0 20px 25px -5px #2d6a7133}@media(max-width:640px){.hidden-sm{display:none}}@media(min-width:641px){.show-lg{display:block}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2d6a714d;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#2d6a7199}
