@media (max-width: 1270px) {
  .workspace { grid-template-columns: 205px minmax(0,1fr); }
  .brand { min-width: 185px; }
  .save-status { display: none; }
  .tool-btn { padding: 0 8px; }
  .canvas-minimap { display: none; }
}
@media (max-width: 1050px) {
  .workspace { grid-template-columns: 190px minmax(0,1fr); position: relative; }
  .inspector-panel { display: none; }
  .inspector-panel.mobile-open { display: flex; position: absolute; z-index: 8; top: 10px; right: 10px; bottom: 10px; width: 270px; margin: 0; box-shadow: var(--shadow); }
  .subbar-actions .tool-btn { font-size: 0; gap: 0; }
  .subbar-actions .tool-btn::first-letter { font-size: 12px; }
  .subbar-actions .tool-btn span { font-size: 12px; }
  .subbar-actions .select-wrap > span { display: none; }
  .selection-hint { max-width: 120px; }
}
@media (max-width: 720px) {
  .inspector-panel.mobile-open { top: auto; right: 6px; bottom: 190px; left: 6px; width: auto; height: min(50%,430px); }
  body { overflow: hidden; }
  .topbar { height: 56px; flex-basis: 56px; padding: 0 10px; gap: 8px; }
  .brand { min-width: 0; gap: 7px; }
  .brand-mark { width: 31px; height: 31px; font-size: 22px; }
  .brand-copy strong { font-size: 13px; }
  .brand-copy small { font-size: 7px; letter-spacing: 1px; }
  .project-title-wrap { display: none; }
  .top-actions { margin-left: auto; gap: 2px; }
  .top-actions .tool-btn { min-width: 32px; width: 32px; padding: 0; font-size: 0; gap: 0; }
  .top-actions .tool-btn span { font-size: 15px; }
  .top-actions #undoBtn, .top-actions #redoBtn, .top-actions .toolbar-divider { display: none; }
  .mobile-menu-btn { display: inline-grid; }
  .subbar { height: 43px; flex-basis: 43px; padding: 0 9px; gap: 6px; }
  .mode-btn { padding: 0 8px; height: 27px; font-size: 10px; }
  .subbar-actions { gap: 5px; }
  .select-wrap select { width: 116px; max-width: 116px; font-size: 9px; padding: 5px; }
  .subbar-actions #exportSvgBtn, .subbar-actions #exportJsonBtn { display: none; }
  .subbar-actions #subnetCalcBtn { font-size: 0; width: 29px; min-width: 29px; padding: 0; }
  .subbar-actions #subnetCalcBtn::first-letter { font-size: 14px; }
  .subbar-actions #importJsonBtn { font-size: 0; width: 29px; min-width: 29px; padding: 0; }
  .subbar-actions #importJsonBtn::first-letter { font-size: 14px; }
  .workspace { display: flex; flex-direction: column; padding: 6px; gap: 6px; position: relative; }
  .device-panel { display: none; position: absolute; z-index: 6; left: 6px; top: 6px; bottom: 190px; width: min(270px,calc(100vw - 30px)); margin: 0; box-shadow: var(--shadow); }
  .device-panel.mobile-open { display: flex; }
  .inspector-panel { display: none; position: absolute; z-index: 6; left: 6px; right: 6px; bottom: 190px; height: min(50%,430px); margin: 0; box-shadow: var(--shadow); }
  .inspector-panel.mobile-open { display: flex; }
  .canvas-column { flex: 1; min-height: 0; gap: 5px; }
  .canvas-toolbar { height: 38px; flex-basis: 38px; padding: 0 5px; }
  .canvas-tool { padding: 0 7px; height: 28px; font-size: 10px; }
  .canvas-tool span { margin-left: 2px; }
  .canvas-toolbar-right { gap: 1px; }
  .selection-hint, .canvas-toolbar-right .toolbar-divider { display: none; }
  .canvas-wrap { min-height: 180px; flex-basis: 240px; }
  .canvas-hud { display: none; }
  .canvas-footer { min-height: 23px; }
  .canvas-stats, .canvas-footer-right { gap: 8px; }
  .canvas-stats > span { font-size: 9px; }
  .legend-item { font-size: 8px; }
  .mode-status { font-size: 7px; }
  .bottom-panel { flex: 0 0 174px; border-radius: 8px; }
  .bottom-panel.collapsed { flex-basis: 37px; }
  .bottom-tabs { min-height: 37px; flex-basis: 37px; padding: 0 4px; gap: 0; }
  .bottom-tab { height: 36px; padding: 0 7px; font-size: 9px; gap: 4px; }
  .bottom-tab-actions .text-btn { display: none; }
  .event-row { grid-template-columns: 45px 49px minmax(70px,1fr); gap: 5px; padding: 7px; font-size: 9px; }
  .event-detail { display: none; }
  .cli-head { flex-wrap: wrap; }
  .cli-tip { display: none; }
  .inspector-content { padding: 10px; }
}
@media (max-width: 390px) {
  .brand-copy small { display: none; }
  .brand-copy strong { font-size: 12px; }
  .top-actions .tool-btn#openBtn { display: none; }
  .subbar-actions .select-wrap select { width: 94px; max-width: 94px; }
  .canvas-tool span { display: none; }
  .canvas-tool { font-size: 14px; padding: 0 9px; }
  .canvas-stats > span { gap: 3px; }
  .canvas-footer-right .legend-item { display: none; }
}
@media (max-width: 1050px) and (min-width: 721px) {
  .workspace.device-collapsed { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 600px) {
  .console-shell { padding: 12px; gap: 9px; }
  .console-output { min-height: 150px; flex-basis: 220px; max-height: 48dvh; font-size: 11px; padding: 9px; }
  .console-form { flex-wrap: wrap; }
  .console-form .cli-prompt { max-width: 100%; }
  .console-form input { flex-basis: 65%; }
  .console-dialog-footer { flex-wrap: wrap; font-size: 9px; }
}

@media (max-width: 600px) {
  .properties-dialog { width: calc(100vw - 14px); max-height: 94dvh; border-radius: 12px; }
  .properties-dialog-header { padding: 11px; gap: 8px; }
  .properties-title-icon { width: 38px; height: 38px; flex-basis: 38px; border-radius: 9px; }
  .properties-title-icon .inline-device-icon { width: 28px; height: 28px; }
  .properties-title-copy h2 { font-size: 14px; }
  .properties-content { padding: 10px; }
  .properties-dialog-footer { padding: 9px 11px; font-size: 9px; }
  .properties-content .route-card { grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 24px; }
}
