@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Crimson Pro;src:url(/fonts/CrimsonPro-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Crimson Pro;src:url(/fonts/CrimsonPro-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #f5f4f0;--surface: #ffffff;--border: #d8d5cd;--text: #2c2c2c;--text-muted: #7a7a72;--accent: #3d5a3e;--accent-hover: #4e724f;--drop-bg: #eae8e2;--radius: 6px;--font-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif: "Crimson Pro", Georgia, "Times New Roman", serif;--maxw: 1400px}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;display:flex;flex-direction:column}a{color:var(--accent)}a:hover{color:var(--accent-hover)}.hidden{display:none!important}.site-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;flex-wrap:wrap;padding:.7rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--border)}.site-header .brand{font-family:var(--font-sans);font-size:1.15rem;font-weight:600;color:var(--text);text-decoration:none;letter-spacing:.01em}.site-header .brand:hover{color:var(--accent)}.header-cta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.header-cta-label{font-size:.8rem;font-weight:500;color:var(--text-muted)}.header-btn{font-size:.8rem;font-weight:500;padding:.35rem .7rem;border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);text-decoration:none;white-space:nowrap;transition:all .15s}.header-btn:hover{background:var(--accent);color:#fff}.header-btn .btn-short{display:none}@media(max-width:600px){.header-btn .btn-long{display:none}.header-btn .btn-short{display:inline}}.site-main{flex:1 0 auto;width:100%;padding:2rem 1.5rem}.site-footer{border-top:1px solid var(--border);padding:1.5rem;text-align:center}.site-footer .footer-inner{max-width:var(--maxw);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.35rem}.site-footer .footer-logo{height:40px;width:auto;margin-bottom:.25rem}.site-footer .footer-brand{font-size:1rem;font-weight:600;color:var(--text);text-decoration:none}.site-footer .footer-brand:hover{color:var(--accent)}.site-footer .footer-tagline{font-size:.85rem;color:var(--text-muted);max-width:46ch;margin:0 auto}.site-footer .footer-copy{font-size:.78rem;color:var(--text-muted);margin-top:.3rem}.site-footer .footer-analytics{font-size:.72rem;color:var(--text-muted);opacity:.7}.site-footer .footer-analytics a{color:inherit}.container{max-width:var(--maxw);margin:0 auto}h1{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;letter-spacing:-.01em}.tool-head{display:flex;align-items:center;gap:.6rem;margin-bottom:1.5rem}.tool-head h1{margin-bottom:0}.tool-head .tool-icon{width:22px;height:22px;flex:none}.panels{display:grid;grid-template-columns:380px 1fr;gap:1.5rem;align-items:start}@media(max-width:700px){.panels{grid-template-columns:1fr}}.controls{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.control-group label{display:block;font-size:.8rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem}.label-hint{text-transform:none;letter-spacing:0;font-weight:400;font-size:.72rem;color:var(--text-muted);opacity:.8;margin-left:.3rem}.slider-row{display:flex;align-items:center;gap:.6rem}.slider-row input[type=range],.controls input[type=range]{flex:1;accent-color:var(--accent)}.slider-val{font-size:.82rem;color:var(--text-muted);min-width:2.5rem;text-align:right}.btn{font-family:inherit;font-size:.85rem;font-weight:500;padding:.6rem 1rem;border:none;border-radius:var(--radius);cursor:pointer;transition:all .15s}.btn-sm{font-size:.78rem;padding:.3rem .55rem}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{background:var(--border);cursor:not-allowed}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text-muted)}.btn-outline:hover{border-color:var(--text-muted);color:var(--text)}.btn-row{display:flex;gap:.5rem}.btn-row .btn{flex:1}.error-msg{font-size:.82rem;color:#9b3c3c;background:#fdf0f0;border:1px solid #e8c4c4;border-radius:var(--radius);padding:.5rem .75rem}.preview-area{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-height:300px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:1rem}.drop-zone{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:background .15s}.drop-zone:hover,.drop-zone.dragover{background:var(--drop-bg)}.drop-icon{width:48px;height:48px;border:2px dashed var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:1.4rem}.drop-text{font-size:.85rem;color:var(--text-muted)}.drop-text span{color:var(--accent);text-decoration:underline;cursor:pointer}
