@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-Dx4kXJAl.woff2)format("woff2")}@font-face{font-family:Roboto;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/roboto-ccAYIvAh.woff2)format("woff2")}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-display:swap;src:url(/assets/open-sans-CWNzRldh.woff2)format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/montserrat-l_AIctKy.woff2)format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/assets/playfair-display-BOwq7MWX.woff2)format("woff2")}@font-face{font-family:Oswald;font-style:normal;font-weight:200 700;font-display:swap;src:url(/assets/oswald-9AWb_KF-.woff2)format("woff2")}@font-face{font-family:Merriweather;font-style:normal;font-weight:300 900;font-display:swap;src:url(/assets/merriweather-BovdrKvB.woff2)format("woff2")}@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/pacifico-7HIToT7q.woff2)format("woff2")}:root{--text:#6b6b7b;--text-h:#0d0f24;--bg:#f5f6f8;--border:#dadadb;--code-bg:#eceef1;--accent:#fd641e;--accent-hover:#fd834b;--accent-bg:#fd641e1a;--accent-border:#fd641e80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sidebar-bg:#0d0f24;--sidebar-text:#dadadb;--sidebar-text-active:#fff;--sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--heading:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:15px}}@media (prefers-color-scheme:dark){:root{--text:#9c9cab;--text-h:#f5f6f8;--bg:#14152b;--border:#2e2f45;--code-bg:#1c1d36;--accent:#fd834b;--accent-hover:#fd9a6b;--accent-bg:#fd834b26;--accent-border:#fd834b80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}*,:before,:after{box-sizing:border-box}#root{flex-direction:column;min-height:100svh;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.app{flex-direction:column;width:100%;height:100svh;padding:24px;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;display:flex}.header-right{align-items:center;gap:16px;display:flex}.language-switcher select{border:1px solid var(--border);color:inherit;font:inherit;background:0 0;border-radius:6px;padding:6px 10px;font-size:13px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button{border:1px solid var(--border);color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:8px 14px;transition:background-color .15s,border-color .15s}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.5;cursor:default}.button-link{border:1px solid var(--border);color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:8px 14px;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-block}.button-link:hover{border-color:var(--accent)}.toolbar button:first-of-type,.create-form button[type=submit],.login-form button[type=submit],.canvas-toolbar button:nth-of-type(2),.editor-layout .publish-panel button[type=button]:not(.link-button){background:var(--accent);border-color:var(--accent);color:#fff}.toolbar button:first-of-type:hover:not(:disabled),.create-form button[type=submit]:hover:not(:disabled),.login-form button[type=submit]:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.app-main{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.app-header h1{font-size:20px}.user-info{align-items:center;gap:12px;font-size:14px;display:flex}.link-button{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0}.centered{justify-content:center;align-items:center;height:100vh;display:flex}.app-body{flex:1;align-items:stretch;gap:24px;min-width:0;min-height:0;display:flex}.app-sidebar{background:var(--sidebar-bg);width:200px;color:var(--sidebar-text);border-radius:12px;flex-direction:column;flex-shrink:0;gap:12px;padding:16px 12px;display:flex;overflow-y:auto}.brand-lockup{align-items:center;gap:10px;display:flex}.brand-logo{object-fit:contain;flex-shrink:0;width:36px;height:36px}.brand-text{flex-direction:column;line-height:1.15;display:flex}.brand-title{font-family:"Inter", var(--sans);color:inherit;font-size:17px;font-style:italic;font-weight:700}.brand-subtitle{font-family:"Inter", var(--sans);letter-spacing:.02em;color:var(--accent);font-size:11px;font-weight:700}.nav-divider{background:#ffffff1f;flex-shrink:0;height:1px;margin:0 8px}.app-sidebar ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.app-sidebar a{color:var(--sidebar-text);border-radius:6px;padding:8px 12px;font-size:14px;text-decoration:none;transition:background-color .15s;display:block}.app-sidebar a:hover{color:var(--sidebar-text-active);background:#ffffff14}.app-sidebar a.active{background:var(--accent);color:#fff;font-weight:600}.app-content{flex:1;min-width:0;min-height:0;overflow-y:auto}.login-form{flex-direction:column;gap:16px;max-width:320px;margin:64px auto;display:flex}.login-form label{flex-direction:column;gap:4px;font-size:14px;display:flex}.login-form input,.toolbar input{border:1px solid var(--border);background:var(--bg-elevated,transparent);width:100%;color:inherit;font:inherit;border-radius:6px;padding:8px}.toolbar{align-items:end;gap:12px;margin-bottom:24px;display:flex}.toolbar label{flex-direction:column;flex:1;gap:4px;font-size:14px;display:flex}.error{color:#d33}.layouts-table{border-collapse:collapse;width:100%}.layouts-table th{text-align:left;border-bottom:1px solid var(--border);letter-spacing:.05em;text-transform:uppercase;opacity:.6;padding:8px 14px;font-size:12px;font-weight:600}.layouts-table td{text-align:left;border-bottom:1px solid var(--border);padding:13px 14px}.layouts-table tbody tr:hover td{background:color-mix(in srgb, var(--accent) 6%, transparent)}.status-pill{border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.status-pill:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-pill-ok{color:#4caf7d;background:#4caf7d26}.status-pill-pending{color:var(--accent-hover,#fd834b);background:#fd834b26}.status-pill-blocked{color:#d94a4a;background:#d94a4a26}.status-pill-neutral{color:#9195bd;background:#9195bd26}.create-form{border:1px solid var(--border);border-radius:8px;align-items:end;gap:12px;margin-bottom:16px;padding:12px;display:flex}.create-form label{flex-direction:column;gap:4px;font-size:14px;display:flex}.create-form input,.create-form textarea{border:1px solid var(--border);width:100%;color:inherit;font:inherit;resize:vertical;background:0 0;border-radius:6px;padding:8px}.detail-list{grid-template-columns:max-content 1fr;gap:4px 16px;margin:16px 0;display:grid}.detail-list dt{opacity:.7;font-weight:600}.object-list{padding-left:20px}.hint{opacity:.7;margin:8px 0 20px;font-style:italic}.badge{background:var(--accent);color:#fff;border-radius:10px;padding:2px 8px;font-size:.8em;display:inline-block}.detail-header{z-index:3;background:var(--bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:8px;padding:8px 0;display:flex;position:sticky;top:0}.detail-actions{align-items:center;gap:12px;display:flex}.dirty-indicator{color:#d9a03c;font-size:13px}.validation-panel{border:1px solid var(--border);border-radius:8px;margin:8px 0 16px;padding:12px 16px}.validation-panel.validation-valid{background:#3ca35c1a;border-color:#3ca35c}.validation-panel.validation-invalid{background:#dd333314;border-color:#d33}.validation-issue-list{margin:8px 0 0;padding-left:20px}.validation-issue-list li.issue-blocking{color:#d33}.validation-issue-list li.issue-warning{color:#d9a03c}.editor-layout{flex-direction:column;gap:12px;min-width:0;margin-top:16px;display:flex}.canvas-toolbar{align-items:center;gap:8px;display:flex}.canvas-toolbar select{border:1px solid var(--border);color:inherit;background:0 0;border-radius:6px;padding:6px}.grid-toggle{border-left:1px solid var(--border);margin-left:8px;padding-left:8px}.grid-field{flex-direction:row;align-items:center;gap:6px;font-size:13px;display:flex}.grid-field input{border:1px solid var(--border);width:52px;color:inherit;font:inherit;background:0 0;border-radius:6px;padding:5px 6px}.editor-body{flex-wrap:wrap;align-items:flex-start;gap:12px;min-width:0;display:flex}.canvas-wrapper{border:1px solid var(--border);border-radius:8px;max-width:100%;overflow:auto}.layout-stage{display:block}.properties-panel{border:1px solid var(--border);border-radius:8px;flex-direction:column;flex-shrink:0;gap:12px;width:260px;min-width:0;padding:12px;display:flex}.properties-panel h3{text-align:center;margin:0}.properties-panel label{flex-direction:column;gap:4px;min-width:0;font-size:13px;display:flex}.properties-panel .hint{font-size:13px}.properties-panel input[type=text],.properties-panel input[type=number],.properties-panel input:not([type]){border:1px solid var(--border);width:100%;color:inherit;font:inherit;background:0 0;border-radius:6px;padding:6px}.properties-section{border-top:1px solid var(--border);padding-top:8px}.properties-section:first-of-type{border-top:none;padding-top:0}.properties-section>summary{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;opacity:.75;list-style:revert;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:600;transition:background-color .15s,color .15s}.properties-section>summary:hover{opacity:1}.properties-section[open]>summary{margin-bottom:8px}.properties-section.active>summary{background:var(--accent);color:#fff;opacity:1}.properties-section label,.properties-section .geometry-grid,.properties-section .checkbox-label{margin-top:8px}.properties-section label:first-of-type,.properties-section .geometry-grid:first-of-type{margin-top:0}.geometry-grid{grid-template-columns:1fr 1fr;gap:8px 12px;min-width:0;display:grid}.geometry-grid input{-moz-appearance:textfield;min-width:0}.geometry-grid input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.geometry-grid input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.checkbox-label{align-items:center;flex-direction:row!important;gap:8px!important}.text-style-toggles{gap:12px;display:flex}.dataregion-editor{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding-top:12px;display:flex}.dataregion-editor h4{opacity:.8;margin:0;font-size:13px}.dataregion-editor select{border:1px solid var(--border);width:100%;color:inherit;font:inherit;background:0 0;border-radius:6px;padding:6px}.data-region-binding-fieldset{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:8px;margin:0 0 10px;padding:8px;display:flex}.data-region-binding-fieldset legend{text-transform:uppercase;letter-spacing:.04em;opacity:.7;padding:0 4px;font-size:11px}.preview-result{border:1px solid var(--border);border-radius:6px;max-height:200px;padding:8px;font-size:12px;overflow-y:auto}.preview-result ul{margin:4px 0 0;padding-left:16px}.preview-group-header{opacity:.8;margin:6px 0 2px -16px;font-weight:600}.preview-page-marker{text-transform:uppercase;letter-spacing:.04em;opacity:.6;border-top:1px dashed var(--border);margin:8px 0 2px -16px;padding-top:4px;font-size:11px}.preview-result ul.manual-order-list{flex-direction:column;gap:2px;margin:4px 0 0;padding-left:0;list-style:none;display:flex}.manual-order-item{cursor:grab;border-radius:4px;align-items:center;gap:6px;padding:3px 4px;display:flex}.manual-order-item:hover{background:#ffffff0f}.manual-order-item:active{cursor:grabbing}.manual-order-item .drag-handle{opacity:.5;-webkit-user-select:none;user-select:none}.manual-order-item-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.manual-order-item-controls{gap:2px;display:flex}.manual-order-item-controls button{padding:0 5px;font-size:11px;line-height:1.6}.filter-rule-list{flex-direction:column;gap:6px;display:flex}.filter-rule-list-label{opacity:.8;font-size:12px}.filter-rule-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-rule-row select,.filter-rule-row input{flex:1;min-width:0}.filter-group-box{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:6px;padding:8px;display:flex}.data-object-form{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:start;gap:24px;margin-bottom:16px;padding:16px;display:grid}@media (width<=900px){.data-object-form{grid-template-columns:1fr}}.data-object-form-main{flex-direction:column;gap:16px;min-width:0;display:flex}.data-object-form-main>label{flex-direction:column;gap:4px;max-width:420px;font-size:14px;display:flex}.data-object-form input{border:1px solid var(--border);color:inherit;font:inherit;background:0 0;border-radius:6px;padding:8px}.data-object-form-preview{border:1px solid var(--border);background:var(--bg-elevated,transparent);border-radius:8px;flex-direction:column;gap:8px;max-height:calc(100vh - 160px);padding:12px;display:flex;position:sticky;top:16px}.data-object-form-preview .preview-result{flex:1;min-height:0;max-height:none}.data-object-form-preview h4{opacity:.8;align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.data-object-form-preview .preview-spinner{opacity:.6;font-size:11px;font-weight:400}.data-object-query-editor{flex-direction:column;gap:16px;max-width:720px;display:flex}.data-object-query-editor>label{flex-direction:column;gap:4px;max-width:320px;font-size:14px;display:flex}.data-object-query-editor select,.data-object-query-editor input[type=number]{border:1px solid var(--border);color:inherit;font:inherit;background:0 0;border-radius:6px;padding:6px}.publish-panel{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:10px;margin:12px 0;padding:12px;display:flex}.screen-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.publish-result{border:1px solid var(--border);border-radius:6px;padding:8px;font-size:13px}.hidden-file-input{display:none}.media-dropzone{border:2px dashed #0000;border-radius:8px;min-height:80px;transition:border-color .15s,background-color .15s}.media-dropzone-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.media-dropzone-hint{text-align:center;opacity:.8;padding:24px}.media-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-top:16px;display:grid}.media-card{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;padding:8px;display:flex}.media-card img,.media-card video{object-fit:contain;background:var(--bg-elevated,#8080801a);border-radius:4px;width:100%;height:120px}.media-card-name{word-break:break-all;font-size:13px}.media-picker-preview{object-fit:contain;max-width:100%;max-height:120px}.playlist-item-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.playlist-item-row{border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px;display:flex}.playlist-item-thumb{object-fit:cover;background:var(--bg-elevated,#8080801a);border-radius:4px;width:40px;height:40px}.playlist-item-name{word-break:break-all;flex:1;min-width:80px;font-size:12px}.playlist-item-duration{align-items:center;font-size:12px;flex-direction:row!important;gap:4px!important}.playlist-item-duration input{width:60px}
