:root{--hangar-surface: #f3f1ec;--hangar-surface-raised: #ffffff;--hangar-text: #1c1b19;--hangar-muted: #5c574f;--hangar-line: #2f3a44;--hangar-accent: #b45309;--hangar-error: #9f1239;--hangar-border: #d6d0c4;--hangar-canvas: #dfe7ef}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;color:var(--hangar-text);background:var(--hangar-surface)}.hangar-screen{display:flex;flex-direction:column;gap:1rem;padding:1rem;max-width:1200px;margin:0 auto}.hangar-panel{background:var(--hangar-surface-raised);border:1px solid var(--hangar-border);padding:1rem}.hangar-form{display:grid;gap:.75rem}.hangar-field{display:flex;flex-direction:column;gap:.35rem}.hangar-field label{font-size:.95rem}.hangar-field input,.hangar-field select,.hangar-choice button{min-height:44px;min-width:44px;font:inherit;padding:.5rem .75rem;border:1px solid var(--hangar-border);background:var(--hangar-surface-raised);color:var(--hangar-text)}.hangar-choice{display:flex;flex-wrap:wrap;gap:.5rem}.hangar-choice button[aria-pressed=true]{border-color:var(--hangar-accent);background:#fff7ed}.hangar-error{color:var(--hangar-error)}.hangar-muted{color:var(--hangar-muted)}.hangar-details{border:1px solid var(--hangar-border);background:var(--hangar-surface);padding:0 .75rem .75rem}.hangar-details summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;font:inherit;font-weight:600;color:var(--hangar-text)}.hangar-details summary::-webkit-details-marker{display:none}.hangar-details summary:before{content:"▸";margin-right:.5rem;color:var(--hangar-accent)}.hangar-details[open] summary:before{content:"▾"}.hangar-details[open] summary{margin-bottom:.75rem;border-bottom:1px solid var(--hangar-border)}.hangar-details .hangar-drawing{margin-bottom:.75rem}.hangar-readout{display:grid;gap:.35rem;margin:0}.hangar-readout div{display:flex;justify-content:space-between;gap:1rem}.hangar-drawing{overflow-x:auto;border:1px solid var(--hangar-border);background:var(--hangar-surface-raised);padding:.75rem}.hangar-drawing svg{display:block;max-width:100%;height:auto;stroke:var(--hangar-line);fill:none}.hangar-drawing text{fill:var(--hangar-text);stroke:none;font-size:12px}.hangar-opening{border:1px solid var(--hangar-border);padding:.75rem;margin:0;display:grid;gap:.5rem;position:relative}.hangar-opening legend{padding:0 .35rem;font-weight:600}.hangar-opening-remove{position:absolute;top:.35rem;right:.35rem;min-height:44px;min-width:44px;font:inherit;border:1px solid var(--hangar-border);background:var(--hangar-surface-raised);cursor:pointer}.hangar-viewport{position:relative;width:100%;min-height:360px;background:var(--hangar-canvas);border:1px solid var(--hangar-border)}.hangar-viewport--expanded{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;width:auto;min-height:0;height:100%;border:none;background:var(--hangar-canvas)}.hangar-viewport-fs{position:absolute;top:.5rem;right:.5rem;z-index:2;min-height:44px;min-width:44px;padding:.45rem .75rem;font:inherit;border:1px solid var(--hangar-border);background:var(--hangar-surface-raised);color:var(--hangar-text);cursor:pointer}.hangar-stages{margin-top:.75rem;padding:.75rem;border:1px solid var(--hangar-border);background:var(--hangar-surface);display:grid;gap:.75rem}.hangar-stages-accordion{border:1px solid var(--hangar-border);background:var(--hangar-surface-raised);padding:0 .75rem .75rem}.hangar-stages-accordion summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;font:inherit;font-weight:600;color:var(--hangar-text)}.hangar-stages-accordion summary::-webkit-details-marker{display:none}.hangar-stages-accordion summary:before{content:"▸";margin-right:.5rem;color:var(--hangar-accent)}.hangar-stages-accordion[open] summary:before{content:"▾"}.hangar-stages-accordion[open] summary{margin-bottom:.75rem;border-bottom:1px solid var(--hangar-border)}.hangar-stages-hint{margin:0 0 .5rem;color:var(--hangar-muted);font-size:.9rem}.hangar-stages-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.hangar-stages-row{display:grid;gap:.2rem}.hangar-stages-switch{display:flex;align-items:center;gap:.65rem;min-height:44px;cursor:pointer}.hangar-stages-switch input{width:44px;height:24px;min-width:44px;min-height:24px;accent-color:var(--hangar-accent)}.hangar-stages-switch input:disabled+span{color:var(--hangar-muted)}.hangar-stages-note{font-size:.85rem;margin-left:3.2rem}.hangar-stages-actions{display:flex;flex-wrap:wrap;gap:.5rem}.hangar-stages-btn{min-height:44px;min-width:44px;font:inherit;padding:.5rem .85rem;border:1px solid var(--hangar-border);background:var(--hangar-surface-raised);color:var(--hangar-text);cursor:pointer}.hangar-stages-btn:disabled{opacity:.55;cursor:not-allowed}.hangar-viewport canvas{width:100%!important;height:360px!important;display:block}.hangar-viewport--expanded canvas{width:100%!important;height:100%!important}.hangar-reference img{display:block;width:100%;max-width:480px;height:auto}.hangar-reference-placeholder{min-height:120px;display:grid;place-items:center;border:1px dashed var(--hangar-border);color:var(--hangar-muted)}@media(min-width:768px){.hangar-screen{padding:1.25rem;gap:1.25rem}.hangar-viewport:not(.hangar-viewport--expanded) canvas{height:480px!important}}@media(min-width:1024px){.hangar-screen{display:grid;grid-template-columns:minmax(280px,360px) 1fr;align-items:start}.hangar-form-wrap,.hangar-reference{grid-column:1}.hangar-result{grid-column:2;grid-row:1 / span 3}}
