:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--st-font-ui:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--st-font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", "Consolas", monospace;--st-bg-body:#f2f0ed;--st-bg-surface:#faf9f7;--st-bg-elevated:#eae8e4;--st-bg-code:#1e1e2e;--st-border:#d5d0c8;--st-text-primary:#2c2c2c;--st-text-secondary:#6b6560;--st-text-code:#cdd6f4;--st-accent:#d97706;--st-accent-hover:#b45309;--st-glow:rgba(217,119,6,.35);--st-error:#dc2626;--st-success:#16a34a;--st-status-success-bg:#dcfce7;--st-status-success-text:#166534;--st-status-warning-bg:#fef3c7;--st-status-warning-text:#92400e;--st-status-error-bg:#fee2e2;--st-status-error-text:#991b1b;--st-status-info-bg:#dbeafe;--st-status-info-text:#1e40af;--st-nav-bg:#1a1a28;--st-nav-text:#c8c8d0;--st-nav-brand:#d97706;--st-shadow-sm:0 1px 2px rgba(0,0,0,.06);--st-shadow-md:0 4px 12px rgba(0,0,0,.08);--st-shadow-lg:0 8px 24px rgba(0,0,0,.12);--st-transition-fast:.15s ease;--st-transition-default:.25s ease;--st-radius:8px;--st-scanline:repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(255,255,255,.016) 2px, rgba(255,255,255,.016) 4px)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--st-bg-body:#0f0f17;--st-bg-surface:#1a1a28;--st-bg-elevated:#232336;--st-bg-code:#13131d;--st-border:#2a2a3c;--st-text-primary:#e0e0e8;--st-text-secondary:#8888a0;--st-text-code:#cdd6f4;--st-accent:#4ade80;--st-accent-hover:#22c55e;--st-glow:rgba(74,222,128,.3);--st-error:#f87171;--st-success:#4ade80;--st-status-success-bg:rgba(34,197,94,.15);--st-status-success-text:#4ade80;--st-status-warning-bg:rgba(234,179,8,.15);--st-status-warning-text:#facc15;--st-status-error-bg:rgba(239,68,68,.15);--st-status-error-text:#f87171;--st-status-info-bg:rgba(59,130,246,.15);--st-status-info-text:#60a5fa;--st-nav-bg:#0a0a12;--st-nav-text:#a0a0b8;--st-nav-brand:#4ade80;--st-shadow-sm:0 1px 2px rgba(0,0,0,.2);--st-shadow-md:0 4px 12px rgba(0,0,0,.3);--st-shadow-lg:0 8px 24px rgba(0,0,0,.4);--st-scanline:repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(74,222,128,.02) 2px, rgba(74,222,128,.02) 4px)}[data-theme=dark] select option{background:var(--st-bg-elevated);color:var(--st-text-primary)}.st-theme-toggle{color:var(--st-nav-text);cursor:pointer;width:2.2rem;height:2.2rem;transition:transform var(--st-transition-fast), border-color var(--st-transition-fast), background var(--st-transition-fast);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:9999px;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:inline-flex}.st-theme-toggle:hover{border-color:var(--st-accent);transform:scale(1.08)}.st-theme-toggle:active{transform:scale(.95)}.st-theme-toggle .st-theme-icon-system,.st-theme-toggle .st-theme-icon-light,.st-theme-toggle .st-theme-icon-dark{display:none}html:not([data-theme-mode]) .st-theme-icon-system,html[data-theme-mode=system] .st-theme-icon-system,html[data-theme-mode=light] .st-theme-icon-light,html[data-theme-mode=dark] .st-theme-icon-dark{display:inline}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{background:var(--st-bg-body);height:100%;color:var(--st-text-primary);font-family:var(--st-font-ui);flex-direction:column;line-height:1.5;display:flex;overflow:hidden}a{color:var(--st-accent);text-decoration:none}a:hover{text-decoration:underline}a:visited{color:var(--st-accent-hover)}main{scroll-behavior:smooth;flex-direction:column;flex:1;min-height:0;padding:1rem;display:flex;overflow-y:auto}.st-nav{background:var(--st-nav-bg);height:48px;box-shadow:var(--st-shadow-md);z-index:10;align-items:center;gap:1.5rem;padding:0 1.5rem;display:flex;position:relative}.st-nav:after{content:"";background:var(--st-scanline);pointer-events:none;position:absolute;inset:0}.st-nav-brand{font-size:1.15rem;font-weight:700;font-family:var(--st-font-mono);letter-spacing:-.02em;text-shadow:0 0 8px var(--st-glow);color:var(--st-nav-brand)!important;text-decoration:none!important}.st-nav-brand:visited{color:var(--st-nav-brand)!important}.st-nav-links{gap:.25rem;display:flex}.st-nav-links a{color:var(--st-nav-text);transition:background var(--st-transition-fast), color var(--st-transition-fast);border-radius:9999px;padding:.3rem .75rem;font-size:.9rem;text-decoration:none}.st-nav-links a:hover{color:#fff;background:rgba(255,255,255,.08)}.st-nav-links a:visited{color:var(--st-nav-text)}.st-nav-toggle-input{appearance:none;opacity:0;pointer-events:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;display:none!important}.st-nav-hamburger{display:none}.st-nav-collapse,.st-nav-right{display:contents}.st-nav-spacer{flex:1}.st-nav-center{pointer-events:auto;position:absolute;left:50%;transform:translate(-50%)}@media (width<=1024px){.st-nav-hamburger{cursor:pointer;z-index:2;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;padding:.4rem;display:flex}.st-nav-hamburger span{background:var(--st-nav-text);border-radius:1px;width:22px;height:2px;transition:transform .25s,opacity .25s;display:block}.st-nav-toggle-input:checked~.st-nav-hamburger span:first-child{transform:translateY(7px)rotate(45deg)}.st-nav-toggle-input:checked~.st-nav-hamburger span:nth-child(2){opacity:0}.st-nav-toggle-input:checked~.st-nav-hamburger span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.st-nav-collapse{background:var(--st-nav-bg);box-shadow:var(--st-shadow-md);z-index:9;flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:none;position:absolute;top:48px;left:0;right:0}.st-nav-collapse:after{content:"";background:var(--st-scanline);pointer-events:none;position:absolute;inset:0}.st-nav-toggle-input:checked~.st-nav-collapse{display:flex}.st-nav-links{flex-direction:column;gap:0}.st-nav-links a{border-radius:4px;padding:.5rem .75rem}.st-nav-spacer{display:none}.st-nav-center{position:static;transform:none}.st-nav-right{flex-direction:column;gap:.5rem;width:100%;display:flex}.st-nav-right>*{flex-wrap:wrap}}.st-footer{background:var(--st-bg-elevated);border-top:1px solid var(--st-border);align-items:center;padding:.5rem 1rem;font-size:.8rem;display:flex}.st-footer a{color:var(--st-text-secondary)}.st-footer a:hover{color:var(--st-accent)}.st-footer a:visited{color:var(--st-text-secondary)}.st-footer-legal{gap:1rem;display:flex}.st-footer-brand{margin-left:auto}@media (width<=600px){.st-nav{padding:0 .75rem}}.st-btn{border:1px solid var(--st-border);border-radius:var(--st-radius);font-family:var(--st-font-ui);cursor:pointer;transition:background var(--st-transition-fast), border-color var(--st-transition-fast), color var(--st-transition-fast), opacity var(--st-transition-fast);background:var(--st-bg-surface);color:var(--st-text-primary);justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.st-btn:visited{color:var(--st-text-primary)}.st-btn:hover{background:var(--st-bg-elevated);border-color:var(--st-text-secondary)}.st-btn:active{opacity:.8}.st-btn:focus-visible{outline:2px solid var(--st-accent);outline-offset:2px}.st-btn:disabled,.st-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.st-btn--primary{background:var(--st-accent);color:#fff;border-color:var(--st-accent)}.st-btn--primary:visited{color:#fff}.st-btn--primary:hover{background:var(--st-accent-hover);border-color:var(--st-accent-hover);color:#fff}.st-btn--danger{background:var(--st-error);color:#fff;border-color:var(--st-error)}.st-btn--danger:visited{color:#fff}.st-btn--danger:hover{opacity:.85;color:#fff}.st-btn--ghost{color:var(--st-text-secondary);background:0 0;border-color:transparent}.st-btn--ghost:visited{color:var(--st-text-secondary)}.st-btn--ghost:hover{background:var(--st-bg-elevated);color:var(--st-text-primary)}.st-btn--sm{padding:.3rem .75rem;font-size:.8rem}.st-btn--lg{padding:.75rem 1.5rem;font-size:1rem}.st-btn--full{text-align:center;width:100%;display:flex}.st-input,.st-select,.st-textarea{background:var(--st-bg-body);border:1px solid var(--st-border);width:100%;color:var(--st-text-primary);font-size:1rem;font-family:var(--st-font-ui);transition:border-color var(--st-transition-fast), box-shadow var(--st-transition-fast);border-radius:4px;padding:.6rem .75rem}.st-input::placeholder{color:var(--st-text-secondary);opacity:.6}.st-select::placeholder{color:var(--st-text-secondary);opacity:.6}.st-textarea::placeholder{color:var(--st-text-secondary);opacity:.6}.st-input:focus-visible{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 20%, transparent);outline:none}.st-select:focus-visible{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 20%, transparent);outline:none}.st-textarea:focus-visible{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 20%, transparent);outline:none}.st-input:disabled,.st-select:disabled,.st-textarea:disabled{opacity:.5;cursor:not-allowed}.st-select{cursor:pointer}.st-textarea{resize:vertical;min-height:120px}.st-label{color:var(--st-text-secondary);margin-bottom:.35rem;font-size:.875rem;font-weight:500;display:block}.st-form-group{margin-bottom:1.25rem}.st-code-textarea{background:var(--st-bg-code);width:100%;color:var(--st-text-code);border:1px solid var(--st-border);border-radius:var(--st-radius);font-family:var(--st-font-mono);resize:none;transition:box-shadow var(--st-transition-fast);outline:none;flex:1;padding:.75rem;font-size:14px;line-height:1.6}.st-code-textarea:focus{border-color:var(--st-accent);box-shadow:0 0 0 2px var(--st-glow)}.st-code-textarea::placeholder{color:var(--st-text-secondary)}.st-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;display:grid}.st-gallery-card{background:var(--st-bg-surface);border:1px solid var(--st-border);border-radius:var(--st-radius);box-shadow:var(--st-shadow-sm);transition:transform var(--st-transition-fast), box-shadow var(--st-transition-fast), border-color var(--st-transition-fast);padding:1.25rem}.st-gallery-card:hover{box-shadow:var(--st-shadow-md), 0 0 0 1px var(--st-glow);border-color:var(--st-accent);transform:translateY(-2px)}.st-gallery-card h3{color:var(--st-text-primary);margin-bottom:.5rem;font-size:1.1rem}.st-gallery-card a{color:var(--st-accent);margin-top:.5rem;display:inline-block}.st-gallery-card a:hover{text-decoration:underline}.st-gallery-preview{background:var(--st-bg-code);color:var(--st-text-code);border:1px solid var(--st-border);font-family:var(--st-font-mono);white-space:pre;border-radius:4px;max-height:7em;padding:.75rem;font-size:.8rem;line-height:1.4;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,transparent 100%);mask-image:linear-gradient(#000 60%,transparent 100%)}.st-help-page{gap:1.5rem;width:100%;max-width:1100px;margin:0 auto;display:flex}.st-help-sidebar{background:var(--st-bg-surface);border:1px solid var(--st-border);border-radius:var(--st-radius);width:200px;box-shadow:var(--st-shadow-sm);flex-shrink:0;align-self:flex-start;padding:1rem;position:sticky;top:1rem}.st-help-sidebar h3{color:var(--st-text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.75rem;font-size:.8rem;font-weight:600}.st-help-sidebar ul{list-style:none}.st-help-sidebar ul li{margin-bottom:.15rem}.st-help-sidebar ul a{color:var(--st-text-primary);transition:background var(--st-transition-fast), color var(--st-transition-fast);border-radius:9999px;padding:.25rem .5rem;font-size:.85rem;text-decoration:none;display:block}.st-help-sidebar ul a:hover{background:var(--st-glow);color:var(--st-accent)}.st-help-sidebar ul a:visited{color:var(--st-text-primary)}.st-help-content{scroll-behavior:smooth;flex:1;min-width:0;line-height:1.6}.st-help-content h2{border-bottom:1px solid var(--st-border);margin-top:2rem;margin-bottom:.75rem;padding-bottom:.5rem}.st-help-content h2:first-child{margin-top:0}.st-help-content p{margin-bottom:.75rem}.st-help-content pre{background:var(--st-bg-code);color:var(--st-text-code);border:1px solid var(--st-border);border-radius:var(--st-radius);font-family:var(--st-font-mono);margin-bottom:1rem;padding:.75rem;font-size:.85rem;overflow-x:auto}.st-help-table{border-collapse:collapse;width:100%;margin-bottom:1.5rem;font-size:.9rem}.st-help-table th{background:var(--st-bg-elevated);color:var(--st-text-primary);text-align:left;font-weight:600}.st-help-table th,.st-help-table td{border:1px solid var(--st-border);padding:.4rem .6rem}.st-help-table td:first-child{font-family:var(--st-font-mono);white-space:nowrap;font-size:.85rem}.st-help-table tr:nth-child(2n){background:var(--st-bg-elevated)}@media (width<=768px){.st-help-page{flex-direction:column}.st-help-sidebar{width:100%;position:static}}.st-about-page{width:100%;max-width:700px;margin:0 auto;line-height:1.6}.st-about-page h1{margin-bottom:1rem}.st-about-page h2{margin-top:1.5rem;margin-bottom:.75rem}.st-about-page p{margin-bottom:.75rem}.st-about-page ul{margin-bottom:1rem;padding-left:1.5rem}.st-about-page ul li{margin-bottom:.35rem}.st-about-page strong{color:var(--st-text-primary)}.st-about-footer{border-top:1px solid var(--st-border);color:var(--st-text-secondary);margin-top:2rem;padding-top:1rem;font-size:.9rem}.st-terms-page{width:100%;max-width:800px;margin:0 auto;line-height:1.6}.st-terms-page h1{margin-bottom:.5rem}.st-terms-page h2{margin-top:1.5rem;margin-bottom:.75rem}.st-terms-page p{margin-bottom:.75rem}.st-terms-page ul{margin-bottom:1rem;padding-left:1.5rem}.st-terms-page ul li{margin-bottom:.35rem}.st-terms-effective{color:var(--st-text-secondary);font-size:.9rem;margin-bottom:1.5rem!important}.st-terms-footer{border-top:1px solid var(--st-border);color:var(--st-text-secondary);margin-top:2rem;padding-top:1rem;font-size:.9rem}.st-privacy-page{width:100%;max-width:800px;margin:0 auto;line-height:1.6}.st-privacy-page h1{margin-bottom:.5rem}.st-privacy-page h2{margin-top:1.5rem;margin-bottom:.75rem}.st-privacy-page h3{margin-top:1rem;margin-bottom:.5rem}.st-privacy-page p{margin-bottom:.75rem}.st-privacy-page ul{margin-bottom:1rem;padding-left:1.5rem}.st-privacy-page ul li{margin-bottom:.35rem}.st-privacy-effective{color:var(--st-text-secondary);font-size:.9rem;margin-bottom:1.5rem!important}.st-privacy-footer{border-top:1px solid var(--st-border);color:var(--st-text-secondary);margin-top:2rem;padding-top:1rem;font-size:.9rem}.admin-users{max-width:1200px;margin:0 auto;padding:1rem}.admin-users h1{margin-bottom:1rem}.admin-users .admin-filter-toggle{gap:.5rem;margin-bottom:1rem;display:flex}.admin-users .admin-filter-toggle button{border:1px solid var(--st-border);color:var(--st-text-primary);cursor:pointer;background:0 0;border-radius:4px;padding:.4rem 1rem;font-size:.9rem}.admin-users .admin-filter-toggle button.active{background:var(--st-accent);color:var(--st-bg-body);border-color:var(--st-accent)}.admin-users .admin-filter-toggle button:hover:not(.active){background:var(--st-bg-elevated)}.admin-users__search{gap:.5rem;margin-bottom:1rem;display:flex}.admin-users__search input{border:1px solid var(--st-border);background:var(--st-bg-surface);color:var(--st-text-primary);border-radius:4px;flex:1;padding:.5rem;font-family:inherit;font-size:.875rem}.admin-users__search input::placeholder{color:var(--st-text-secondary);opacity:.6}.admin-users__search input:focus{border-color:var(--st-accent);outline:none}.admin-users__search button{background:var(--st-bg-elevated);color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.875rem}.admin-users__search button:hover{background:var(--st-accent);color:var(--st-bg-body);border-color:var(--st-accent)}.admin-users__table{border-collapse:collapse;width:100%;font-size:.875rem}.admin-users__table th,.admin-users__table td{text-align:left;vertical-align:top;padding:.5rem}.admin-users__table th{color:var(--st-text-secondary);vertical-align:bottom;font-weight:600}.admin-users__table thead tr,.admin-users__table tbody tr{border-bottom:1px solid var(--st-border)}.admin-users__table tbody tr:hover td{background:var(--st-bg-elevated)}.admin-users__roles{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.admin-users__role-chip{background:color-mix(in srgb, var(--st-accent) 20%, transparent);color:var(--st-accent);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;align-items:center;gap:.2rem;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.admin-users__role-remove{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;padding:0;font-size:.75rem;line-height:1}.admin-users__role-remove:hover{opacity:1}.admin-users__role-add{background:var(--st-bg-surface);color:var(--st-text-secondary);border:1px solid var(--st-border);cursor:pointer;border-radius:4px;padding:.15rem .3rem;font-size:.75rem}.admin-users__actions{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:.25rem;display:flex}.admin-users__reset-inline{align-items:center;gap:.25rem;display:inline-flex}.admin-users__reset-inline input{background:var(--st-bg-surface);width:120px;color:var(--st-text-primary);border:1px solid var(--st-border);border-radius:4px;padding:.25rem;font-size:.75rem}.admin-users__confirm-inline{align-items:center;gap:.25rem;display:inline-flex}.admin-users__batch-bar{background:color-mix(in srgb, var(--st-accent) 10%, var(--st-bg-surface));border:1px solid color-mix(in srgb, var(--st-accent) 30%, transparent);border-radius:6px;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;display:flex}.admin-users__batch-count{color:var(--st-accent);margin-right:.25rem;font-size:.85rem;font-weight:600}.admin-users__checkbox-col{text-align:center;width:2rem;padding-left:.25rem!important;padding-right:0!important}.admin-users__checkbox-col input[type=checkbox]{cursor:pointer;width:1rem;height:1rem;accent-color:var(--st-accent)}.badge{border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.badge--enabled{background:color-mix(in srgb, var(--st-success) 15%, transparent);color:var(--st-success);border:1px solid color-mix(in srgb, var(--st-success) 30%, transparent)}.badge--disabled{background:color-mix(in srgb, var(--st-error) 15%, transparent);color:var(--st-error);border:1px solid color-mix(in srgb, var(--st-error) 30%, transparent)}.badge--verified{background:color-mix(in srgb, var(--st-success) 15%, transparent);color:var(--st-success);border:1px solid color-mix(in srgb, var(--st-success) 30%, transparent)}.badge--unverified{background:color-mix(in srgb, var(--st-accent) 15%, transparent);color:var(--st-accent);border:1px solid color-mix(in srgb, var(--st-accent) 30%, transparent)}.search-bar{gap:.5rem;display:flex}.search-bar input[type=search]{border:1px solid var(--st-border);background:var(--st-bg-surface);color:var(--st-text-primary);border-radius:4px;flex:1;padding:.4rem .8rem;font-size:.875rem}.search-bar button{border:1px solid var(--st-accent);background:var(--st-accent);color:var(--st-bg-body);cursor:pointer;border-radius:4px;padding:.4rem .8rem}.search-results{margin-top:1rem}.search-result{border-bottom:1px solid var(--st-border);padding:.75rem}.search-result a{color:var(--st-accent);text-decoration:none}.search-result a:hover{text-decoration:underline}.search-result .snippet{color:var(--st-text-secondary);margin-top:.25rem;font-size:.875rem}.search-result .snippet mark{background:color-mix(in srgb, var(--st-accent) 20%, transparent)}.favorite-btn{cursor:pointer;color:var(--st-text-secondary);vertical-align:middle;background:0 0;border:none;padding:0 .4rem;font-size:1.25rem;line-height:1;transition:color .15s;display:inline-block}.favorite-btn:hover{color:var(--st-accent)}.favorite-btn.active{color:#e25555}.favorite-btn:disabled{opacity:.5;cursor:not-allowed}.favorites-page .favorites-groups{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}@media (width<=600px){.favorites-page .favorites-groups{grid-template-columns:1fr}}.favorites-page .favorites-group{margin-bottom:2rem}.favorites-page .favorites-group h2{border-bottom:1px solid var(--st-border);margin-bottom:.75rem;padding-bottom:.5rem}.favorites-page .favorites-list{margin:0;padding:0;list-style:none}.favorites-page .favorites-list li{border-bottom:1px solid var(--st-border);padding:.5rem 0}.favorites-page .favorites-list li:last-child{border-bottom:none}.favorites-page .favorites-list a{color:var(--st-accent);text-decoration:none}.favorites-page .favorites-list a:hover{text-decoration:underline}.auth-form{background:var(--st-bg-surface);border:1px solid var(--st-border);border-radius:8px;max-width:400px;margin:3rem auto;padding:2rem}.auth-form h2{text-align:center;margin-bottom:1.5rem}.auth-form .form-group{margin-bottom:1.25rem}.auth-form .form-group label{color:var(--st-text-secondary);margin-bottom:.35rem;font-size:.875rem;font-weight:500;display:block}.auth-form .form-group input[type=email]{background:var(--st-bg-body);border:1px solid var(--st-border);width:100%;color:var(--st-text-primary);border-radius:4px;padding:.6rem .75rem;font-size:1rem}.auth-form .form-group input[type=password]{background:var(--st-bg-body);border:1px solid var(--st-border);width:100%;color:var(--st-text-primary);border-radius:4px;padding:.6rem .75rem;font-size:1rem}.auth-form .form-group input[type=text]{background:var(--st-bg-body);border:1px solid var(--st-border);width:100%;color:var(--st-text-primary);border-radius:4px;padding:.6rem .75rem;font-size:1rem}.auth-form .form-group input[type=email]:focus{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 20%, transparent);outline:none}.auth-form .form-group input[type=password]:focus{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 20%, transparent);outline:none}.auth-form .form-group input[type=text]:focus{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 20%, transparent);outline:none}.auth-form .st-btn{border-radius:6px;padding:.7rem 1rem;font-size:1rem}.auth-form .error{background:color-mix(in srgb, var(--st-error) 12%, transparent);border:1px solid var(--st-error);color:var(--st-error);border-radius:4px;margin-top:1rem;padding:.6rem .75rem;font-size:.875rem}.auth-form .success{background:color-mix(in srgb, var(--st-success) 12%, transparent);border:1px solid var(--st-success);color:var(--st-success);border-radius:4px;margin-top:1rem;padding:.6rem .75rem;font-size:.875rem}.auth-form .auth-link{text-align:center;color:var(--st-text-secondary);margin-top:1.25rem;font-size:.9rem}.auth-form .auth-link a{color:var(--st-accent)}.filter-bar{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.filter-group label{color:var(--st-text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.25rem;font-size:.75rem;font-weight:600;display:block}.filter-group input[type=text]{border:1px solid var(--st-border);background:var(--st-bg-surface);color:var(--st-text-primary);border-radius:4px;outline:none;min-width:160px;padding:.4rem .8rem;font-family:inherit;font-size:.875rem}.filter-group input[type=text]::placeholder{color:var(--st-text-secondary);opacity:.6}.filter-group input[type=text]:focus{border-color:var(--st-accent);box-shadow:0 0 0 2px rgba(var(--st-accent-rgb,100, 149, 237), .15)}.filter-btn{border:1px solid var(--st-border);background:var(--st-bg-surface);color:var(--st-text-secondary);cursor:pointer;border-radius:4px;padding:.4rem .8rem;font-size:.875rem}.filter-btn.active{background:var(--st-accent);color:var(--st-bg-body);border-color:var(--st-accent)}.entity-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.card{border:1px solid var(--st-border);background:var(--st-bg-surface);border-radius:8px;padding:1rem}.card h3{margin:0 0 .5rem}.card a{color:var(--st-text-primary);text-decoration:none}.card a:hover{color:var(--st-accent)}.tags,.characteristics-tags{flex-wrap:wrap;gap:.35rem;margin-top:.5rem;display:flex}.tag{background:var(--st-bg-elevated);color:var(--st-text-secondary);border:1px solid var(--st-border);border-radius:3px;padding:.15rem .5rem;font-size:.75rem;display:inline-block}.card-meta{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.card-details{color:var(--st-text-secondary);font-size:.875rem}.data-table{border-collapse:collapse;width:100%;margin-top:1rem}.data-table th,.data-table td{text-align:left;vertical-align:top;padding:.5rem .75rem}.data-table th{color:var(--st-text-secondary);vertical-align:bottom;font-size:.875rem;font-weight:600}.data-table thead tr,.data-table tbody tr{border-bottom:1px solid var(--st-border)}.data-table td a{color:var(--st-accent);text-decoration:none}.data-table td a:hover{text-decoration:underline}.data-table .role-note{color:var(--st-text-secondary);font-size:.8125rem}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.related-section{border:1px solid var(--st-border);background:var(--st-bg-surface);border-radius:8px;margin-top:2rem;padding:1rem}.related-section.related-section h2{margin-top:0;margin-bottom:.75rem;font-size:1.125rem}.related-section--warning{border-color:var(--st-error);background:color-mix(in srgb, var(--st-error) 5%, transparent)}.related-links{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.related-links li{display:inline-block}.related-links a{border:1px solid var(--st-border);color:var(--st-accent);border-radius:4px;padding:.3rem .6rem;font-size:.875rem;text-decoration:none;display:inline-block}.related-links a:hover{background:var(--st-bg-elevated);text-decoration:underline}.resource-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.resource-card .resource-badges{flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem;display:flex}.resource-card .manufacturer-badge,.resource-card .file-size-badge{background:var(--st-bg-elevated);color:var(--st-text-secondary);border:1px solid var(--st-border);border-radius:4px;padding:.2rem .5rem;font-size:.75rem;display:inline-block}.resource-card .resource-title{color:var(--st-text-primary);text-decoration:none}.resource-card .resource-title:hover{color:var(--st-accent)}.resource-card .resource-title h3{margin:0 0 .5rem}.resource-card .resource-description{color:var(--st-text-secondary);font-size:.875rem;line-height:1.5}.resource-card .resource-source{color:var(--st-text-secondary);margin-top:.5rem;font-size:.8125rem;font-style:italic}.page h2{margin-top:2.5rem;margin-bottom:.75rem}.page>p{max-width:65ch;margin-bottom:1rem;line-height:1.6}.page ul,.page ol{margin-bottom:1.25rem;padding-left:1.5rem;line-height:1.7}.page ul li,.page ol li{margin-bottom:.4rem}.page{width:100%;max-width:960px;margin-left:auto;margin-right:auto;padding:1rem}.access-denied{text-align:center;color:var(--st-text-secondary,#888);padding:3rem}.edit-link,.new-link{background:var(--st-accent,#4a9eff);color:#fff;border-radius:4px;margin-left:1rem;padding:.3rem 1rem;font-size:.85rem;text-decoration:none;display:inline-block}.edit-link:visited,.new-link:visited{color:#fff}.edit-link:hover,.new-link:hover{opacity:.9;color:#fff}.admin-form{max-width:100%;margin:2rem auto}.admin-form .form-group{margin-bottom:1.2rem}.admin-form .form-group label{margin-bottom:.3rem;font-weight:500;display:block}.admin-form .form-group input,.admin-form .form-group select,.admin-form .form-group textarea{background:var(--st-bg-surface,#1a1a1a);width:100%;color:var(--st-text-primary,#e0e0e0);border:1px solid #444;border-radius:4px;padding:.5rem;font-size:1rem}.admin-form .form-group textarea{resize:vertical;min-height:250px}.admin-form .form-group select{cursor:pointer}.admin-form .submit-btn{background:var(--st-accent,#4a9eff);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:.7rem 2rem;font-size:1rem}.admin-form .submit-btn:hover{opacity:.9}.admin-form .submit-btn:disabled{opacity:.6;cursor:not-allowed}.admin-form .error-msg{color:var(--st-error,#f44);margin-top:1rem}.form-row{gap:1rem;display:flex}.form-row .form-group{flex:1}.form-actions{gap:.75rem;margin-top:1rem;display:flex}.cancel-btn{border:1px solid var(--st-border);color:var(--st-text-primary);cursor:pointer;background:0 0;border-radius:4px;padding:.7rem 2rem;font-size:1rem}.cancel-btn:hover{background:var(--st-bg-elevated)}.delete-btn{border:1px solid var(--st-error,#f44);color:var(--st-error,#f44);cursor:pointer;background:0 0;border-radius:4px;padding:.25rem .5rem;font-size:.8rem}.delete-btn:hover{background:color-mix(in srgb, var(--st-error) 10%, transparent)}.nav-link,.nav-user{color:var(--st-nav-text,silver);padding:.25rem .5rem;font-size:.85rem;text-decoration:none}.nav-link:hover,.nav-user:hover{color:#fff}.nav-logout{cursor:pointer;color:var(--st-nav-text);background:0 0;border:none;padding:.25rem .5rem;font-size:.85rem}.nav-logout:hover{background:var(--st-bg-elevated);color:var(--st-text-primary)}@media (width<=1024px){.search-bar{width:100%}.nav-link,.nav-logout{text-align:left;border-radius:4px;width:100%;padding:.5rem .75rem;display:block}}@media (width<=600px){.page{padding:.75rem}.filter-bar{gap:.35rem;margin-bottom:1rem}.filter-btn{padding:.35rem .6rem;font-size:.8rem}.filter-group input[type=text]{width:100%;min-width:0}.resource-list{grid-template-columns:1fr;gap:.75rem}.table-scroll{margin-left:-.75rem;margin-right:-.75rem;padding-left:.75rem;padding-right:.75rem}.data-table{font-size:.8125rem}.data-table th,.data-table td{white-space:nowrap;padding:.4rem .5rem}.search-bar{flex-direction:column}.search-bar input[type=search]{width:100%}.search-bar button{width:100%}.admin-form{max-width:100%;margin:1rem auto}.admin-form .submit-btn{width:100%}.form-row{flex-direction:column;gap:0}h1{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.edit-link,.new-link{margin-left:0;font-size:.8rem}.related-section{padding:.75rem}.related-links{gap:.4rem}.search-result{padding:.5rem 0}.entity-list{grid-template-columns:1fr;gap:.75rem}}@media (width>=601px) and (width<=1024px){.page{padding:1rem 1.5rem}.resource-list{grid-template-columns:repeat(2,1fr)}.admin-form{max-width:100%}.entity-list{grid-template-columns:repeat(2,1fr)}}@media (width>=1025px){.entity-list{grid-template-columns:repeat(3,1fr)}}.st-contact-page{max-width:600px;margin:2rem auto;padding:0 1rem}.st-contact-page h1{margin-bottom:.5rem}.st-contact-page p{color:var(--st-text-secondary);margin-bottom:1.5rem}.st-contact-form .form-group{margin-bottom:1rem}.st-contact-form .form-group label{color:var(--st-text-primary);margin-bottom:.25rem;font-weight:500;display:block}.st-contact-form .form-group input,.st-contact-form .form-group select,.st-contact-form .form-group textarea{border:1px solid var(--st-border);background:var(--st-bg-surface);width:100%;color:var(--st-text-primary);box-sizing:border-box;border-radius:4px;padding:.5rem;font-size:1rem}.st-contact-form .form-group input:focus,.st-contact-form .form-group select:focus,.st-contact-form .form-group textarea:focus{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 30%, transparent);outline:none}.st-contact-form .form-group textarea{resize:vertical;min-height:120px}.st-contact-form .form-group select{cursor:pointer}.st-contact-form .error{color:var(--st-error);margin-top:1rem}.st-contact-success{text-align:center;padding:2rem 0}.st-contact-success h2{margin-bottom:.5rem}.st-contact-success p{margin-bottom:1.5rem}.auth-subtitle{color:var(--st-text-secondary);text-align:center;margin:-.5rem 0 1.25rem;font-size:.9rem}.auth-form .form-group label .optional{color:var(--st-text-secondary);font-weight:400}.auth-form .form-group textarea{background:var(--st-bg-body);border:1px solid var(--st-border);width:100%;color:var(--st-text-primary);resize:vertical;border-radius:4px;padding:.6rem .75rem;font-family:inherit;font-size:1rem}.auth-form .form-group textarea:focus{border-color:var(--st-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--st-accent) 20%, transparent);outline:none}.admin-section{margin-bottom:2rem}.admin-section h2{margin-bottom:.75rem;font-size:1rem}.admin-table{border-collapse:collapse;width:100%;font-size:.85rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--st-border);padding:.5rem .75rem}.admin-table th{color:var(--st-text-secondary);font-weight:600}.tab-bar{border-bottom:2px solid var(--st-border);gap:0;margin-bottom:1rem;display:flex}.tab-btn{color:var(--st-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:.5rem 1rem;font-size:.9rem;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--st-text-primary)}.tab-btn.active{color:var(--st-text-primary);border-bottom-color:var(--st-accent);font-weight:600}.action-cell{align-items:center;gap:.25rem;display:flex}.inline-action{display:inline}.batch-actions{margin-bottom:.75rem}.message-cell{text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.empty-state{color:var(--st-text-secondary);font-style:italic}.modal-overlay{z-index:1000;background:rgba(0,0,0,.6);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--st-bg-surface);border:1px solid var(--st-border);border-radius:var(--st-radius);width:90%;max-width:400px;box-shadow:var(--st-shadow-lg);padding:1.5rem}.modal-title{color:var(--st-text-primary);margin-bottom:1rem;font-size:1.25rem;font-weight:600}.modal-message{color:var(--st-text-secondary);margin-bottom:1.5rem}.modal-input{background:var(--st-bg-body);border:1px solid var(--st-border);width:100%;color:var(--st-text-primary);border-radius:4px;margin-bottom:1rem;padding:.5rem;font-size:1rem}.modal-input:focus{border-color:var(--st-accent);outline:none}.st-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:.25rem;margin:1rem auto;display:flex}.st-pagination-page{border-radius:var(--st-radius);min-width:2rem;height:2rem;color:var(--st-text-secondary);font-family:var(--st-font-ui);cursor:pointer;transition:background var(--st-transition-fast), color var(--st-transition-fast);background:0 0;border:1px solid transparent;justify-content:center;align-items:center;padding:0 .4rem;font-size:.85rem;display:inline-flex}.st-pagination-page:hover{background:var(--st-bg-elevated);color:var(--st-text-primary)}.st-pagination-active{background:var(--st-accent);color:#fff;cursor:default;font-weight:600}.st-pagination-active:hover{background:var(--st-accent);color:#fff}.st-pagination-ellipsis{min-width:1.5rem;height:2rem;color:var(--st-text-secondary);cursor:default;justify-content:center;align-items:center;font-size:.85rem;display:inline-flex}.st-pagination-label{color:var(--st-text-secondary);margin-left:.5rem;font-size:.85rem}.description p,.notes p,.safety-notes p,.technique-body p,.mixing-instructions p{margin:0 0 1em}.description p:last-child,.notes p:last-child,.safety-notes p:last-child,.technique-body p:last-child,.mixing-instructions p:last-child{margin-bottom:0}.description h2,.description h3,.description h4,.notes h2,.notes h3,.notes h4,.safety-notes h2,.safety-notes h3,.safety-notes h4,.technique-body h2,.technique-body h3,.technique-body h4,.mixing-instructions h2,.mixing-instructions h3,.mixing-instructions h4{margin-top:1.5em;margin-bottom:.5em}.description h2:first-child,.description h3:first-child,.description h4:first-child,.notes h2:first-child,.notes h3:first-child,.notes h4:first-child,.safety-notes h2:first-child,.safety-notes h3:first-child,.safety-notes h4:first-child,.technique-body h2:first-child,.technique-body h3:first-child,.technique-body h4:first-child,.mixing-instructions h2:first-child,.mixing-instructions h3:first-child,.mixing-instructions h4:first-child{margin-top:0}.description ul,.description ol,.notes ul,.notes ol,.safety-notes ul,.safety-notes ol,.technique-body ul,.technique-body ol,.mixing-instructions ul,.mixing-instructions ol{margin:0 0 1em 1.5em}.description ul li,.description ol li,.notes ul li,.notes ol li,.safety-notes ul li,.safety-notes ol li,.technique-body ul li,.technique-body ol li,.mixing-instructions ul li,.mixing-instructions ol li{margin-bottom:.25em}.home-page .hero{margin-bottom:2rem}.home-page .related-sites{border:1px solid var(--st-border);background:var(--st-bg-surface);border-radius:8px;max-width:65ch;margin-top:1.5rem;padding:1rem;line-height:1.6}.home-page .related-sites strong{margin-bottom:.5rem;display:block}.home-page .related-sites p{margin:.25rem 0}.home-page .related-sites a{color:var(--st-accent);text-decoration:none}.home-page .related-sites a:hover{text-decoration:underline}.reference-detail .meta{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.reference-detail table{border-collapse:collapse;width:100%;margin:1.25rem 0;font-size:.95rem}.reference-detail table th,.reference-detail table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--st-border);padding:.5rem .75rem}.reference-detail table th{color:var(--st-text-secondary);background:var(--st-bg-elevated);font-weight:600}.reference-detail table tbody tr:hover td{background:var(--st-bg-elevated)}.page-intro{color:var(--st-text-secondary);max-width:65ch;margin-bottom:1.5rem}.technique-category-section{margin-bottom:2rem}.technique-category-section h2{border-bottom:1px solid var(--st-border);margin-bottom:1rem;padding-bottom:.5rem}.technique-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.st-badge{background:var(--st-bg-elevated);color:var(--st-text-secondary);border:1px solid var(--st-border);border-radius:4px;margin-top:.35rem;margin-right:.35rem;padding:.2rem .5rem;font-size:.75rem;display:inline-block}.st-badge--error{color:var(--st-error);background:color-mix(in srgb, var(--st-error) 8%, transparent);border-color:var(--st-error)}@media (width<=600px){.reference-detail .meta{flex-wrap:wrap;gap:.5rem}.technique-list{grid-template-columns:1fr;gap:.75rem}}@media (width>=601px) and (width<=1024px){.technique-list{grid-template-columns:repeat(2,1fr)}}@media (width>=1025px){.technique-list{grid-template-columns:repeat(3,1fr)}}.entity-image{margin:1rem 0}.entity-image img{max-width:100%;height:auto;display:block}.entity-image img[src$=\.svg]{background:#fff;border-radius:4px;padding:.5rem}.entity-image__attribution{color:var(--st-text-secondary);text-align:center;margin-top:.25rem;font-size:.8rem}.entity-image__attribution a{color:inherit;text-decoration:underline}.entity-figure{text-align:center;max-width:min(100%,65ch);margin:1.5rem auto}.entity-figure img{max-width:100%;height:auto;display:inline-block}.entity-figure img[src$=\.svg]{background:#fff;border-radius:4px;padding:.5rem}.entity-figure figcaption{color:var(--st-text-secondary);margin-top:.5rem;font-size:.9rem}.entity-figure figcaption small{margin-top:.25rem;font-size:.8rem;display:block}.entity-figure figcaption small a{color:inherit;text-decoration:underline}.layout-toggle{border:1px solid var(--st-border);background:var(--st-bg-subtle,rgba(0,0,0,.04));border-radius:999px;font-size:.85rem;display:inline-flex;overflow:hidden}.layout-toggle button{color:var(--st-text);cursor:pointer;opacity:.65;font-family:inherit;font-size:inherit;background:0 0;border:0;padding:.4rem .9rem;transition:background .12s,opacity .12s}.layout-toggle button:hover{opacity:.9}.layout-toggle button.active{background:var(--st-accent,#3b82f6);color:var(--st-accent-text,#fff);opacity:1;font-weight:600}.layout-toggle button:focus-visible{outline:2px solid var(--st-focus,#3b82f6);outline-offset:2px}@media (width<=600px){.layout-toggle{display:none}}.reference-listing>h1{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.entity-table{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.9rem}.entity-table thead tr{background:var(--st-bg-subtle,rgba(0,0,0,.05));border-bottom:2px solid var(--st-border)}.entity-table th,.entity-table td{text-align:left;border-bottom:1px solid var(--st-border-faint,rgba(0,0,0,.08));padding:.5rem .6rem}.entity-table th[aria-sort]{cursor:pointer}.entity-table th[aria-sort]:hover{background:var(--st-bg-hover,rgba(0,0,0,.03))}.entity-table th[aria-sort][aria-sort=ascending]:after{content:" ▲";font-size:.75em}.entity-table th[aria-sort][aria-sort=descending]:after{content:" ▼";font-size:.75em}.entity-table tbody tr:hover{background:var(--st-bg-hover,rgba(0,0,0,.03))}.entity-table .col-numeric{white-space:nowrap;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.entity-table .favorite-cell{text-align:center;width:32px}.docs-layout{background:var(--st-bg-body);min-height:0;color:var(--st-text-primary);flex:1;grid-template-columns:16rem 1fr;display:grid}.docs-sidebar{border-right:1px solid var(--st-border);background:var(--st-bg-surface);padding:1rem .75rem;font-size:.95rem;overflow-y:auto}.docs-sidebar-brand{color:var(--st-text-primary);margin-bottom:1rem;padding:0 .5rem;font-weight:600;text-decoration:none;display:block}.docs-sidebar-brand:hover{text-decoration:underline}.docs-sidebar-group{margin-bottom:1.25rem}.docs-sidebar-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--st-text-secondary);opacity:.7;margin:0 0 .4rem .5rem;font-size:.75rem}.docs-sidebar-list{margin:0;padding:0;list-style:none}.docs-sidebar-list li{margin:0}.docs-sidebar-link{color:var(--st-text-primary);border-left:3px solid transparent;border-radius:4px;padding:.35rem .75rem;text-decoration:none;display:block}.docs-sidebar-link:hover{background:var(--st-bg-elevated)}.docs-sidebar-link.active{background:var(--st-bg-elevated);border-left-color:var(--st-accent);font-weight:500}.docs-main{max-width:56rem;min-height:0;padding:1.5rem 2rem 4rem;overflow-y:auto}.docs-breadcrumb{color:var(--st-text-secondary);opacity:.8;margin-bottom:1.5rem;font-size:.875rem}.docs-breadcrumb a{color:inherit;text-decoration:none}.docs-breadcrumb a:hover{text-decoration:underline}.docs-callout{border:1px solid var(--st-border);background:var(--st-bg-surface);border-radius:6px;grid-template-columns:max-content 1fr;gap:0 .75rem;margin:1rem 0;padding:.75rem 1rem;display:grid}.docs-callout.v2{border-left:4px solid #6f42c1}.docs-callout.info{border-left:4px solid #4a90e2}.docs-callout.warn{border-left:4px solid #d97706}.docs-callout-label{text-transform:uppercase;letter-spacing:.04em;color:var(--st-text-secondary);opacity:.85;align-self:start;padding-top:.15rem;font-size:.8rem;font-weight:600}.docs-callout-body p:first-child{margin-top:0}.docs-callout-body p:last-child{margin-bottom:0}.docs-code{border:1px solid var(--st-border);background:var(--st-bg-code);color:var(--st-text-code);border-radius:6px;margin:1rem 0;overflow:clip}.docs-code-toolbar{border-bottom:1px solid var(--st-border);background:var(--st-bg-surface);color:var(--st-text-primary);justify-content:flex-end;align-items:center;gap:.75rem;padding:.4rem .75rem;font-size:.85rem;display:flex}.docs-code-studio-link{color:var(--st-accent);text-decoration:none}.docs-code-studio-link:hover{text-decoration:underline}.docs-code-copy{border:1px solid var(--st-border);cursor:pointer;color:inherit;font:inherit;background:0 0;border-radius:4px;padding:.2rem .6rem;font-size:.85rem}.docs-code-copy:hover{background:var(--st-bg-elevated)}.docs-code pre{margin:0;padding:.85rem 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.45;overflow-x:auto}.docs-word-table,.docs-hcall-table{border-collapse:collapse;width:100%;margin:1rem 0 2rem;font-size:.95rem}.docs-word-table th,.docs-word-table td,.docs-hcall-table th,.docs-hcall-table td{text-align:left;border-bottom:1px solid var(--st-border);vertical-align:top;padding:.5rem .75rem}.docs-word-table th,.docs-hcall-table th{background:var(--st-bg-surface);font-weight:600}.docs-word-table code,.docs-hcall-table code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.docs-steps li{margin-bottom:.6rem;line-height:1.5}.docs-palette{border-collapse:collapse;width:auto;margin:.5rem 0 1.5rem}.docs-palette th,.docs-palette td{border:1px solid var(--st-border);padding:.25rem .75rem}.docs-palette-swatch{border:1px solid var(--st-border);border-radius:3px;width:4rem;height:1.25rem}.docs-lede{margin-bottom:2rem;font-size:1.05rem;line-height:1.55}.docs-cards{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem;margin-bottom:2rem;display:grid}.docs-card{border:1px solid var(--st-border);color:inherit;background:var(--st-bg-surface);border-radius:6px;padding:1rem 1.25rem;text-decoration:none;transition:border-color .12s;display:block}.docs-card:hover{border-color:var(--st-accent)}.docs-card h2{margin-top:0;font-size:1.1rem}.docs-card p{opacity:.85;margin-bottom:0}@media (width<=900px){.docs-layout{flex:0 auto;grid-template-columns:1fr}.docs-sidebar{border-right:none;border-bottom:1px solid var(--st-border);overflow-y:visible}.docs-main{min-height:auto;padding:1rem;overflow-y:visible}}.studio-root{background:var(--st-bg-body);min-height:0;color:var(--st-text-primary);flex-direction:column;flex:1;display:flex}.studio-grid{flex:1;grid-template:"tabs tabs"2.5rem"tabpane preview"1fr"console console"/1fr 28rem;gap:.5rem;min-height:0;padding:.5rem;display:grid}.studio-tabs{border-bottom:1px solid var(--st-border);grid-area:tabs;align-items:center;gap:.25rem;display:flex}.studio-tabs button{color:var(--st-text-secondary);cursor:pointer;font:inherit;transition:color var(--st-transition-fast);background:0 0;border:0;border-bottom:2px solid transparent;padding:.4rem 1rem}.studio-tabs button:hover{color:var(--st-text-primary)}.studio-tabs button.active{color:var(--st-text-primary);border-bottom-color:var(--st-accent)}.studio-tabs-spacer{flex:1}.studio-tabs .studio-toolbar-btn{background:var(--st-bg-surface);color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;transition:background var(--st-transition-fast);border-radius:3px;margin:.25rem .25rem .25rem 0;padding:.35rem .85rem}.studio-tabs .studio-toolbar-btn:hover:not(:disabled){background:var(--st-bg-elevated);color:var(--st-text-primary)}.studio-tabs .studio-toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.studio-tabs .studio-compile-btn{background:var(--st-accent);color:#fff;cursor:pointer;transition:filter var(--st-transition-fast);border:0;border-radius:3px;margin:.25rem .5rem .25rem .25rem;padding:.35rem 1rem}.studio-tabs .studio-compile-btn:hover{color:#fff;filter:brightness(1.1)}.studio-tabs .studio-compile-btn:active{filter:brightness(.9)}.studio-tabpane{grid-area:tabpane;min-height:0;display:flex;overflow:hidden}.studio-tab-code,.studio-tab-sprites,.studio-tab-sounds{flex:1;min-height:0;display:flex}.studio-tab-code.hidden,.studio-tab-sprites.hidden,.studio-tab-sounds.hidden{display:none}.studio-placeholder{color:var(--st-text-secondary);margin:auto;font-style:italic}.sprites-tab{flex:1;grid-template-columns:18rem 1fr 16rem;gap:.5rem;min-height:0;display:grid}.sprites-sheet-col,.sprites-editor-col,.sprites-tools-col{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);padding:.75rem;overflow:auto}.sprites-editor-col{justify-content:center;align-items:center;display:flex}.sprites-placeholder{color:var(--st-text-secondary);text-align:center;font-style:italic}.sounds-tab{flex:1;grid-template:"left grid right"1fr"transport transport transport"/14rem 1fr 14rem;gap:.5rem;min-height:0;display:grid}.sounds-left-col{grid-area:left;grid-template-rows:1fr 1fr;gap:.5rem;min-height:0;display:grid}.sounds-pattern-list-panel,.sounds-instrument-list-panel{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);min-height:0;padding:.5rem;overflow:auto}.sounds-grid-col{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);min-height:0;font-family:var(--st-font-mono);grid-area:grid;padding:.5rem;overflow:auto}.sounds-right-col{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);grid-area:right;min-height:0;padding:.75rem;overflow:auto}.sounds-transport{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);font-family:var(--st-font-mono);color:var(--st-text-secondary);grid-area:transport;align-items:center;gap:1rem;padding:.5rem .75rem;display:flex}.sounds-panel-placeholder{color:var(--st-text-secondary);font-size:.85rem;font-style:italic}.sounds-list-header{color:var(--st-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem;font-size:.85rem;font-weight:600}.sounds-list-rows{flex-direction:column;gap:2px;display:flex}.sounds-list-row{text-align:left;background:var(--st-bg-surface);width:100%;color:var(--st-text-primary);border:1px solid var(--st-border);font-family:var(--st-font-mono);cursor:pointer;border-radius:3px;padding:.25rem .5rem;font-size:.85rem;display:block}.sounds-list-row:hover{background:var(--st-bg-elevated)}.sounds-list-row.active{background:var(--st-accent);color:#fff;border-color:var(--st-accent)}.sounds-list-empty{color:var(--st-text-secondary);padding:.25rem .5rem;font-size:.85rem;font-style:italic}.sounds-list-header-row{align-items:center;gap:.25rem;padding:.25rem .5rem;display:flex}.sounds-list-header-row .sounds-list-header{flex:1;margin:0}.sounds-list-counter{color:var(--st-text-secondary);font-size:.75rem}.sounds-list-btn{background:var(--st-bg-elevated);color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;border-radius:3px;width:1.75rem;height:1.75rem;padding:0;font-size:.875rem;line-height:1}.sounds-list-btn:hover:not(:disabled){background:var(--st-bg-surface)}.sounds-list-btn:disabled{opacity:.4;cursor:not-allowed}.sounds-grid-scroll{width:100%;height:100%;min-height:0;color:var(--st-text-primary);background:var(--st-bg-elevated);overflow:auto}.sounds-grid-canvas{image-rendering:pixelated;background:var(--st-bg-elevated);display:block}.sounds-editor-rows{flex-direction:column;gap:.5rem;display:flex}.sounds-editor-row{font-family:var(--st-font-mono);grid-template-columns:1.5rem 1fr 2.5rem;align-items:center;gap:.5rem;font-size:.85rem;display:grid}.sounds-editor-label{color:var(--st-text-secondary);font-weight:600}.sounds-editor-slider{width:100%}.sounds-editor-slider:not(:disabled){cursor:pointer}.sounds-editor-value{color:var(--st-text-primary);text-align:right}.sounds-editor-channel-pill{background:var(--st-bg-surface);color:var(--st-text-primary);border:1px solid var(--st-border);text-align:center;border-radius:3px;padding:.1rem .5rem;font-size:.75rem}.sounds-editor-channel-select{background:var(--st-bg-surface);color:var(--st-text-primary);border:1px solid var(--st-border);font:inherit;cursor:pointer;border-radius:3px;flex:1;padding:.125rem .25rem;font-size:.85rem}.sounds-editor-test{background:var(--st-bg-surface);width:100%;color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;font:inherit;transition:background var(--st-transition-fast);border-radius:3px;margin-top:.5rem;padding:.25rem .5rem;font-size:.85rem}.sounds-editor-test:hover{background:var(--st-bg-elevated)}.sounds-editor-empty{color:var(--st-text-secondary);font-size:.85rem;font-style:italic}.sounds-transport-cell{color:var(--st-text-primary);border-right:1px solid var(--st-border);padding:0 .5rem}.sounds-transport-cell:last-child{border-right:none}.sounds-transport-btn{background:var(--st-bg-elevated);color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;border-radius:3px;padding:.125rem .5rem;font-size:.875rem}.sounds-transport-btn:hover:not(:disabled){background:var(--st-bg-surface)}.sounds-transport-btn:disabled{opacity:.4;cursor:not-allowed}.sounds-transport-btn.sounds-transport-follow.active{background:var(--st-accent);color:var(--st-bg-body);border-color:var(--st-accent)}.palette{grid-template-columns:repeat(8,1fr);gap:2px;margin-bottom:1rem;display:grid}.palette-swatch{aspect-ratio:1;border:2px solid var(--st-border);cursor:pointer;transition:transform var(--st-transition-fast), border-color var(--st-transition-fast);border-radius:2px;padding:0}.palette-swatch:hover{transform:scale(1.1)}.palette-swatch.selected{border-color:var(--st-accent);transform:scale(1.1)}.palette-transparent{background-color:var(--st-bg-surface);background-image:linear-gradient(45deg, var(--st-text-secondary) 25%, transparent 25%, transparent 75%, var(--st-text-secondary) 75%), linear-gradient(45deg, var(--st-text-secondary) 25%, transparent 25%, transparent 75%, var(--st-text-secondary) 75%);background-position:0 0,4px 4px;background-size:8px 8px}.tile-canvas{image-rendering:pixelated;cursor:crosshair;touch-action:none;border:1px solid var(--st-border);aspect-ratio:1;border-radius:4px;width:256px;max-width:100%;height:256px;max-height:100%}.tile-sheet-wrapper{aspect-ratio:1;width:100%;position:relative}.tile-sheet-canvas{image-rendering:pixelated;cursor:crosshair;touch-action:none;border:1px solid var(--st-border);border-radius:4px;width:100%;height:100%;display:block}.tile-sheet-cursor{pointer-events:none;box-sizing:border-box;border:2px solid var(--st-accent);width:6.25%;height:6.25%;transform:translate(calc(var(--cursor-col,0) * 100%), calc(var(--cursor-row,0) * 100%));transition:transform var(--st-transition-fast);border-radius:2px;position:absolute;top:0;left:0}.sprites-active-tile-label{text-align:center;color:var(--st-text-secondary);font-family:var(--st-font-mono);margin-top:.5rem;font-size:.85rem}.sprites-tools,.sprites-transforms,.sprites-history{grid-template-columns:repeat(2,1fr);gap:.25rem;margin-top:.5rem;display:grid}.sprites-tools{margin-top:.75rem}.sprites-tool-btn{background:var(--st-bg-surface);color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;font:inherit;transition:background var(--st-transition-fast), border-color var(--st-transition-fast);border-radius:3px;padding:.4rem .5rem}.sprites-tool-btn:hover:not(.active):not(:disabled){background:var(--st-bg-elevated)}.sprites-tool-btn.active{background:var(--st-accent);color:#fff;border-color:var(--st-accent)}.sprites-tool-btn:disabled{opacity:.4;cursor:not-allowed}.code-tab{flex:1;min-height:0;display:flex}.code-tab-host{border:1px solid var(--st-border);border-radius:3px;flex:1;min-height:0;overflow:auto}.code-tab-host .cm-editor{height:100%;font-family:var(--st-font-mono);font-size:.9rem}.code-tab-host .cm-scroller{font-family:inherit}.code-tab-host .cm-content{padding:.5rem 0}[data-theme=light] .code-tab-host{--cm-keyword:#a626a4;--cm-builtin:#4078f2;--cm-name:#383a42;--cm-number:#986801;--cm-string:#50a14f;--cm-comment:#a0a1a7}[data-theme=dark] .code-tab-host{--cm-keyword:#c678dd;--cm-builtin:#61afef;--cm-name:#abb2bf;--cm-number:#d19a66;--cm-string:#98c379;--cm-comment:#5c6370}.studio-preview{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);flex-direction:column;grid-area:preview;align-items:center;gap:.5rem;padding:.75rem;display:flex}.studio-preview-canvas-wrap{aspect-ratio:1;width:100%;max-width:25rem;image-rendering:pixelated;background:#000}.studio-preview-canvas{width:100%;height:100%;image-rendering:pixelated}.studio-preview-controls{gap:.5rem;display:flex}.studio-preview-controls button{background:var(--st-bg-surface);color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;border-radius:3px;padding:.3rem 1rem}.studio-preview-controls button:hover:not(:disabled){background:var(--st-bg-elevated)}.studio-preview-controls button:disabled{opacity:.5;cursor:not-allowed}.studio-console{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);grid-area:console;max-height:12rem;padding:.5rem;overflow:auto}.studio-console summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600}.studio-console-list{font-family:var(--st-font-mono);color:var(--st-text-primary);margin:0;padding:.5rem 0 0;font-size:.85rem;list-style:none}.studio-console-list li{align-items:baseline;gap:.75rem;padding:.1rem 0;display:flex}.studio-console-list li:empty{display:none}.studio-console-list .console-ts{color:var(--st-text-secondary);font-variant-numeric:tabular-nums;flex-shrink:0}.studio-console-list .console-info .console-msg{color:var(--st-text-primary)}.studio-console-list .console-warn .console-msg{color:var(--st-status-warning-text)}.studio-console-list .console-error .console-msg{color:var(--st-error)}.cart-tab{flex:1;grid-template-columns:1fr 1fr;gap:.75rem;min-height:0;padding:.5rem;display:grid}.cart-meta-col,.cart-inspector-col{background:var(--st-bg-elevated);border:1px solid var(--st-border);border-radius:var(--st-radius);padding:1rem;overflow:auto}.cart-form{flex-direction:column;gap:.75rem;display:flex}.cart-form-row{grid-template-rows:auto auto;grid-template-columns:6rem 1fr;align-items:center;gap:.25rem .5rem;display:grid}.cart-form-label{color:var(--st-text-secondary);font-size:.9rem}.cart-form-input{background:var(--st-bg-surface);color:var(--st-text-primary);border:1px solid var(--st-border);font:inherit;border-radius:3px;grid-column:2;padding:.4rem .5rem}.cart-form-input:focus{outline:2px solid var(--st-accent);outline-offset:-2px}.cart-form-input.invalid{border-color:var(--st-error)}.cart-form-input:disabled{opacity:.6;cursor:not-allowed}.cart-form-hint{color:var(--st-text-secondary);font-size:.8rem;font-family:var(--st-font-mono);grid-column:2}.cart-inspector,.cart-inspector-empty,.cart-inspector-error{color:var(--st-text-primary)}.cart-inspector-empty{color:var(--st-text-secondary);font-style:italic}.cart-inspector-error{color:var(--st-error);font-family:var(--st-font-mono)}.cart-inspector-pre{font-family:var(--st-font-mono);white-space:pre-wrap;margin:0;font-size:.85rem;line-height:1.5}.modal-backdrop{z-index:1000;background:rgba(0,0,0,.5);place-items:center;display:grid;position:fixed;inset:0}.modal-dialog{background:var(--st-bg-elevated);color:var(--st-text-primary);border:1px solid var(--st-border);border-radius:var(--st-radius);min-width:24rem;max-width:32rem;padding:1.25rem;box-shadow:0 8px 24px rgba(0,0,0,.4)}.modal-title{margin:0 0 .75rem;font-size:1.1rem}.modal-body{color:var(--st-text-secondary);margin:0 0 1rem}.modal-actions{justify-content:flex-end;gap:.5rem;display:flex}.modal-btn{border:1px solid var(--st-border);cursor:pointer;font:inherit;background:var(--st-bg-surface);color:var(--st-text-primary);border-radius:3px;padding:.4rem 1rem}.modal-btn:hover{background:var(--st-bg-body)}.modal-btn-confirm{background:var(--st-accent);color:#fff;border-color:var(--st-accent)}.modal-btn-confirm:hover{filter:brightness(1.1);color:#fff}@media (width<=1180px){.studio-grid{grid-template-columns:1fr 22rem}.sprites-tab{grid-template-columns:14rem 1fr 13rem}.sounds-tab{grid-template-columns:12rem 1fr 12rem}}@media (width<=900px){.studio-grid{grid-template:"tabs"2.5rem"tabpane"1fr"preview""console"/1fr}.studio-preview{grid-area:preview;max-height:16rem}.sprites-tab{grid-template-rows:auto auto auto;grid-template-columns:1fr}.sprites-editor-col{min-height:18rem}.sounds-tab{grid-template:"left""grid""right""transport"/1fr}.sounds-grid-col{min-height:16rem;max-height:24rem}}.sprites-tab-outer{flex-direction:column;height:100%;display:flex}.sprites-tab-toolbar{border-bottom:1px solid var(--st-border);flex-shrink:0;align-items:center;gap:.5rem;padding:.25rem .5rem;display:flex}.sprites-tab-toolbar-field{align-items:center;gap:.5rem;display:flex}.sprites-tab-toolbar-label{color:var(--st-text-secondary);font-size:.75rem}.sprites-tab-toolbar-select{background:var(--st-bg-elevated);color:var(--st-text-primary);border:1px solid var(--st-border);font:inherit;cursor:pointer;border-radius:3px;padding:.125rem .25rem;font-size:.875rem}.sprites-tab-toolbar-select:hover{background:var(--st-bg-surface)}.sprites-tab-toolbar-select:focus{outline:2px solid var(--st-accent);outline-offset:-2px}.sprite-shell{max-width:600px;margin:2rem auto;padding:1rem}.sprite-shell h1{color:var(--st-text-primary);margin:0 0 1rem;font-size:1.5rem}.sprite-shell .controls{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.sprite-shell .controls button,.sprite-shell .controls select{background:var(--st-bg-surface);color:var(--st-text-primary);border:1px solid var(--st-border);cursor:pointer;border-radius:4px;padding:.5rem 1rem}.sprite-shell .controls button:hover,.sprite-shell .controls select:hover{background:var(--st-bg-elevated)}canvas#sprite-display{image-rendering:pixelated;border:1px solid var(--st-border);background:#000;display:block}#error-pane{color:var(--st-error);font-family:var(--st-font-mono);white-space:pre-wrap;margin-top:1rem}