@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-primary:#fdfcfb;--bg-secondary:#fff;--bg-tertiary:#f4f1f1;--color-primary:#e6b9b8;--color-primary-light:#f7e8e7;--color-secondary:#ebdcd0;--color-text-main:#4a4a4a;--color-text-muted:#8c8c8c;--color-border:#f0eaea;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--shadow-sm:0 4px 12px #e6b9b814;--shadow-md:0 8px 24px #e6b9b81f;--transition-fast:.2s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1)}.dark-mode{--bg-primary:#1e1e20;--bg-secondary:#252528;--bg-tertiary:#2e2e32;--color-primary:#b08d8d;--color-primary-light:#4a3b3a;--color-secondary:#a39589;--color-text-main:#e0e0e0;--color-text-muted:#9e9e9e;--color-border:#38383a;--shadow-sm:0 4px 12px #0000004d;--shadow-md:0 8px 24px #0006}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--color-text-main);-webkit-font-smoothing:antialiased;transition:background-color var(--transition-normal), color var(--transition-normal);font-family:Inter,system-ui,sans-serif;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--color-text-main);font-weight:600}a{color:var(--color-primary);text-decoration:none}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}img{max-width:100%;height:auto;display:block}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-1{flex:1}.shrink-0{flex-shrink:0}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.gap-8{gap:32px}.relative{position:relative}.absolute{position:absolute}.inset-0{inset:0}.top-0{top:0}.top-4{top:16px}.left-0{left:0}.left-4{left:16px}.bottom-0{bottom:0}.right-0{right:0}.right-6{right:24px}.z-10{z-index:10}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mt-12{margin-top:48px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.mb-10{margin-bottom:40px}.mb-12{margin-bottom:48px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-5{padding:20px}.p-6{padding:24px}.p-8{padding:32px}.px-2{padding-left:8px;padding-right:8px}.px-3{padding-left:12px;padding-right:12px}.px-4{padding-left:16px;padding-right:16px}.py-2{padding-top:8px;padding-bottom:8px}.py-20{padding-top:80px;padding-bottom:80px}.pt-6{padding-top:24px}.pb-3{padding-bottom:12px}.pb-8{padding-bottom:32px}.pb-20{padding-bottom:80px}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-10{width:40px}.h-6{height:24px}.h-10{height:40px}.w-16{width:64px}.h-16{height:64px}.w-20{width:80px}.h-20{height:80px}.w-48{width:192px}.h-48{height:192px}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.min-w-\[140px\]{min-width:140px}.text-center{text-align:center}.text-justify{text-align:justify}.text-xs{font-size:12px;line-height:16px}.text-sm{font-size:14px;line-height:20px}.text-base{font-size:16px;line-height:24px}.text-lg{font-size:18px;line-height:28px}.text-xl{font-size:20px;line-height:28px}.text-2xl{font-size:24px;line-height:32px}.text-3xl{font-size:30px;line-height:36px}.text-4xl{font-size:36px;line-height:40px}.text-5xl{font-size:48px;line-height:1}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:4px}.rounded-lg{border-radius:8px}.rounded-xl{border-radius:12px}.rounded-2xl{border-radius:16px}.rounded-full{border-radius:9999px}.object-cover{object-fit:cover}.overflow-hidden{overflow:hidden}.border{border:1px solid var(--color-border)}.border-b{border-bottom:1px solid var(--color-border)}.border-4{border:4px solid var(--color-border)}.border-\[3px\]{border:3px solid var(--color-border)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.opacity-10{opacity:.1}.opacity-40{opacity:.4}.rotate-180{transform:rotate(180deg)}.cursor-pointer{cursor:pointer}.group:hover .group-hover\:scale-105{transform:scale(1.05)}.group:hover .group-hover\:blur-md{filter:blur(12px)}.group:hover .group-hover\:opacity-60{opacity:.6}.transition-all{transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.text-white{color:#fff}.bg-white{background-color:var(--bg-secondary)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}@media (width>=640px){.sm\:w-24{width:96px}.sm\:h-24{height:96px}.sm\:w-auto{width:auto}.sm\:flex-row{flex-direction:row}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:p-8{padding:32px}.sm\:px-0{padding-left:0;padding-right:0}.sm\:-mx-8{margin-left:-32px;margin-right:-32px}.sm\:text-3xl{font-size:30px}}@media (width>=768px){.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:items-center{align-items:center}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:p-8{padding:32px}.md\:-mx-4{margin-left:-16px;margin-right:-16px}.text-4xl{font-size:36px}.md\:text-5xl{font-size:48px}.md\:mt-0{margin-top:0}}@media (width>=1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeIn}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.container{max-width:1000px;margin:0 auto;padding:0 20px}.card{background-color:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);padding:24px}.upload-area{cursor:pointer;text-align:center;transition:all var(--transition-normal)}.upload-area:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn{border-radius:var(--radius-full);transition:all var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:10px 24px;font-size:15px;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{opacity:.9;transform:scale(1.02)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--color-text-main);border:1px solid var(--color-border)}.btn-icon{background-color:var(--bg-tertiary);width:44px;height:44px;color:var(--color-text-main);border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.badge{border-radius:var(--radius-full);background-color:var(--color-primary-light);color:var(--color-primary);align-items:center;padding:4px 12px;font-size:13px;font-weight:500;display:inline-flex}.score-circle{background:conic-gradient(var(--color-primary) var(--progress), var(--bg-tertiary) 0deg);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:120px;height:120px;margin:0 auto;display:flex;position:relative}.score-circle:before{content:"";background-color:var(--bg-secondary);border-radius:50%;position:absolute;inset:6px}.score-value{color:var(--color-primary);font-size:36px;font-weight:700;line-height:1;position:relative}.score-label{color:var(--color-text-muted);margin-top:4px;font-size:12px;position:relative}.detail-row{align-items:flex-start;gap:10px;display:flex}.detail-label{border-radius:4px;flex-shrink:0;padding:3px 6px;font-size:12px;font-weight:600}.label-status{color:#4a6572;background:#f0f4f8}.label-issue{color:#b75a59;background:#fdf3f2}.label-fix{color:#6e8b63;background:#f2f6f1}.label-care{color:#a88540;background:#fcf6e8}.dark-mode .label-status{color:#8faebd;background:#4a657233}.dark-mode .label-issue{color:#d68f8e;background:#b75a5933}.dark-mode .label-fix{color:#a4c49b;background:#6e8b6333}.dark-mode .label-care{color:#d3b374;background:#a8854033}.detail-text{color:var(--color-text-main);margin-top:1px;font-size:13px;line-height:1.6}.hidden{display:none}
