#ifc-editor{width:min(1440px,96vw);height:92vh;max-width:96vw;max-height:96vh;padding:0;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc;color:#172338;box-shadow:0 18px 80px #0f172a55}
#ifc-editor::backdrop{background:#0f172a88}
#ifc-editor .ifc-shell{height:100%;display:flex;flex-direction:column;min-height:0}
#ifc-editor .ifc-header{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 16px;background:white;border-bottom:1px solid #dbe3ef}
#ifc-editor h2{font-size:18px;margin:0;flex:1}#ifc-editor button{padding:8px 12px;min-height:36px;border:1px solid #cbd5e1;border-radius:6px;background:white;color:#172338;cursor:pointer;font:600 14px system-ui}#ifc-editor button.primary{background:#2563eb;color:white;border-color:#2563eb}#ifc-editor button:disabled{opacity:.5;cursor:default}
#ifc-editor .ifc-notice{margin:0;padding:10px 16px;color:#52627a;font:13px/1.5 system-ui;border-bottom:1px solid #dbe3ef}
#ifc-editor .ifc-body{display:grid;grid-template-columns:250px minmax(200px,1fr) 280px;flex:1;min-height:0}
#ifc-editor .ifc-list-pane,#ifc-editor .ifc-properties{padding:12px;overflow:auto;background:white;min-width:0}#ifc-editor .ifc-list-pane{display:flex;flex-direction:column;border-right:1px solid #dbe3ef}#ifc-editor .ifc-properties{border-left:1px solid #dbe3ef}
#ifc-editor input,#ifc-editor textarea{box-sizing:border-box;width:100%;padding:8px;border:1px solid #bac7da;border-radius:5px;font:14px system-ui;color:#172338;background:white}#ifc-editor input:disabled{background:#eef2f7}#ifc-editor label{display:block;margin:12px 0 4px;font:600 13px system-ui}
#ifc-editor #ifc-elements{overflow:auto;flex:1;padding-top:8px}#ifc-editor .ifc-element{display:block;width:100%;text-align:left;margin:3px 0;overflow-wrap:anywhere;font-size:12px}#ifc-editor .ifc-element small{display:block;color:#61738e;font-weight:400;margin-top:3px}#ifc-editor .ifc-element[aria-selected=true]{background:#eff6ff;border-color:#2563eb;color:#1d4ed8}
#ifc-editor .ifc-triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}#ifc-editor .ifc-triple input{padding:7px 4px}#ifc-editor #ifc-preview{position:relative;min-height:200px;overflow:hidden}#ifc-editor canvas{display:block;width:100%;height:100%;touch-action:none}#ifc-editor #ifc-view-hint{position:absolute;bottom:10px;left:10px;right:10px;color:#475569;font:12px system-ui;pointer-events:none;background:#ffffffba;padding:5px;border-radius:5px}#ifc-editor .ifc-muted{font:12px/1.5 system-ui;color:#64748b;overflow-wrap:anywhere}#ifc-editor #ifc-status{padding:9px 16px;min-height:20px;border-top:1px solid #dbe3ef;font:13px/1.4 system-ui;white-space:pre-line}#ifc-editor #ifc-status[data-error=true]{color:#b91c1c;background:#fff1f2}#ifc-editor [hidden]{display:none!important}#ifc-editor .ifc-actions{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}
@media(max-width:850px){#ifc-editor .ifc-body{grid-template-columns:190px minmax(180px,1fr)}#ifc-editor .ifc-properties{grid-column:1/-1;max-height:32vh;border-top:1px solid #dbe3ef}#ifc-editor .ifc-body{grid-template-rows:minmax(230px,1fr) auto}#ifc-editor .ifc-notice{max-height:85px;overflow:auto}#ifc-editor{width:98vw;max-width:98vw;height:96dvh}#ifc-editor .ifc-header{padding:8px}#ifc-editor h2{font-size:15px}}
@media(max-width:480px){#ifc-editor .ifc-body{grid-template-columns:135px minmax(140px,1fr)}#ifc-editor .ifc-list-pane{padding:6px}#ifc-editor .ifc-element{font-size:11px;padding:6px}#ifc-editor .ifc-header{gap:5px}#ifc-editor .ifc-header button{padding:6px;font-size:12px}}
#ifc-editor #ifc-text-panel{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;padding:12px;gap:8px;background:#f8fafc}
#ifc-editor .ifc-text-tools{display:flex;gap:6px;flex-wrap:wrap}
#ifc-editor .ifc-text-help{margin:0;color:#52627a;font:13px/1.45 system-ui}
#ifc-editor .ifc-text-find{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#ifc-editor #ifc-text-find{width:220px;max-width:100%}
#ifc-editor #ifc-text-info{font:12px system-ui;color:#64748b;margin-left:auto}
#ifc-editor #ifc-source{flex:1;min-height:100px;resize:none;white-space:pre;overflow:auto;background:#101b2d;color:#e2e8f0;border-color:#334155;border-radius:6px;font:13px/20px ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:2;padding:12px;overscroll-behavior:contain}
@media(max-width:600px){#ifc-editor #ifc-text-panel{padding:8px}#ifc-editor .ifc-text-tools button{padding:6px 8px;font-size:12px}#ifc-editor .ifc-text-help{font-size:12px;max-height:70px;overflow:auto}#ifc-editor #ifc-text-info{margin-left:0}#ifc-editor #ifc-source{font-size:12px}}
