.layout-shell{--layout-header-height: 72px;min-height:100vh;width:100%;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:var(--layout-header-height) minmax(0,1fr);background:var(--color-bg);color:var(--color-text);overflow-x:clip}.layout-top{grid-column:1 / -1;grid-row:1;position:sticky;top:0;z-index:1400;display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);height:var(--layout-header-height);padding:.6rem 1rem;border-bottom:none;box-shadow:none;background:var(--menu-bg, var(--color-surface));color:var(--menu-text, var(--font-color-primary, #111));min-width:0}.layout-top-left,.layout-top-right{display:flex;align-items:center;gap:.5rem;min-width:0}.layout-logo-btn{display:inline-flex;align-items:center;gap:.6rem;border:0;background:transparent;color:inherit;cursor:pointer;padding:.2rem .4rem}.layout-logo-mark{width:2rem;height:2rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;background:var(--color-surface, #fff);color:var(--primary-color, #4f46e5)}.layout-logo-text{font-size:1rem;font-weight:700;letter-spacing:.01em}.layout-logo-image{height:2.25rem;width:auto;display:block}.layout-icon-btn{border:0;background:transparent;color:inherit;cursor:pointer;font-size:1.2rem;line-height:1;padding:.25rem .4rem;border-radius:.35rem;white-space:nowrap}.layout-icon-btn:hover{background:#ffffff40}.layout-brand{font-size:1.1rem;font-weight:700}.layout-top-nav{display:flex;gap:var(--space-2);align-items:center}.layout-top-controls{display:flex;gap:var(--space-2);align-items:center;min-width:0}.layout-theme-label{font-size:.875rem;color:inherit}.layout-theme-select{padding:.35rem .5rem;border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.2);background:var(--color-surface, #fff);color:var(--font-color-primary, #111)}.layout-user-email{max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit;font-size:.8rem}.layout-auth-btn{border:0;border-radius:.35rem;padding:.35rem .6rem;font-size:.8rem;font-weight:600;cursor:pointer;background:var(--color-link, var(--primary-color, #4f46e5));color:var(--color-on-primary, #fff)}.layout-auth-btn-login{background:var(--color-success, #15803d);color:var(--color-on-primary, #fff)}.layout-flyout-menu{padding:var(--space-4);background:var(--menu-bg, var(--color-surface));min-height:100%}.layout-center{padding:var(--space-5);overflow:auto}.layout-panel-title{margin:0 0 var(--space-3) 0;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.layout-vertical-nav{display:grid;gap:var(--space-2)}.layout-menu-link{display:flex;align-items:center;border-radius:var(--radius-md);border:1px solid transparent;padding:.45rem .7rem;color:var(--color-text);text-decoration:none;width:100%;box-sizing:border-box}.layout-menu-link:hover{text-decoration:none;background:var(--color-surface-alt)}.layout-menu-link.is-active{font-weight:600;border-color:var(--color-border);background:var(--color-surface-alt)}.slide-animation{position:fixed;top:var(--layout-header-height);bottom:0;width:min(150px,25vw);background:var(--menu-bg, var(--color-surface));color:var(--menu-text, var(--font-color-primary, #111));z-index:1300;overflow-y:auto;box-shadow:none}.slide-animation.left{left:0}.slide-animation.right{right:0}.slide-animation-content{padding:0;min-height:100%;background:inherit}.slide-animation-backdrop{position:fixed;top:var(--layout-header-height);left:0;right:0;bottom:0;background:#0000004d;z-index:1200}@media(max-width:1080px){.layout-theme-label,.layout-theme-select,.layout-user-email{display:none}}@media(max-width:760px){.layout-shell{--layout-header-height: 64px;display:block}.layout-top{display:flex;justify-content:space-between;gap:.25rem;padding:.55rem .6rem}.layout-logo-text{display:none}.layout-logo-image{height:1.8rem}.layout-icon-btn{font-size:.86rem;padding:.25rem .35rem}.layout-auth-btn{font-size:.74rem;padding:.28rem .42rem}.layout-center{padding:var(--space-4)}}:root{--font-family-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-loose: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .08);--shadow-md: 0 8px 24px rgba(15, 23, 42, .12)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-family-sans);font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--font-color-primary, #111);background-color:var(--color-bg, #f5f5f5);overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-3) 0;line-height:var(--line-height-tight)}p{margin:0 0 var(--space-3) 0}a{color:var(--color-link, #2563eb);text-decoration:none}a:hover{color:var(--color-link-hover, #1d4ed8);text-decoration:underline}button,input,textarea,select{font:inherit}:focus-visible{outline:2px solid var(--color-focus, #4f46e5);outline-offset:2px}.page{max-width:92rem;margin:0 auto;padding:var(--space-6) var(--space-5)}.stack{display:grid;gap:var(--space-4)}.inline{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}.ui-label{color:var(--font-color-secondary);font-size:var(--font-size-sm);font-weight:600}.ui-filter-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.ui-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.ui-panel{background:var(--color-surface-alt);border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);border-radius:var(--radius-md);padding:var(--space-3)}.ui-empty{text-align:center;background:var(--color-surface-alt);border-style:dashed}.ui-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.settings-panel,.settings-meta-row,.settings-field-row,.settings-preference-row,.settings-subcard,.settings-workspace-card{min-width:0}.settings-panel{width:100%;overflow:hidden}.settings-subcard{width:100%;justify-self:stretch;overflow:hidden}.settings-subcard>*{min-width:0}.settings-field-input{min-width:0;width:min(100%,24rem);max-width:24rem}.settings-theme-select{min-width:0;width:min(100%,20rem);max-width:100%}@media(max-width:720px){.page{padding:var(--space-5) var(--space-3)}.settings-panel,.settings-subcard{padding:var(--space-4)}.settings-field-row,.settings-preference-row{align-items:stretch}.settings-field-input,.settings-theme-select{flex-basis:100%;width:100%;max-width:none}}.themed-button{display:flex;align-items:center;justify-content:center;gap:.5rem;background:transparent;border:none;cursor:pointer}.themed-circle-wrap{position:relative;width:78px;height:78px;display:inline-flex;align-items:center;justify-content:center}.themed-circle{width:56px;height:56px;border-radius:50%;border:2px solid var(--primary-color);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-surface, #ffffff);z-index:2}.themed-circle img{width:100%;height:100%;object-fit:cover}.themed-text{font-size:1rem;color:var(--primary-color)}.themed-text-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.themed-text-ring text{fill:var(--primary-color);font-family:var(--font-family-sans, "Inter", "Segoe UI", system-ui, -apple-system, sans-serif);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;paint-order:stroke;stroke:var(--color-surface, #ffffff);stroke-width:.6px;text-anchor:middle}.visibility-toggle{--visibility-size: 2.5rem;--visibility-icon-size: 1.25rem;display:inline-flex;align-items:center;justify-content:center;width:var(--visibility-size);height:var(--visibility-size);padding:0;border-radius:999px;border:1px solid var(--color-border, #cbd5f5);background:var(--color-surface, #ffffff);color:var(--font-color-primary, #0f172a);cursor:pointer;box-shadow:0 1px 2px #0f172a14;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .12s ease}.visibility-toggle:hover{background:var(--color-surface-alt, #f1f5f9);border-color:var(--color-border, #94a3b8);box-shadow:0 2px 4px #0f172a1f}.visibility-toggle:active{transform:scale(.98)}.visibility-toggle:focus-visible{outline:2px solid var(--color-focus, #2563eb);outline-offset:2px}.visibility-icon{width:var(--visibility-icon-size);height:var(--visibility-icon-size);display:block}.visibility-icon path,.visibility-icon circle,.visibility-icon line{stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.card{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, rgba(15, 23, 42, .12));border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.card-interactive{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-3);display:grid;gap:var(--space-3);text-align:left;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.card-interactive:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.card-interactive.is-selected{border-color:color-mix(in srgb,var(--color-focus) 60%,var(--color-border));box-shadow:0 0 0 2px color-mix(in srgb,var(--color-focus) 24%,var(--color-surface))}.card-hitarea{all:unset;display:grid;gap:var(--space-3);cursor:pointer;width:100%;color:inherit}.card-hitarea:focus-visible{outline:2px solid color-mix(in srgb,var(--color-focus) 65%,transparent);outline-offset:2px;border-radius:var(--radius-md)}.card-image{border-radius:var(--radius-md);height:120px;display:grid;place-items:center;padding:var(--space-3);background:linear-gradient(160deg,color-mix(in srgb,var(--color-surface-alt) 80%,var(--color-surface)),color-mix(in srgb,var(--color-border) 40%,transparent)),repeating-linear-gradient(45deg,transparent 0 8px,color-mix(in srgb,var(--color-border) 26%,transparent) 8px 16px)}.card-image span{color:var(--font-color-secondary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:700;text-align:center}.card-title{font-size:var(--font-size-md);line-height:var(--line-height-tight)}.card-actions{display:flex;justify-content:flex-end;margin-top:var(--space-1)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.25rem .5rem;border-radius:999px;font-size:var(--font-size-xs);background:var(--color-surface-alt, #f1f5f9);color:var(--font-color-secondary, #444)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);padding:.4rem .8rem;min-height:2.125rem;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;font-weight:600;font-size:var(--font-size-sm);line-height:1.2;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.btn-primary{background:var(--primary-color, #4f46e5);color:var(--color-on-primary, #ffffff);border-color:color-mix(in srgb,var(--primary-color, #4f46e5) 72%,black);box-shadow:0 1px 2px #0f172a1f}.btn-primary:hover{background:color-mix(in srgb,var(--primary-color, #4f46e5) 88%,black)}.btn-primary:active{transform:translateY(1px)}.btn-primary:focus-visible{outline:2px solid var(--color-focus, #2563eb);outline-offset:2px}.btn-outline{background:transparent;border-color:var(--primary-color, #4f46e5);color:var(--primary-color, #4f46e5)}.btn-ghost{background:var(--color-surface-alt, #f1f5f9);color:var(--font-color-primary, #111)}.input{width:100%;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--color-border, rgba(15, 23, 42, .12));background:var(--color-surface, #ffffff)}.multi-select{position:relative}.multi-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);text-align:left;cursor:pointer}.multi-select-summary{color:var(--font-color-primary, #111);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multi-select-menu{position:absolute;top:calc(100% + var(--space-1));left:0;right:0;z-index:20;border:1px solid var(--color-border, rgba(15, 23, 42, .12));border-radius:var(--radius-sm);background:var(--color-surface, #ffffff);box-shadow:var(--shadow-md);padding:var(--space-2);display:grid;gap:var(--space-1)}.multi-select-menu.is-scrollable{max-height:14rem;overflow-y:auto}.multi-select-option{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--font-color-primary, #111)}.multi-select-empty{margin:0;color:var(--font-color-secondary, #444);font-size:var(--font-size-sm)}.hero{position:relative;overflow:hidden}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(120% 90% at 100% 0%,color-mix(in srgb,var(--color-info) 16%,transparent),transparent 70%),radial-gradient(120% 80% at 0% 100%,color-mix(in srgb,var(--color-warning) 14%,transparent),transparent 70%)}.hero-subtitle{max-width:56ch}.modal-backdrop{position:fixed;top:var(--layout-header-height, 0px);right:0;bottom:0;left:0;z-index:1250;display:grid;place-items:center;padding:var(--space-4);overflow-y:auto;background:color-mix(in srgb,var(--font-color-primary) 28%,transparent)}.modal{width:min(92vw,52rem);max-height:calc(100dvh - var(--layout-header-height, 0px) - (var(--space-4) * 2));overflow:auto;padding:var(--space-5)}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}.progress-track{width:100%;border-radius:999px;height:.5rem;background:color-mix(in srgb,var(--color-border) 42%,transparent);overflow:hidden}.progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--color-success) 82%,var(--color-surface)),var(--color-success))}.timeline{gap:var(--space-2)}.timeline-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);display:grid;gap:var(--space-2)}.collapsible-card{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, rgba(15, 23, 42, .12));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.collapsible-card.is-open{border-color:color-mix(in srgb,var(--color-focus) 40%,var(--color-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-focus) 18%,transparent),var(--shadow-sm)}.collapsible-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.collapsible-card-summary{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.collapsible-card-summary:focus-visible{outline:2px solid color-mix(in srgb,var(--color-focus) 65%,transparent);outline-offset:-2px}.collapsible-card-summaryText{min-width:0;display:grid;gap:var(--space-1);flex:1}.collapsible-card-titleRow{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.collapsible-card-title{font-size:var(--font-size-md);font-weight:700;line-height:var(--line-height-tight)}.collapsible-card-meta{color:var(--color-text-muted, var(--font-color-secondary, #444));font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapsible-card-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;flex-shrink:1;min-width:0}.collapsible-card-chevron{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:999px;background:color-mix(in srgb,var(--color-border) 26%,transparent);color:var(--font-color-secondary, #444);font-size:.95rem;transition:transform .16s ease,background-color .16s ease}.collapsible-card.is-open .collapsible-card-chevron{transform:rotate(90deg);background:color-mix(in srgb,var(--color-focus) 18%,transparent)}.collapsible-card-body{padding:0 var(--space-3) var(--space-3);border-top:1px solid color-mix(in srgb,var(--color-border) 75%,transparent)}.simplified-preset-actions{padding-right:var(--space-3)}.simplified-preset-enable{display:inline-flex;gap:var(--space-1);align-items:center;font-weight:600}.simplified-preset-body{display:grid;gap:var(--space-2)}.simplified-preset-filter{display:grid;gap:var(--space-1);padding-top:var(--space-2)}.simplified-preset-filter+.simplified-preset-filter{border-top:1px solid color-mix(in srgb,var(--color-border) 65%,transparent)}.simplified-preset-filterHeader{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.simplified-preset-filterName{font-weight:700;line-height:var(--line-height-tight)}.effect-field-grid{display:flex;gap:var(--space-1);align-items:center;flex-wrap:wrap}.effect-field-stack{gap:.25rem}.effect-field-row{display:inline-flex;gap:var(--space-1);align-items:center;flex-wrap:wrap;min-width:0}.effect-field-labelGroup{display:inline-flex;gap:.25rem;align-items:center;flex-shrink:0}.effect-field-hintBadge{display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;border-radius:999px;border:1px solid var(--color-border, rgba(15, 23, 42, .12));font-size:.75rem;line-height:1;cursor:help}.effect-slider-range{min-width:6rem}.effect-slider-number{width:7.5ch}.levels-editor{width:min(100%,28rem);padding:var(--space-1);border:1px solid color-mix(in srgb,var(--color-border) 65%,transparent);border-radius:.8rem;background:color-mix(in srgb,var(--color-surface) 88%,transparent);gap:var(--space-1)}.levels-editor-toolbar{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.levels-editor-toolbar select{min-width:8ch}.levels-picker-btn{padding-inline:.5rem}.levels-picker-btn.is-active{border-color:color-mix(in srgb,var(--color-focus) 65%,var(--color-border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-focus) 35%,transparent)}.levels-picker-hint{font-size:var(--font-size-xs)}.levels-histogram{position:relative;overflow:hidden;display:flex;align-items:flex-end;height:4.75rem;border-radius:.55rem;border:1px solid color-mix(in srgb,var(--color-border) 65%,transparent);background:linear-gradient(180deg,#ffffff2e,#ffffff0a),repeating-linear-gradient(90deg,rgba(255,255,255,.045),rgba(255,255,255,.045) 1px,transparent 1px,transparent 22px),linear-gradient(180deg,#00000014,#00000038)}.levels-histogram-bars{position:absolute;top:.3rem;right:.35rem;bottom:1.1rem;left:.35rem;display:grid;grid-template-columns:repeat(96,minmax(0,1fr));gap:1px;align-items:end}.levels-histogram-bar{width:100%;min-height:2px;border-radius:1px 1px 0 0;background:linear-gradient(180deg,#ffffffd9,#ffffff47);opacity:.88}.levels-histogram-handles{position:absolute;left:.35rem;right:.35rem;bottom:.2rem;height:.8rem}.levels-histogram-handle{position:absolute;transform:translate(-50%);width:0;height:0;padding:0;border:0;cursor:ew-resize;border-left:.33rem solid transparent;border-right:.33rem solid transparent;border-top:.55rem solid rgba(255,255,255,.92);background:transparent;filter:drop-shadow(0 0 2px rgba(0,0,0,.45))}.levels-histogram-handle-black{border-top-color:#151515}.levels-histogram-handle-gray{border-top-color:#b5bbc4}.levels-histogram-handle-white{border-top-color:#fff}.levels-group{gap:.35rem}.levels-group-title{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:600}.levels-handle-strip{display:grid;gap:.25rem}.levels-handle-strip input[type=range]{width:100%;margin:0}.levels-number-row{display:grid;gap:var(--space-1)}.levels-number-row input[type=number]{width:100%;min-width:0}.levels-number-row:has(input:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}.levels-number-row:not(:has(input:nth-child(3))){grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:520px){.effect-control-row,.preset-actions-row{align-items:stretch}.effect-control-label,.preset-actions-label{width:100%;display:grid!important;gap:var(--space-1)}.effect-control-label .input,.preset-actions-label .input{width:100%!important;min-width:0}.effect-control-primary-action,.preset-actions-row .btn{width:100%;justify-content:center}.preset-actions-row .btn{margin-left:0}}.effect-field-hintText{margin:0;max-width:36ch}.text-muted{color:var(--color-muted, #94a3b8)}.text-accent{color:var(--font-color-accent, #007bff)}.text-center{text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
