:root{--bg-primary:#ebeae4;--bg-secondary:#e0dfd8;--text-primary:#111;--text-secondary:#444;--text-muted:#777;--accent-red:#e63946;--accent-blue:#1d3557;--info:#3a86ff;--success:#111;--warning:#ffbe0b;--error:#e63946;--border-color:#111;--font-ui:"Pretendard Variable", "Pretendard", sans-serif;--font-mono:"Space Mono", monospace;--header-height:70px;--sidebar-width:300px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3,h4{letter-spacing:-.02em;text-transform:uppercase;font-weight:800}.header{height:var(--header-height);background:var(--bg-primary);border-bottom:2px solid var(--border-color);z-index:100;position:fixed;top:0;left:0;right:0}.header-inner{justify-content:space-between;align-items:center;height:100%;padding:0 24px;display:flex}.header-left{align-items:center;gap:16px;display:flex}.header-menu-button{background:0 0;border:0;font-size:1.4rem;line-height:1;display:none}.logo{font-family:var(--font-mono);letter-spacing:-1px;align-items:baseline;font-size:1.8rem;font-weight:700;display:flex}.logo-n,.logo-n2{color:var(--text-primary)}.logo-o,.logo-o2{color:var(--accent-red)}.logo-a{margin:0 4px;font-size:1.2rem}.sidebar{top:var(--header-height);width:var(--sidebar-width);height:calc(100vh - var(--header-height));background:var(--bg-primary);border-right:2px solid var(--border-color);z-index:90;padding:32px 0;position:fixed;left:0;overflow-y:auto}.sidebar-title{color:var(--text-primary);border-bottom:2px solid var(--border-color);margin-bottom:24px;padding:0 32px 16px;font-size:1.4rem;font-weight:800;display:block}.nav-group{margin-bottom:32px}.nav-group-title{color:var(--text-secondary);padding:0 32px 12px;font-size:1.15rem;font-weight:700;display:block}.nav-item{color:var(--text-primary);border-left:4px solid #0000;align-items:center;padding:10px 32px;font-size:1.05rem;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background:var(--bg-secondary);font-weight:600}.nav-item.active{border-left-color:var(--accent-red);background:var(--bg-secondary);color:var(--accent-red);font-weight:700}.calc-item{color:inherit;border-bottom:1px dashed var(--border-color);border:1px solid var(--border-color);background:#fff;border-radius:8px;flex-direction:column;margin-bottom:12px;padding:20px;text-decoration:none;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000000a}.calc-item:last-child{margin-bottom:0}.calc-item:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 6px 12px #00000014}.calc-item-content{align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.calc-item-icon{background:var(--bg-color);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.8rem;display:flex}.calc-item-text{flex:1}.calc-item-title{color:var(--text-primary);margin-bottom:6px;font-size:1.1rem;font-weight:700}.calc-item-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.4}.calc-item-action{justify-content:flex-end;display:flex}.calc-item-btn{background:var(--primary-color);color:#fff;border-radius:20px;padding:8px 16px;font-size:.9rem;font-weight:600;transition:background .2s;display:inline-block}.calc-item:hover .calc-item-btn{background:var(--accent-blue)}.main-content{margin-left:var(--sidebar-width);margin-top:var(--header-height);min-height:calc(100vh - var(--header-height));flex-direction:column;padding:64px 56px;display:flex}.container{flex:1;width:100%;max-width:760px;margin:0 auto}.home-hero{border-bottom:2px solid var(--border-color);margin-bottom:40px;padding-bottom:40px}.home-title{margin-bottom:16px;font-size:3rem;line-height:1.1}.home-subtitle{font-family:var(--font-mono);color:var(--text-secondary);font-size:1rem}.home-section-title{border-bottom:1px solid var(--text-primary);margin-bottom:24px;padding-bottom:8px;font-size:1.5rem}.home-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;display:grid}.home-card{border:2px solid var(--border-color);background:var(--bg-primary);box-shadow:4px 4px 0 var(--border-color);padding:24px;transition:transform .1s,box-shadow .1s;position:relative}.home-card:hover{box-shadow:2px 2px 0 var(--border-color);transform:translate(2px,2px)}.home-card-icon{margin-bottom:16px;font-size:2rem;display:block}.home-card-title{margin-bottom:8px;font-size:1.2rem}.home-card-desc{color:var(--text-secondary);font-size:.9rem}.calc-header{margin-bottom:40px}.calc-breadcrumb{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:12px;font-size:.8rem}.calc-title{margin-bottom:12px;font-size:2.5rem}.calc-description{color:var(--text-secondary);border-left:4px solid var(--border-color);padding-left:16px;font-size:1rem}.calc-card{border:2px solid var(--border-color);background:var(--bg-primary);box-shadow:8px 8px 0 var(--border-color);margin-bottom:32px;padding:32px}#app{flex-direction:column;display:flex}.calc-container{order:1}.calc-results{order:2;margin-top:32px}.bottom-area{order:3;margin-top:40px}.calc-card-title{border-bottom:2px dashed var(--border-color);margin-bottom:24px;padding-bottom:12px;font-size:1.25rem}.form-group{margin-bottom:24px}.form-label{text-transform:uppercase;margin-bottom:8px;font-size:.85rem;font-weight:700;display:block}.form-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.input-wrapper{position:relative}.form-input{border:none;border-bottom:2px solid var(--border-color);width:100%;font-family:var(--font-mono);color:var(--text-primary);background:0 0;border-radius:0;outline:none;padding:12px 0;font-size:1.2rem}.form-input:focus{border-bottom-color:var(--accent-red)}.form-input.has-suffix{padding-right:40px}.input-suffix{color:var(--text-muted);font-weight:700;position:absolute;top:14px;right:0}.form-select{border:none;border-bottom:2px solid var(--border-color);width:100%;font-family:var(--font-ui);appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23111111' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 6l3.5 4 3.5-4z'/%3E%3C/svg%3E") 100% no-repeat;border-radius:0;outline:none;padding:12px 0;font-size:1.1rem;font-weight:600}.radio-group{gap:12px;display:flex}.radio-option{flex:1}.radio-option input{display:none}.radio-option label{border:2px solid var(--border-color);text-align:center;cursor:pointer;background:var(--bg-primary);padding:12px;font-weight:700;display:block}.radio-option input:checked+label{background:var(--border-color);color:var(--bg-primary)}.calc-btn{background:var(--border-color);width:100%;color:var(--bg-primary);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;border:none;margin-top:16px;padding:20px;font-size:1.2rem;font-weight:800;transition:transform .1s}.calc-btn:active{transform:scale(.98)}.calc-btn:hover{background:var(--accent-red)}.result-main{border:2px dashed var(--border-color);text-align:center;background:#fff;margin-bottom:24px;padding:40px;position:relative}.result-main:before,.result-main:after{content:"";background:var(--bg-primary);border:2px solid var(--border-color);border-radius:50%;width:20px;height:20px;position:absolute;top:50%;transform:translateY(-50%)}.result-main:before{border-left:none;left:-12px}.result-main:after{border-right:none;right:-12px}.result-main-label{font-family:var(--font-mono);text-transform:uppercase;color:var(--text-secondary);margin-bottom:12px;font-weight:700}.result-main-value{font-family:var(--font-mono);color:var(--accent-red);font-size:3rem;font-weight:700;line-height:1}.result-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:24px;display:grid}.result-card{border:2px solid var(--border-color);text-align:center;background:#fff;padding:16px}.result-card-label{color:var(--text-secondary);text-transform:uppercase;margin-bottom:8px;font-size:.85rem;font-weight:700}.result-card-value{font-family:var(--font-mono);color:var(--text-primary);font-size:1.4rem;font-weight:700}.result-card-sub{color:var(--text-muted);margin-top:4px;font-size:.8rem}.result-breakdown{border:2px solid var(--border-color);background:#fff;margin-bottom:16px;padding:24px}.result-breakdown-title{border-bottom:2px dashed var(--border-color);margin-bottom:16px;padding-bottom:12px;font-size:1.1rem;font-weight:800}.result-list{margin:0;padding:0;list-style:none}.result-list-item{border-bottom:1px dashed var(--border-color);font-family:var(--font-mono);justify-content:space-between;padding:10px 0;font-size:.95rem;display:flex}.result-list-item:last-child{border-bottom:none}.result-list-item span:first-child{color:var(--text-secondary)}.result-list-item span:last-child{color:var(--text-primary);font-weight:700}.result-info{border:2px solid var(--border-color);border-left:6px solid var(--accent-blue);color:var(--text-secondary);background:#fff;margin-top:24px;padding:16px;font-size:.9rem}.ad-space{margin:40px 0 24px}.related-section{border-top:2px solid var(--border-color);margin-top:32px;padding-top:24px}.related-title{text-transform:uppercase;margin-bottom:16px;font-size:1.1rem;font-weight:800}.related-grid{flex-wrap:wrap;gap:12px;display:flex}.related-card{border:2px solid var(--border-color);background:var(--bg-primary);align-items:center;padding:12px 16px;font-size:.95rem;font-weight:700;transition:background .1s,transform .1s,box-shadow .1s;display:inline-flex}.related-card:hover{box-shadow:4px 4px 0 var(--border-color);background:#fff;transform:translate(-2px,-2px)}.related-card-icon{margin-right:8px;font-size:1.1rem}.footer{text-align:center;font-family:var(--font-mono);color:var(--text-muted);margin-top:auto;padding:40px 0;font-size:.8rem}.image-home{max-width:1080px}.image-tool-main{margin-left:0;padding-top:32px}.image-hero{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:22px;padding:0 0 22px;display:flex}.image-hero-kicker,.image-section-label,.image-workbench-head{font-family:var(--font-mono);letter-spacing:.09em;font-size:.75rem;font-weight:700}.image-hero-kicker{color:var(--accent-red);margin-bottom:8px}.image-hero-title{letter-spacing:-.055em;white-space:nowrap;margin:0;font-size:clamp(1.8rem,3.4vw,3.1rem);line-height:1}.image-hero-title span{color:var(--accent-red)}.image-hero-copy{max-width:350px;color:var(--text-secondary);text-align:right;margin:0;font-size:.88rem;line-height:1.55}.image-workbench{border:2px solid var(--border-color);box-shadow:10px 10px 0 var(--border-color);background:var(--bg-primary);margin:0 10px 64px 0}.image-workbench-head{border-bottom:2px solid var(--border-color);background:var(--text-primary);min-height:42px;color:var(--bg-primary);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.image-workbench-head span:last-child{color:#a7e8bd}.image-workbench-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);display:grid}.image-preview-panel{border-right:2px solid var(--border-color);min-height:610px;padding:28px;display:flex}.image-dropzone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;background:#ffffff47;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;min-height:100%;transition:background .15s,transform .15s;display:flex}.image-dropzone:hover,.image-dropzone.is-dragging{box-shadow:6px 6px 0 var(--accent-red);background:#fff;transform:translate(-3px,-3px)}.image-drop-mark{border:2px solid var(--border-color);width:66px;height:66px;font-family:var(--font-mono);border-radius:50%;place-items:center;margin-bottom:14px;font-size:2.3rem;display:grid}.image-dropzone strong{font-size:1.25rem}.image-dropzone span{color:var(--text-secondary)}.image-dropzone small{font-family:var(--font-mono);color:var(--text-muted);margin-top:14px}.image-canvas-wrap{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.image-canvas-stage{border:2px solid var(--border-color);background-color:#d6d5cf;background-image:linear-gradient(45deg,#c6c5bf 25%,#0000 25%),linear-gradient(-45deg,#c6c5bf 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#c6c5bf 75%),linear-gradient(-45deg,#0000 75%,#c6c5bf 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;max-width:100%;max-height:520px;position:relative;overflow:hidden}.image-canvas-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.image-replace-btn{border:2px solid var(--border-color);background:0 0;margin:18px 0 12px;padding:10px 16px;font-weight:700}.image-replace-btn:hover{background:#fff}.image-file-meta{border-top:1px dashed var(--border-color);width:100%;font-family:var(--font-mono);color:var(--text-secondary);justify-content:space-between;gap:12px;padding-top:12px;font-size:.7rem;display:flex}.image-file-meta span:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.image-controls{padding:28px}.image-control-group{border:0;margin:0 0 28px;padding:0}.image-control-group legend{border-bottom:2px dashed var(--border-color);text-transform:uppercase;width:100%;margin-bottom:14px;padding-bottom:9px;font-weight:800}.image-control-group legend b{color:var(--accent-red);font-family:var(--font-mono);margin-right:8px}.image-preset-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.image-preset-grid button,.image-segmented button{border:1px solid var(--border-color);background:0 0;padding:10px 6px}.image-preset-grid button strong{font-family:var(--font-mono);font-size:1rem;display:block}.image-preset-grid button span{color:var(--text-muted);margin-top:2px;font-size:.7rem;display:block}.image-preset-grid button:hover,.image-preset-grid button.active,.image-segmented button.active{background:var(--text-primary);color:var(--bg-primary)}.image-preset-grid button.active span{color:#ddd}.image-segmented{grid-template-columns:1fr 1fr;gap:7px;display:grid}.image-segmented button{font-weight:700}.image-position-controls{gap:12px;margin-top:16px;display:grid}.image-position-controls label,.image-quality{font-size:.78rem;font-weight:700}.image-position-controls label span,.image-quality span{float:right;font-family:var(--font-mono)}.image-position-controls input,.image-quality input{width:100%;accent-color:var(--accent-red);margin-top:6px}.image-control-note{border-left:4px solid var(--accent-blue);color:var(--text-secondary);background:#fff;padding:10px 12px;font-size:.78rem}.image-dimension-row{grid-template-columns:1fr 18px 1fr;align-items:end;gap:8px;display:grid}.image-dimension-row i{text-align:center;padding-bottom:10px;font-style:normal}.image-dimension-row label,.image-output-row label{text-transform:uppercase;font-size:.72rem;font-weight:700;position:relative}.image-dimension-row input,.image-output-row input,.image-output-row select{border:0;border-bottom:2px solid var(--border-color);width:100%;font-family:var(--font-mono);background:0 0;border-radius:0;padding:9px 32px 9px 0;font-size:1rem;font-weight:700}.image-dimension-row label>span{font-family:var(--font-mono);font-size:.68rem;position:absolute;bottom:10px;right:0}.image-output-row{grid-template-columns:1fr 1.25fr;gap:18px;margin-top:18px;display:grid}.image-output-row label>div{position:relative}.image-output-row label>div span{font-size:.68rem;position:absolute;bottom:10px;right:0}.image-png-note{border-bottom:2px solid var(--border-color);align-self:end;padding:6px 0 8px}.image-png-note b,.image-png-note span{display:block}.image-png-note b{font-size:.8rem}.image-png-note span{color:var(--text-muted);margin-top:3px;font-size:.68rem}.image-quality{margin-top:18px;display:block}.image-checklist{flex-wrap:wrap;gap:6px;margin-top:-8px;margin-bottom:16px;display:flex}.image-checklist span{border:1px solid var(--border-color);font-family:var(--font-mono);background:#fff;padding:5px 8px;font-size:.66rem}.image-error{border-left:4px solid var(--accent-red);background:#fff;margin-bottom:10px;padding:8px 10px;font-size:.82rem}.image-result-summary{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.image-result-summary>div{border:2px solid var(--border-color);background:#fff;padding:10px 12px}.image-result-summary span,.image-result-summary strong{display:block}.image-result-summary span{color:var(--text-secondary);font-size:.68rem}.image-result-summary strong{font-family:var(--font-mono);margin-top:3px;font-size:1rem}.image-download-btn{border:2px solid var(--border-color);background:var(--accent-red);color:#fff;width:100%;min-height:62px;box-shadow:5px 5px 0 var(--border-color);justify-content:space-between;align-items:center;padding:0 18px;font-size:1rem;font-weight:800;text-decoration:none;display:flex}.image-download-btn:hover:not(:disabled){box-shadow:3px 3px 0 var(--border-color);transform:translate(2px,2px)}.image-download-btn:disabled{background:var(--bg-secondary);color:var(--text-muted);cursor:not-allowed}.image-download-btn b{font-size:1.6rem}.image-privacy-note{text-align:center;font-family:var(--font-mono);color:var(--text-secondary);margin-top:14px;font-size:.65rem}.image-how{border-top:2px solid var(--border-color);margin-bottom:20px;padding-top:22px}.image-how ol{counter-reset:steps;margin-top:22px;list-style:none}.image-how li{counter-increment:steps;border-top:1px dashed var(--border-color);grid-template-columns:42px 180px 1fr;align-items:baseline;gap:14px;padding:16px 0;display:grid}.image-how li:before{content:"0" counter(steps);font-family:var(--font-mono);color:var(--accent-red);font-weight:700}.image-how li span{color:var(--text-secondary)}.image-guide,.image-use-cases,.image-faq{border-top:2px solid var(--border-color);padding:28px 0 36px}.image-guide h2,.image-use-cases h2,.image-faq h2{margin:8px 0 22px;font-size:clamp(1.5rem,3vw,2.25rem)}.image-guide-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.image-guide-grid article{border:2px solid var(--border-color);background:#ffffff47;padding:20px}.image-guide-grid article>span{font-family:var(--font-mono);color:var(--accent-red);font-weight:700}.image-guide-grid h3{margin:14px 0 8px;font-size:1rem}.image-guide-grid p,.image-use-cases li span,.image-faq p{color:var(--text-secondary);font-size:.9rem;line-height:1.7}.image-use-cases{grid-template-columns:.7fr 1.3fr;gap:40px;display:grid}.image-use-cases ul{list-style:none}.image-use-cases li{border-top:1px dashed var(--border-color);grid-template-columns:140px 1fr;gap:16px;padding:16px 0;display:grid}.image-faq details{border-top:1px dashed var(--border-color);padding:16px 0}.image-faq details:last-child{border-bottom:1px dashed var(--border-color)}.image-faq summary{cursor:pointer;font-weight:800}.image-faq details p{padding:12px 22px 0 0}.footer-links{justify-content:center;gap:16px;margin-top:10px;display:flex}.footer-links a{text-underline-offset:3px;text-decoration:underline}.policy-page{max-width:760px}.policy-page header{border-bottom:2px solid var(--border-color);margin-bottom:12px;padding-bottom:28px}.policy-page h1{margin:8px 0 12px;font-size:clamp(2.2rem,6vw,4.2rem)}.policy-page header p{font-family:var(--font-mono);color:var(--text-muted);font-size:.8rem}.policy-page section{border-bottom:1px dashed var(--border-color);padding:24px 0}.policy-page h2{margin-bottom:10px;font-size:1.1rem}.policy-page section p{color:var(--text-secondary);margin-bottom:10px;line-height:1.8}.legacy-nav{opacity:.6;border-top:1px dashed var(--border-color);padding-top:22px}@media (max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{inset:var(--header-height) 0 0;opacity:0;pointer-events:none;z-index:80;background:#11111159;transition:opacity .2s;position:fixed}.sidebar-overlay.open{opacity:1;pointer-events:auto}.main-content{margin-left:0;padding:24px 16px}.image-tool-main{padding-top:18px;padding-bottom:24px}.home-title{font-size:2.2rem}.calc-title{font-size:2rem}.result-main-value{font-size:2.2rem}.header-menu-button{display:block}.image-hero{padding-top:0;display:block}.image-hero-title{white-space:normal;font-size:clamp(1.7rem,8vw,2.5rem)}.image-hero-copy{text-align:left;margin-top:10px}.image-workbench{box-shadow:6px 6px 0 var(--border-color);margin-right:6px}.image-workbench-grid{grid-template-columns:1fr}.image-preview-panel{border-right:0;border-bottom:2px solid var(--border-color);min-height:460px;padding:18px}.image-controls{padding:22px 18px}.image-how li{grid-template-columns:34px 1fr}.image-how li span{grid-column:2}.image-guide-grid{grid-template-columns:1fr}.image-use-cases{grid-template-columns:1fr;gap:0}.image-use-cases li{grid-template-columns:1fr;gap:4px}}.datepicker-container{width:100%;position:relative}.datepicker-input{cursor:pointer;background:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%23999\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"></rect><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"></line><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"></line><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"></line></svg>") right 12px center/16px no-repeat;padding-right:36px}.datepicker-dropdown{border:1px solid var(--border-color);z-index:100;background:#fff;border-radius:8px;width:280px;padding:16px;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 4px 12px #0000001a}.datepicker-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.datepicker-btn{cursor:pointer;color:var(--text-color);background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:1.2rem;transition:background .2s}.datepicker-btn:hover{background:var(--bg-color)}.datepicker-title{font-size:1.1rem;font-weight:700}.datepicker-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.datepicker-day-header{color:var(--text-muted);margin-bottom:8px;font-size:.8rem;font-weight:600}.datepicker-day{cursor:pointer;width:32px;height:32px;color:var(--text-color);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:.95rem;transition:all .2s;display:flex}.datepicker-day:hover:not(.empty){background:#0000000d}.datepicker-day.today{color:var(--primary-color);font-weight:700}.datepicker-day.selected{font-weight:700;box-shadow:0 2px 6px #0003;background:var(--primary-color)!important;color:#fff!important}.datepicker-day.empty{cursor:default}
