:root{--bg: #0a0b0d;--surface: #0e1013;--surface-2: #101216;--surface-3: #16191e;--input-bg: #0f1115;--estimate-bg: linear-gradient(180deg, #14171c, #101216);--tile-bg: #181b20;--dropzone-bg: linear-gradient(180deg, #121519, #0f1216);--dropzone-border: #333944;--border: #1c1f24;--border-2: #23262d;--border-3: #262a31;--border-4: #2b3038;--text-1: #f2f4f7;--text-2: #edeff2;--text-3: #c3c8d0;--text-4: #aeb4be;--text-5: #8b919b;--text-6: #656b74;--text-7: #5a5f68;--accent: #4d7cfe;--accent-hover: #6089ff;--accent-text: #9db8ff;--accent-icon: #7ba0ff;--accent-soft: rgba(77, 124, 254, .12);--accent-soft-border: rgba(77, 124, 254, .3);--accent-strip-bg: rgba(77, 124, 254, .08);--accent-strip-border: rgba(77, 124, 254, .24);--privacy-title: #dfe6ff;--privacy-text: #9aa3b5;--privacy-strong: #c3ccdd;--seg-active-bg: rgba(77, 124, 254, .14);--seg-active-color: #9db8ff;--seg-active-shadow: none;--track: #23262c;--range-thumb-bg: #edeff2;--range-thumb-ring: #101216;--range-thumb-shadow: 0 2px 6px rgba(0, 0, 0, .5);--danger-text: #c98b8b;--danger-border: #3d2b2e;--danger-border-hover: #5a3a3e;--danger-soft: rgba(201, 139, 139, .08);--success-icon: #59c894;--success-text: #7fd4ab;--success-soft: rgba(46, 160, 110, .14);--success-border: rgba(46, 160, 110, .32);--btn-shadow: 0 8px 20px -6px rgba(77, 124, 254, .55);--btn-shadow-lg: 0 10px 24px -8px rgba(77, 124, 254, .6);--chip-bg: rgba(10, 11, 13, .72);--chip-fg: #e6e8ec;--tile-label: rgba(255, 255, 255, .62);--fade-to: var(--surface);--scrollbar: #2b3038}:root[data-theme=light]{--bg: #eef0f4;--surface: #f7f8fa;--surface-2: #ffffff;--surface-3: #f0f2f5;--input-bg: #fbfcfd;--estimate-bg: #fbfcfd;--tile-bg: #eef0f3;--dropzone-bg: #ffffff;--dropzone-border: #cdd2da;--border: #e9ebf0;--border-2: #e4e7ec;--border-3: #e4e7ec;--border-4: #d5d9e0;--text-1: #14171c;--text-2: #14171c;--text-3: #2c313a;--text-4: #3f454e;--text-5: #5b616b;--text-6: #9096a0;--text-7: #9096a0;--accent-hover: #3d6bf0;--accent-text: #3d6bf0;--accent-icon: #3d6bf0;--accent-soft: rgba(77, 124, 254, .1);--accent-soft-border: rgba(77, 124, 254, .28);--accent-strip-bg: rgba(77, 124, 254, .06);--accent-strip-border: rgba(77, 124, 254, .2);--privacy-title: #243a7a;--privacy-text: #5b616b;--privacy-strong: #14171c;--seg-active-bg: #ffffff;--seg-active-color: #3d6bf0;--seg-active-shadow: 0 1px 2px rgba(20, 23, 28, .06);--track: #e7e9ee;--range-thumb-bg: #ffffff;--range-thumb-ring: #ffffff;--range-thumb-shadow: 0 1px 5px rgba(20, 23, 28, .28), 0 0 0 1px #d5d9e0;--danger-text: #b25454;--danger-border: #ecd3d3;--danger-border-hover: #ddb3b3;--danger-soft: rgba(178, 84, 84, .06);--success-icon: #2ea06e;--success-text: #1e7a52;--success-soft: rgba(46, 160, 110, .1);--success-border: rgba(46, 160, 110, .3);--btn-shadow: 0 8px 20px -6px rgba(77, 124, 254, .4);--btn-shadow-lg: 0 10px 24px -8px rgba(77, 124, 254, .42);--chip-bg: rgba(255, 255, 255, .85);--chip-fg: #14171c;--tile-label: rgba(255, 255, 255, .85);--fade-to: var(--surface);--scrollbar: #cdd2da}*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{margin:0;background:var(--surface);color:var(--text-2);font-family:Archivo,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:14px}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}::selection{background:#4d7cfe52}button{font-family:Archivo,system-ui,sans-serif}.mono{font-family:IBM Plex Mono,monospace}.ph{line-height:1;display:inline-block}@keyframes cadSweep{0%{transform:translate(-120%)}to{transform:translate(220%)}}@keyframes cadPulse{0%,to{opacity:.4}50%{opacity:1}}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--accent);color:#fff;border:none;border-radius:11px;padding:12px 22px;font-size:14.5px;font-weight:600;cursor:pointer;box-shadow:var(--btn-shadow);transition:background .15s ease}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:default}.btn-primary .ph{font-size:17px}.btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--text-4);border:1px solid var(--border-4);border-radius:10px;padding:12px 16px;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.btn-ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text-2)}.btn-ghost:disabled{opacity:.5;cursor:default}.btn-ghost .ph{font-size:16px}.btn-danger{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--danger-text);border:1px solid var(--danger-border);border-radius:10px;padding:10px 20px;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.btn-danger:hover{background:var(--danger-soft);border-color:var(--danger-border-hover)}.btn-danger .ph{font-size:16px}.seg{display:inline-flex;background:var(--surface-3);border:1px solid var(--border-3);border-radius:9px;padding:3px;gap:2px}.seg button{border:none;background:transparent;font-size:12.5px;padding:5px 11px;border-radius:6px;color:var(--text-5);cursor:pointer;transition:background .12s ease,color .12s ease}.seg button.active{background:var(--seg-active-bg);color:var(--seg-active-color);font-weight:600;box-shadow:var(--seg-active-shadow)}.seg.wide{display:flex;border-radius:10px;gap:3px}.seg.wide button{flex:1;text-align:center;font-size:13px;padding:8px;border-radius:7px}.cad-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;margin:5px 0;border-radius:999px;background:linear-gradient(90deg,var(--accent) var(--fill, 0%),var(--track) var(--fill, 0%));outline:none;cursor:pointer;display:block}.cad-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--range-thumb-bg);border:3px solid var(--range-thumb-ring);box-shadow:var(--range-thumb-shadow);cursor:pointer}.cad-range::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--range-thumb-bg);border:3px solid var(--range-thumb-ring);box-shadow:var(--range-thumb-shadow);cursor:pointer}.cad-range:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:999px;border:3px solid transparent;background-clip:content-box}*::-webkit-scrollbar-track{background:transparent}
