:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#eaf0f5;background:#0b1118;font-synthesis:none;--panel:#121b25;--line:#293746;--muted:#a3b1bf;--accent:#d4f85a;--ink:#101709}
*{box-sizing:border-box}body{margin:0;font-size:16px}button,input,select{font:inherit}button,select{cursor:pointer}button{border:1px solid var(--line);border-radius:6px;padding:10px 15px;color:inherit;background:#1b2835;font-size:.875rem;font-weight:600}button:hover{background:#293b4a}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:var(--accent);color:var(--ink);border-color:var(--accent)}.primary:hover{background:#e2ff82}.quiet{background:transparent}.small{padding:7px 10px;font-size:.8125rem}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,canvas:focus-visible{outline:2px solid var(--accent);outline-offset:3px}select{padding:7px 10px;border:1px solid #344556;background:#172431;color:#eaf0f5;border-radius:5px;font-size:.875rem}a{color:inherit;text-decoration:none}
.app-header{height:76px;display:flex;gap:24px;align-items:center;padding:0 32px;border-bottom:1px solid var(--line);background:#101922}.brand{display:flex;align-items:center;gap:18px}.brand b{font-weight:900;font-size:1.9rem;letter-spacing:-.1rem;color:var(--accent)}.brand span{font-size:.8125rem;font-weight:700;letter-spacing:.15rem;border-left:1px solid #35434e;padding:4px 0 4px 18px}.header-actions{display:flex;gap:10px;margin-left:auto}.header-actions .primary span{margin-left:10px}.workspace{display:grid;grid-template-columns:310px minmax(0,1fr);max-width:1920px;margin:0 auto}.parameters{border-right:1px solid var(--line);background:#101922;padding:26px 24px;position:sticky;top:0;align-self:start;max-height:100dvh;overflow:auto;scrollbar-width:thin;scrollbar-color:#40505e #101922}.eyebrow{display:block;font-size:.75rem;letter-spacing:.13em;color:var(--muted);font-weight:600}.model-heading{margin-bottom:25px}.model-heading input{width:100%;padding:9px 0;color:#f0f6fa;border:0;border-bottom:1px solid #41515e;border-radius:0;background:transparent;font-size:1.4rem;font-weight:600;min-width:0}.model-heading p{font-size:.8125rem;color:var(--muted);line-height:1.5;margin:10px 0}.parameter-group{border-top:1px solid var(--line);padding:0}.parameter-group summary{font-size:.9375rem;font-weight:600;padding:18px 2px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}.parameter-group summary:after{content:'+';color:#b7c5d3;font-size:1.1rem}.parameter-group[open] summary:after{content:'−'}.parameter-note{font-size:.875rem;color:var(--muted);line-height:1.5;margin:-3px 0 18px}.fields{padding-bottom:14px}.field{margin:0 0 17px}.field:last-child{margin-bottom:2px}.field-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.field label{font-size:.875rem;color:#bdcbd7;line-height:1.3}.number-wrap{display:flex;align-items:center;gap:5px;border:1px solid #354556;border-radius:4px;padding:4px 6px;background:#0e1720}.number-wrap input{appearance:textfield;width:59px;text-align:right;border:0;padding:2px 0;background:transparent;color:#f0f6fb;font-size:.875rem;font-variant-numeric:tabular-nums;min-width:0}.number-wrap input::-webkit-inner-spin-button{appearance:none}.number-wrap span{font-size:.75rem;color:#a3b1bf}.field input[type=range]{appearance:none;display:block;margin:12px 0 0;width:100%;height:4px;border-radius:2px;background:#344351;accent-color:var(--accent);cursor:pointer}.field input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);width:12px;height:12px;border-radius:50%;border:2px solid #172329}.field input[type=range]::-moz-range-thumb{background:var(--accent);width:10px;height:10px;border:2px solid #172329;border-radius:50%}.reset{width:100%;font-weight:500;margin-top:12px}.sample-note{font-size:.8125rem;color:var(--muted);line-height:1.55;margin-bottom:0}.drawing-workspace{padding:26px 32px 0;min-width:0}.workspace-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.workspace-title h1{font-size:1.65rem;margin:6px 0 0;line-height:1.2;font-weight:600;word-break:break-word}.unit-tag{font-size:.75rem;color:#afbdc9;letter-spacing:.07em}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-bottom:20px}.metric{background:#15212d;padding:16px 18px;min-width:0}.metric .metric-label{font-size:.8125rem;color:var(--muted);display:block;margin-bottom:6px}.metric strong{font-size:1.5rem;font-weight:500;letter-spacing:-.035em;font-variant-numeric:tabular-nums;display:block;white-space:nowrap}.metric strong small{font-size:.8125rem;letter-spacing:0;color:#b3c1cb;margin-left:3px;font-weight:400}.metric .metric-note{display:block;color:#a9b8c6;font-size:.75rem;margin-top:7px;line-height:1.35}.metric.dimensions strong{font-size:1.3rem}.drawing-panel{border:1px solid var(--line);background:#111b25;border-radius:8px;margin-bottom:18px;overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;border-bottom:1px solid #253240;padding:12px 18px}.panel-header h2{font-size:.9375rem;margin:0;font-weight:500}.panel-header h2 span{font-size:.75rem;color:#9eafbd;margin-right:13px;font-weight:400}.legend{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:#bdcbd7}.legend i{display:block;width:19px;height:2px;background:var(--accent)}.drawing-panel svg{display:block;width:100%;height:auto;overflow:visible}.panel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px 13px;font-size:.75rem;line-height:1.4;color:#a8b7c5}.panel-footer span:first-child,.panel-footer span:last-child{flex-shrink:0}.inline-control{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:#b5c4d0}.inline-control select{font-size:.8125rem;padding:4px 7px}.model-controls{display:flex;gap:14px;align-items:center}#model-canvas{display:block;width:100%;height:300px;cursor:grab;touch-action:pan-y;background:radial-gradient(ellipse at center,#1c2d3b 0%,#101a24 75%)}#model-canvas:active{cursor:grabbing}.export-bar{border:1px solid var(--line);border-radius:8px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#15212d}.export-bar h2{font-size:1rem;margin:0 0 6px;font-weight:500}.export-bar p{font-size:.8125rem;color:var(--muted);margin:0}.export-actions{display:flex;gap:9px}.export-actions select{max-width:240px}.method-note{margin:22px 0;color:#afbdca;font-size:.875rem;line-height:1.65}.method-note summary{cursor:pointer;color:#cbd6df}.method-note div{max-width:860px;padding:4px 0}.method-note strong{color:#dbe4eb;font-weight:500}.workspace-footer{border-top:1px solid var(--line);padding:18px 0 24px;font-size:.75rem;letter-spacing:.1em;color:#a1b1bf;display:flex;justify-content:space-between;gap:16px}.workspace-footer span{letter-spacing:0;color:#9eaeba}#validation:not(:empty){border:1px solid #a27638;background:#33291c;border-radius:6px;padding:12px 16px;color:#ffe0ae;margin-bottom:18px;font-size:.875rem;line-height:1.5}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(12px);background:#e8f3fb;border:1px solid #eaf3fa;box-shadow:0 12px 40px #0006;color:#152230;padding:12px 18px;border-radius:7px;font-size:.875rem;max-width:min(560px,calc(100% - 30px));opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:10}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1450px){.workspace{grid-template-columns:330px minmax(0,1fr)}.drawing-workspace{padding:32px 44px 0}.drawing-panel svg{max-height:300px}#model-canvas{height:340px}}
@media(max-width:1100px){.app-header{padding:0 22px;gap:18px}.workspace{grid-template-columns:285px minmax(0,1fr)}.parameters{padding:24px 18px}.drawing-workspace{padding:25px 20px 0}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:12px 16px}.panel-footer #plan-caption{display:none}.export-bar{align-items:stretch;flex-direction:column;gap:16px}.export-actions select{flex:1;max-width:none}.panel-header{padding:12px 14px}.model-controls{gap:8px}.model-controls .small{max-width:95px}.inline-control{gap:5px}.panel-footer{flex-wrap:wrap}}
@media(max-width:730px){.app-header{height:auto;min-height:72px;padding:16px;gap:12px;flex-wrap:wrap}.brand{gap:12px}.brand span{font-size:.75rem;padding-left:12px}.brand b{font-size:1.7rem}.header-actions{gap:6px}.header-actions button{padding:9px 10px;font-size:.8125rem}.header-actions .primary span{display:none}.workspace{display:flex;flex-direction:column}.drawing-workspace{padding:22px 16px 0;order:1;width:100%}.parameters{order:2;position:static;max-height:none;border-top:1px solid var(--line);border-right:0;padding:24px 20px;width:100%}.model-heading{margin-bottom:15px}.parameter-group .fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}.field{margin-bottom:10px}.metric strong{font-size:1.5rem}.metric.dimensions strong{font-size:1.25rem}.panel-header h2{font-size:.875rem}.panel-header h2 span{margin-right:8px}.panel-footer{padding:8px 12px 12px;font-size:.75rem}.panel-footer span:first-child,.panel-footer span:last-child{flex-shrink:1}#model-canvas{height:240px}.inline-control{font-size:.75rem}.model-controls .small{font-size:.75rem;padding:6px}.model-controls{gap:10px}.export-bar{padding:18px}.workspace-title h1{font-size:1.45rem}.workspace-footer{padding-bottom:18px}.sample-note{max-width:600px}.parameters:before{content:'JUSTÉR SKIMÅLA';display:block;letter-spacing:.12em;font-size:.75rem;color:var(--accent);margin-bottom:20px}}
@media(max-width:400px){.app-header{gap:14px}.header-actions{width:100%;margin-left:0}.header-actions button{flex:1}.parameter-group .fields{grid-template-columns:1fr}.model-controls .small{display:none}.metrics .metric{padding:12px}.workspace-footer span{display:none}.export-actions{flex-wrap:wrap}.export-actions select{width:100%}.export-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.mobile-adjust{display:none}.drawing-panel svg{max-height:none}
@media(max-width:730px){.mobile-adjust{display:inline-block;border:1px solid #6b8134;color:var(--accent);border-radius:5px;padding:8px 12px;font-size:.875rem}.workspace-title .unit-tag{display:none}}

.mount-reference{padding:0 18px 14px;color:var(--muted);font-size:.875rem;line-height:1.5}.mount-reference p{margin:8px 0 0}.mount-legend{display:flex;flex-wrap:wrap;gap:8px 20px}.mount-legend span{display:flex;align-items:center;gap:8px}.mount-legend i{display:inline-block;width:20px;flex-shrink:0}.rocker-mid-key{border-top:3px dashed #6ccce8}.mount-key{border-top:2px solid #f2f6fa}
