.workspace{grid-template-columns:minmax(0,1.5fr) minmax(320px,.8fr) minmax(320px,.8fr);align-items:stretch;gap:1.25rem;max-width:1680px;height:calc(100vh - 4rem);min-height:700px;margin:0 auto;padding:1rem;display:grid}.panel,.dashboard{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f8f0e7;border-radius:26px;flex-direction:column;padding:1.25rem;display:flex;overflow:hidden}header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.6rem;display:flex}header .header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.status-summary{flex-direction:column;gap:.35rem;display:flex}.status-row{justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.row-title{color:#4a423d;text-transform:uppercase;letter-spacing:.08em;margin-right:auto;font-size:.7rem;font-weight:700}h1{letter-spacing:-.06em;color:#3a2015;font-optical-sizing:auto;font-family:Cormorant Garamond,serif;font-size:clamp(1.8rem,2vw,2.5rem);font-style:normal;font-weight:1200}.brand{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.brand h1{letter-spacing:.16em;text-transform:uppercase;color:#7a7067;margin:0;font-size:.7rem;font-weight:500}h2{font-optical-sizing:auto;font-family:Cormorant Garamond,serif;font-size:1.2rem;font-style:normal;font-weight:600}h3{color:#4a423d;text-transform:uppercase;letter-spacing:.08em;font-optical-sizing:auto;margin:0;padding-bottom:10px;font-family:Cormorant Garamond,serif;font-size:.9rem;font-style:normal;font-weight:600}.logo{width:128px;height:64px}.logo img{object-fit:contain;width:100%;height:100%}.terminal{color:#3a2015;font-optical-sizing:auto;background:#fdfaf6;border:1px solid #d8cbb9;border-radius:18px;flex-direction:column;flex:1;gap:.35rem;min-height:0;padding:.9rem 1rem;font-size:.84rem;font-style:normal;display:flex;overflow-y:auto}.terminal .line{word-break:break-all;gap:.5rem;padding:.05rem 0;display:flex}.terminal .timestamp{color:#7a7067;flex-shrink:0}.terminal .system .content{color:#7d5b34}.terminal .sent .content{color:#3d5a36}.terminal .received .content{color:#5a4a31}.terminal .status{opacity:.45}.terminal .status .content{color:#5a4a31}.input-bar{gap:.7rem;margin-top:1rem;display:flex}input{color:#3a2015;background:#fffdfb;border:1px solid #d8cbb9;border-radius:12px;flex:1;padding:.78rem .9rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}input:focus{border-color:#d4e1c7;outline:none;box-shadow:0 0 0 4px #7a8f651f}input:disabled{opacity:.55;cursor:not-allowed}.status-dot,.btn,button{font-optical-sizing:auto;letter-spacing:.08em;cursor:pointer;border:0;border-radius:100vw;padding:.8rem 1.1rem;font-style:normal;text-decoration:none;transition:opacity .2s,transform .2s}.status-dot:hover:not(:disabled),.btn:hover:not(:disabled),button:hover:not(:disabled){transform:translateY(-1px)}.status-dot:focus-visible,.btn:focus-visible,button:focus-visible{outline:none;box-shadow:0 0 0 4px #6e886726}.status-dot:disabled,.btn:disabled,button:disabled{opacity:.45;cursor:not-allowed}.status-dot.firmware,.status-dot.connect,.status-dot.disconnect,.btn.firmware,.btn.connect,.btn.disconnect,button.firmware,button.connect,button.disconnect{color:#fffaf5;background:#3a2015}.status-dot.send,.status-dot.stepper-toggle,.status-dot.quick-access,.btn.send,.btn.stepper-toggle,.btn.quick-access,button.send,button.stepper-toggle,button.quick-access{color:#f8f7f2;background:#3a2015;margin-top:.5rem}.status-dot.reboot,.status-dot.stop,.btn.reboot,.btn.stop,button.reboot,button.stop{width:100%;margin-bottom:15px}.status-dot.stepper-toggle.disabled-state,.btn.stepper-toggle.disabled-state,button.stepper-toggle.disabled-state{color:#4a423d;background:#d0dbc7}.status-dot.control,.btn.control,button.control{color:#3a2015;letter-spacing:.08em;background:#d0dbc7;padding:.7rem;font-size:.8rem}.status-dot{color:#3a2015;text-transform:uppercase;background:#efe4d5;font-size:.7rem;font-weight:700}.status-dot.position-tag,.status-dot.limit-tag,.status-dot.homed-tag{text-align:center;justify-content:center;align-items:center;width:5.2rem;padding:.55rem .5rem;font-size:.62rem;display:inline-flex}.status-dot.limit-tag{background:#7a8f6526}.status-dot.limit-tag.triggered,.status-dot.homed-tag{color:#a95645;background:#a9564529}.status-dot.homed-tag.homed{color:#758f6d;background:#7a8f6526}.status-dot.offline{color:#7a7067;background:#7a8f6526}.status-dot.online{color:#758f6d;background:#7a8f6526}.control-group{flex-direction:column;gap:.8rem;margin-top:1.2rem;padding:.65rem 0 .2rem;display:flex}.control-group:first-of-type{border-top:none;padding-top:0}.control-group label{color:#4a423d;text-transform:uppercase;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;display:inline-flex}.control-group .move-header{flex-wrap:wrap;justify-content:space-between;align-items:center}.control-group .move-header h3{padding-bottom:0}.control-group .unit-toggle{background:#fdfaf6;border:1px solid #d8cbb9;border-radius:100vw;gap:.15rem;padding:.2rem;display:inline-flex}.control-group .unit-toggle button{color:#7a7067;letter-spacing:.08em;text-transform:uppercase;background:0 0;padding:.3rem .75rem;font-size:.65rem;font-weight:700}.control-group .unit-toggle button.active{color:#fffaf5;background:#3a2015}.control-group .unit-toggle button:hover:not(:disabled){transform:none}.control-group input{width:4.5rem;max-width:4.5rem;padding:.35rem .45rem;font-size:.8rem}label{color:#4a423d;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.45rem;font-size:.75rem;font-weight:700;display:flex}.setting-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.setting-grid.sequence-grid{margin-top:1.5rem}.setting-grid.sequence-grid button{margin-top:0}.setting-grid.sequence-grid :first-child{grid-column:span 2}.move-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.servo-grid{grid-gap:.6rem 1.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}.servo-grid label{justify-content:space-between;display:flex}.servo-grid label span{flex:none}.servo-grid label input{flex:1;min-width:0}@media (width<=1200px){.workspace{grid-template-columns:1fr;height:auto;min-height:0;display:grid}.panel{min-height:0}.firmware,.divider,h1{display:none}}@media (width<=850px){.panel{grid-template-columns:1fr;height:auto;margin-bottom:1rem;padding:0;display:contents}header{margin-bottom:0;padding:1rem 0 0}button.stop{margin-bottom:0}.terminal{order:4;min-height:65vh}.input-bar{background:#f8f0e7;border:1px solid #d8cbb9;border-radius:26px;order:5;margin-top:0;padding:1rem}}
