.apparatus-panel{left:calc(var(--app-tool-island-inset,6px) + var(--app-tool-rail-width,32px) + var(--app-draw-panel-width,0px) + 4px);top:var(--app-tool-island-inset,6px);bottom:var(--app-tool-island-inset,6px);z-index:21;width:min(520px,100vw - 72px);font-family:var(--font-ui);color:var(--text-main);background:var(--chrome-bg-elevated);border:1px solid var(--chrome-border);border-radius:var(--radius-panel,6px);flex-direction:column;display:flex;position:absolute;overflow:hidden;box-shadow:0 10px 28px #0f172a1f}html:not(.app-mobile-compact) .apparatus-panel{top:var(--app-left-dock-top);left:var(--app-left-dock-left);height:var(--app-left-dock-max-height);max-height:var(--app-left-dock-max-height);z-index:12;position:fixed;bottom:auto}html:not(.app-mobile-compact) .apparatus-panel--beside-objects{left:calc(var(--app-left-dock-left) + min(288px, calc(100vw - 72px)) + 6px)}.apparatus-panel__header{border-bottom:1px solid var(--chrome-border);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:7px 6px 6px 10px;display:flex}.apparatus-panel__title{letter-spacing:-.01em;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.apparatus-panel__close{appearance:none;border-radius:var(--radius-control,6px);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.apparatus-panel__close:hover{background:var(--chrome-hover);color:var(--text-main)}.apparatus-panel__tools{border-bottom:1px solid var(--chrome-border);flex-direction:column;flex:none;gap:7px;padding:8px 8px 6px;display:flex}.apparatus-panel__style.apparatus-style-toggle{grid-auto-columns:1fr;grid-auto-flow:column;margin:0;display:grid}.apparatus-panel__search{box-sizing:border-box;border:1px solid var(--chrome-border);border-radius:var(--radius-control,6px);background:var(--chrome-input-bg,var(--chrome-bg));width:100%;height:28px;color:var(--text-main);font:inherit;padding:0 9px;font-size:12px}.apparatus-panel__search:focus-visible{outline:2px solid color-mix(in srgb, var(--primary,#0f766e) 55%, transparent);outline-offset:0}.apparatus-panel__body{flex:auto;min-height:0;display:flex}.apparatus-panel__cats{border-right:1px solid var(--chrome-border);scrollbar-width:thin;flex-direction:column;flex:0 0 172px;gap:1px;min-height:0;padding:6px;display:flex;overflow-y:auto}.apparatus-panel__cat{appearance:none;border-radius:var(--radius-control,6px);width:100%;min-height:28px;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;flex:none;align-items:center;gap:6px;padding:4px 8px;font-size:11.5px;line-height:1.25;display:flex}.apparatus-panel__cat-name{overflow-wrap:anywhere;flex:auto;min-width:0}.apparatus-panel__cat-count{color:var(--text-muted);font-variant-numeric:tabular-nums;opacity:.85;flex:none;font-size:10px;font-weight:500}.apparatus-panel__cat--fits{border-color:color-mix(in srgb, var(--primary,#0f766e) 40%, transparent);color:var(--primary,#0f766e);margin-bottom:4px;font-weight:600}.apparatus-panel__cat:hover{background:var(--chrome-hover);color:var(--text-main)}.apparatus-panel__cat.is-on{border-color:color-mix(in srgb, var(--primary,#0f766e) 60%, transparent);background:color-mix(in srgb, var(--primary,#0f766e) 12%, transparent);color:var(--text-main);font-weight:600}.apparatus-panel__search-row{gap:6px;display:flex}.apparatus-panel__search-row .apparatus-panel__search{flex:auto;min-width:0}.apparatus-panel__tubing{appearance:none;border:1px solid var(--chrome-border);border-radius:var(--radius-control,6px);height:28px;color:var(--text-main);font:inherit;cursor:pointer;background:0 0;flex:none;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:500;display:inline-flex}.apparatus-panel__tubing:hover{background:var(--chrome-hover)}.apparatus-panel__tubing.is-on{border-color:color-mix(in srgb, var(--primary,#0f766e) 60%, transparent);background:color-mix(in srgb, var(--primary,#0f766e) 10%, transparent)}.apparatus-panel__hint{color:var(--text-muted);margin:0;font-size:11px;line-height:1.35}.apparatus-panel__hint strong{color:var(--text-main);font-weight:600}.apparatus-panel__scroll{flex:auto;min-width:0;min-height:0;padding:8px;overflow-y:auto}.apparatus-panel__grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px;display:grid}.apparatus-panel__card{appearance:none;border:1px solid var(--chrome-border);border-radius:var(--radius-control,8px);background:var(--chrome-bg-elevated);min-width:0;color:var(--text-main);font:inherit;cursor:grab;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;transition:border-color .12s,background-color .12s;display:flex}.apparatus-panel__card:hover,.apparatus-panel__card:focus-visible{border-color:color-mix(in srgb, var(--primary,#0f766e) 55%, var(--chrome-border));background:var(--chrome-hover);outline:none}.apparatus-panel__card:active{cursor:grabbing}.apparatus-panel__thumb.glassware-library-card__preview,.apparatus-panel__card .glassware-library-card__preview{width:54px;height:54px}.apparatus-panel__canvas{width:48px;height:48px;display:block}.apparatus-panel__card .glassware-library-card__svg{width:48px;height:48px}.apparatus-panel__label{text-align:center;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;width:100%;min-height:2.4em;font-size:10.5px;font-weight:500;line-height:1.2;display:-webkit-box;overflow:hidden}.apparatus-panel__empty{text-align:center;color:var(--text-muted);padding:18px 8px;font-size:12px}.apparatus-hovercard{z-index:80;box-sizing:border-box;border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);width:232px;color:var(--text-main);font-family:var(--font-ui);pointer-events:none;border-radius:10px;padding:12px 12px 10px;position:fixed;box-shadow:0 16px 40px #0f172a2e}.apparatus-hovercard__preview{background:var(--chrome-bg);border:1px solid var(--chrome-border);border-radius:8px;justify-content:center;align-items:center;height:188px;margin-bottom:8px;display:flex}.apparatus-hovercard__preview img{object-fit:contain;background:#fff;border-radius:6px;width:180px;height:180px}.apparatus-hovercard__canvas{width:180px;height:180px;display:block}.apparatus-hovercard__name{letter-spacing:-.01em;font-size:13px;font-weight:600}.apparatus-hovercard__cat{color:var(--text-muted);margin-top:1px;font-size:11px}.apparatus-hovercard__summary{color:var(--text-main);margin:6px 0 0;font-size:11.5px;line-height:1.4}.apparatus-hovercard__ports{border-top:1px solid var(--chrome-border);flex-direction:column;gap:3px;margin:8px 0 0;padding-top:7px;font-size:11px;display:flex}.apparatus-hovercard__port-row{gap:6px;display:flex}.apparatus-hovercard__port-row dt{min-width:68px;color:var(--text-muted);flex:none}.apparatus-hovercard__port-row dd{color:var(--text-main);margin:0}@media (hover:none){.apparatus-hovercard{display:none}}.apparatus-panel__fit-chip{background:color-mix(in srgb, var(--primary,#0f766e) 14%, transparent);height:16px;color:var(--primary,#0f766e);letter-spacing:.02em;vertical-align:1px;border-radius:999px;align-items:center;padding:0 6px;font-size:10px;font-weight:700;display:inline-flex}.apparatus-panel__card{position:relative}.apparatus-panel__card--fits{border-color:color-mix(in srgb, var(--primary,#0f766e) 55%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--primary,#0f766e) 25%, transparent) inset}.apparatus-panel__card-fit{position:absolute;top:3px;right:3px}.apparatus-panel__cat--fits{border-color:color-mix(in srgb, var(--primary,#0f766e) 55%, transparent);color:var(--primary,#0f766e);font-weight:600}.templates-panel{width:min(320px,100vw - 72px)}.templates-panel__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;display:grid}.templates-panel__card{appearance:none;text-align:left;border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);color:inherit;font:inherit;cursor:pointer;border-radius:9px;flex-direction:column;padding:0;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;overflow:hidden}.templates-panel__card:hover,.templates-panel__card:focus-visible{border-color:var(--accent,#2c7a7b);outline:none;box-shadow:0 6px 18px #0f172a1a}.templates-panel__card:active{transform:translateY(1px)}.templates-panel__card:disabled{cursor:progress;opacity:.7}.templates-panel__preview{aspect-ratio:4/5;border-bottom:1px solid var(--chrome-border);background:#fff;display:block;position:relative}.templates-panel__preview img{object-fit:contain;width:100%;height:100%;display:block}.templates-panel__name{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;padding:6px 8px 7px;font-size:11.5px;font-weight:600;line-height:1.25;display:block}.templates-panel__cat{letter-spacing:.04em;text-transform:uppercase;color:var(--accent,#2c7a7b);font-size:10.5px;font-weight:600}.templates-panel__summary{color:var(--text-muted,#64748b);font-size:12px;line-height:1.4}.templates-panel__list--square .templates-panel__preview{aspect-ratio:1;box-sizing:border-box;padding:6px}.templates-panel__actions{align-items:center;gap:2px;display:inline-flex}.templates-browser__backdrop{z-index:30000;background:var(--sheet-backdrop,#0f172a6b);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.templates-browser{border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);width:min(1180px,100%);height:min(860px,100%);color:var(--text-main);border-radius:14px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 24px 64px #0f172a47}.templates-browser__header{border-bottom:1px solid var(--chrome-border);align-items:center;gap:14px;padding:12px 14px 12px 18px;display:flex}.templates-browser__title{white-space:nowrap;align-items:center;gap:8px;font-size:15px;font-weight:700;display:inline-flex}.templates-browser__search{border:1px solid var(--chrome-border);background:var(--chrome-bg,transparent);max-width:460px;color:var(--text-muted,#64748b);border-radius:8px;flex:1;align-items:center;gap:8px;margin-left:auto;padding:0 10px;display:flex}.templates-browser__search:focus-within{border-color:var(--primary)}.templates-browser__search input{min-width:0;color:var(--text-main);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:7px 0;font-size:13px}.templates-browser__close{appearance:none;width:30px;height:30px;color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.templates-browser__close:hover{background:color-mix(in srgb, var(--chrome-border) 60%, transparent);color:var(--text-main)}.templates-browser__body{flex:1;min-height:0;display:flex}.templates-browser__side{border-right:1px solid var(--chrome-border);flex-direction:column;flex:0 0 210px;gap:14px;padding:12px 10px;display:flex;overflow-y:auto}.templates-browser__tabs,.templates-browser__cats{flex-direction:column;gap:2px;display:flex}.templates-browser__cats{border-top:1px solid var(--chrome-border);padding-top:12px}.templates-browser__tab,.templates-browser__cat{appearance:none;color:var(--text-main);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.templates-browser__tab{font-weight:600}.templates-browser__cat{padding:5px 10px;font-size:12.5px}.templates-browser__tab:hover,.templates-browser__cat:hover{background:color-mix(in srgb, var(--chrome-border) 50%, transparent)}.templates-browser__tab--on,.templates-browser__cat--on,.templates-browser__tab--on:hover,.templates-browser__cat--on:hover{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary)}.templates-panel__tabs{flex-wrap:wrap;gap:4px 3px;display:flex}.templates-panel__tab{appearance:none;border:1px solid var(--chrome-border,#e2e8f0);height:26px;color:var(--text-main);font:inherit;letter-spacing:-.005em;white-space:nowrap;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:0 9px;font-size:11.5px;font-weight:500;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.templates-panel__tab:hover{background:var(--chrome-hover,#0f172a0d)}.templates-panel__tab:focus-visible{outline:2px solid var(--primary,#2563eb);outline-offset:1px}.templates-panel__tab--on,.templates-panel__tab--on:hover{border-color:var(--text-main,#0f172a);background:var(--text-main,#0f172a);color:var(--chrome-bg-elevated,#fff)}.templates-panel__tab-count{color:var(--text-muted,#64748b);font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:500}.templates-panel__tab--on .templates-panel__tab-count{color:inherit;opacity:.65}.templates-browser__count{color:var(--text-muted,#64748b);font-variant-numeric:tabular-nums;font-size:11px;font-weight:500}.templates-browser__scroll{flex:1;min-width:0;overflow-y:auto}.templates-browser__grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;padding:16px;display:grid}.templates-browser__card{appearance:none;border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;padding:0;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;overflow:hidden}.templates-browser__card:hover,.templates-browser__card:focus-visible{border-color:var(--accent,#2c7a7b);outline:none;transform:translateY(-1px);box-shadow:0 8px 22px #0f172a1f}.templates-browser__card:disabled{cursor:progress;opacity:.7}.templates-browser__preview{aspect-ratio:4/5;border-bottom:1px solid var(--chrome-border);background:#fff;display:block;position:relative}.templates-browser__preview img{object-fit:contain;width:100%;height:100%;display:block}.templates-browser__meta{flex-direction:column;gap:3px;padding:9px 11px 11px;display:flex}.templates-browser__name{font-size:13.5px;font-weight:650;line-height:1.3}@media (max-width:720px){.templates-browser__backdrop{padding:0}.templates-browser{border-radius:0;height:100%}.templates-browser__body{flex-direction:column}.templates-browser__side{border-right:0;border-bottom:1px solid var(--chrome-border);flex-direction:row;flex:none;gap:6px;padding:8px 10px;overflow-x:auto}.templates-browser__tabs,.templates-browser__cats{flex-direction:row}.templates-browser__cats{border-top:0;border-left:1px solid var(--chrome-border);padding:0 0 0 6px}.templates-browser__tab,.templates-browser__cat{white-space:nowrap}.templates-browser__grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding:10px}}.molscript-editor{flex-direction:column;gap:8px;padding:10px;display:flex}.molscript-editor__bar{justify-content:space-between;align-items:center;gap:8px;display:flex}.molscript-editor__examples{min-width:0;font:inherit;border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);color:var(--text-main);border-radius:6px;flex:1;padding:4px 6px;font-size:12px}.molscript-editor__guide{color:var(--primary);white-space:nowrap;font-size:12px}.molscript-editor__code{border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);border-radius:8px;height:260px;position:relative;overflow:hidden}.molscript-editor__highlight,.molscript-editor__input{white-space:pre;tab-size:2;margin:0;padding:8px 10px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:absolute;inset:0;overflow:auto}.molscript-editor__highlight{color:var(--text-main);pointer-events:none;overflow:hidden}.molscript-editor__input{resize:none;color:#0000;caret-color:var(--text-main);background:0 0;border:0;outline:none}.molscript-editor__input::selection{background:color-mix(in srgb, var(--primary) 28%, transparent)}.molscript-editor__line--bad{background:#f59e0b29}.molscript-editor .ms-key,.molscript-editor .ms-move{color:#7c3aed;font-weight:600}.molscript-editor .ms-arrow{color:#0d9488;font-weight:600}.molscript-editor .ms-op{color:#0d9488}.molscript-editor .ms-label{color:#c2410c}.molscript-editor .ms-opt{color:#2563eb}.molscript-editor .ms-var{color:#be185d}.molscript-editor .ms-map,.molscript-editor .ms-lp{color:#db2777}.molscript-editor .ms-comment{color:var(--text-muted);font-style:italic}.molscript-editor__problems{flex-direction:column;gap:4px;max-height:140px;margin:0;padding:0;font-size:12px;line-height:1.4;list-style:none;display:flex;overflow:auto}.molscript-editor__problem{border-left:3px solid var(--chrome-border);background:color-mix(in srgb, var(--chrome-border) 30%, transparent);color:var(--text-main);border-radius:6px;padding:5px 8px}.molscript-editor__problem button{all:unset;cursor:pointer}.molscript-editor__problem--error{border-left-color:#dc2626}.molscript-editor__problem--warning{border-left-color:#d97706}.molscript-editor__problem--note{border-left-color:var(--text-muted);color:var(--text-muted)}.molscript-editor__problem--ok{border-left-color:var(--primary)}.molscript-editor__draw{appearance:none;font:inherit;background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:8px 12px;font-weight:600}.molscript-editor__draw:hover:not(:disabled){background:var(--primary-hover)}.molscript-editor__draw:disabled{opacity:.5;cursor:default}.templates-panel--sheet{flex-direction:column;width:100%;min-height:0;display:flex}.templates-panel--sheet .apparatus-panel__tools{z-index:1;background:var(--chrome-bg-elevated);position:sticky;top:0}.templates-panel--sheet .apparatus-panel__scroll{overflow:visible}.templates-panel--sheet .templates-panel__list{padding:10px 2px calc(16px + env(safe-area-inset-bottom,0px));grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.templates-panel--sheet .apparatus-style-toggle__btn{min-height:40px}.templates-panel--sheet .apparatus-panel__search{min-height:40px;font-size:16px}.templates-panel--sheet .molscript-editor{padding:10px 2px calc(16px + env(safe-area-inset-bottom,0px))}.templates-panel--sheet .molscript-editor__code{height:min(42dvh,320px)}.templates-panel--sheet .molscript-editor__highlight,.templates-panel--sheet .molscript-editor__input{font-size:13px}.templates-panel--sheet .molscript-editor__draw{min-height:44px}.molscript-editor__hints{flex-wrap:wrap;gap:4px;display:flex}.molscript-editor__hint{appearance:none;border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);color:var(--text-main);cursor:pointer;border-radius:999px;padding:2px 9px;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.molscript-editor__hint:first-child{border-color:var(--primary)}.molscript-editor__hint:hover{background:color-mix(in srgb, var(--primary) 12%, transparent)}.templates-panel--sheet .molscript-editor__hint{padding:6px 12px;font-size:13px}.templates-crown,.templates-free{z-index:1;pointer-events:auto;position:absolute;top:5px;left:5px}.templates-crown{color:#7c4a03;cursor:help;background:linear-gradient(145deg,#fde68a,#f59e0b);border-radius:50%;place-items:center;width:17px;height:17px;display:grid;box-shadow:0 1px 2px #78480059,inset 0 0 0 .5px #fff9}.templates-free{color:#0f7a4f;letter-spacing:.04em;text-transform:uppercase;background:#e7f6ef;border-radius:4px;padding:1px 5px;font-size:9px;font-weight:700;line-height:1.5}.templates-panel__pro{color:#fff;letter-spacing:.06em;vertical-align:middle;cursor:help;background:linear-gradient(135deg,#7c3aed,#2f5fb3);border-radius:4px;align-items:center;margin-left:2px;padding:1px 5px;font-size:9px;font-weight:700;line-height:1.4;display:inline-flex}.apparatus-panel__hint .templates-panel__pro{margin:0 6px 0 0}.templates-panel--sheet,.templates-panel--sheet .apparatus-panel__tools{min-width:0;max-width:100%;overflow-x:hidden}html.app-mobile-compact .templates-panel--sheet .apparatus-style-toggle{grid-template-columns:repeat(4,minmax(0,1fr));align-self:stretch;width:100%;overflow:hidden;gap:4px!important;margin:8px 0 0!important;padding:0!important;display:grid!important}html.app-mobile-compact .templates-panel--sheet .apparatus-style-toggle__btn{white-space:normal;overflow-wrap:anywhere;text-align:center;min-width:0;line-height:1.15;height:auto!important;min-height:44px!important;padding:4px 6px!important;font-size:13px!important}.templates-panel__item,.templates-browser__item{flex-direction:column;min-width:0;display:flex;position:relative}.templates-panel__item>.templates-panel__card,.templates-browser__item>.templates-browser__card{flex:auto}.templates-panel__info{border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);width:22px;height:22px;color:var(--chrome-text-muted,#64748b);cursor:pointer;border-radius:999px;place-items:center;padding:0;display:grid;position:absolute;top:6px;right:6px}.templates-panel__info:hover,.templates-panel__info:focus-visible,.templates-panel__info--on{color:var(--accent,#2c7a7b);border-color:var(--accent,#2c7a7b);outline:none}.templates-panel__details{border:1px solid var(--chrome-border);background:var(--chrome-bg-elevated);border-radius:9px;grid-column:1/-1;padding:8px 10px}.templates-panel__details .templates-panel__summary{margin:0 0 6px}.templates-sources{font-size:11px;line-height:1.35}.templates-sources__label{letter-spacing:.04em;text-transform:uppercase;color:var(--chrome-text-muted,#64748b);margin-bottom:2px;font-size:10px;font-weight:600;display:block}.templates-sources__list{margin:0;padding:0;list-style:none}.templates-sources__list li+li{margin-top:2px}.templates-sources__list a{color:var(--accent,#2c7a7b);text-underline-offset:2px;overflow-wrap:anywhere;text-decoration:underline}.templates-sources--browser{padding:6px 2px 0}:is([data-theme=elegant-dark],[data-theme=ink-dark]) :is(.templates-panel__preview,.templates-browser__preview){background:#141414}:is([data-theme=elegant-dark],[data-theme=ink-dark]) :is(.templates-panel__preview,.templates-browser__preview) img{filter:invert(.92)hue-rotate(180deg)}
