.error-boundary-fallback{display:flex;text-align:center;background-color:color-mix(in oklch,var(--destructive)5%,var(--background));border:1px solid color-mix(in oklch,var(--destructive)20%,transparent);border-radius:12px;flex-direction:column;justify-content:center;align-items: center;gap:16px;padding:48px 24px}.error-boundary-icon{color:var(--destructive);width:48px;height:48px}.error-boundary-title{color:var(--foreground);margin:0;font-size:1.25rem;font-weight:600}.error-boundary-message{color:var(--muted-foreground);max-width:400px;margin:0;font-size:.875rem;line-height:1.5}.error-boundary-actions{display:flex;gap:12px;margin-top:8px}.error-boundary-button{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,border-color .2s,box-shadow .2s;font-size:.875rem;font-weight:500}.error-boundary-button:hover:not(:disabled){transform:scale(1.02)}.error-boundary-button:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.error-boundary-button[data-variant=secondary]{color:var(--foreground);background-color:var(--input-background);border:1px solid var(--border)}.error-boundary-button[data-variant=secondary]:hover{background-color:var(--accent)}.error-boundary-button[data-variant=primary]{color:var(--primary-foreground);background-color:var(--primary)}.error-boundary-button[data-variant=primary]:hover{background-color:color-mix(in oklch,var(--primary)90%,black)}.error-boundary-button:active:not(:disabled){transition-duration:80ms;transform:scale(.95)}.error-boundary-details{text-align:left;width:100%;max-width:500px;margin-top:16px}.error-boundary-summary{color:var(--muted-foreground);cursor:pointer;padding:8px 0;font-size:.875rem;font-weight:500}.error-boundary-summary:hover{color:var(--foreground)}.error-boundary-stack{color:var(--muted-foreground);background-color:var(--input-background);border:1px solid var(--border);overflow:auto;white-space:pre-wrap;word-break:break-word;border-radius:8px;margin-top:8px;padding:12px;font-family:SF Mono,Consolas,Liberation Mono,Menlo,monospace;font-size:.75rem}@media (prefers-reduced-motion:reduce){.error-boundary-button{transition:none}}.dialog-overlay{position:fixed;z-index:50;background:#00000080;inset:0}.dialog-overlay[data-state=open]{animation:fade-in .2s ease-out}.dialog-overlay[data-state=closed]{animation:fade-out .2s ease-out}.dialog-content{position:fixed;z-index:50;display:grid;border:1px solid var(--border);background:var(--background);border-radius:1rem;gap:1rem;width:100%;max-width:calc(100% - 2rem);padding:1.5rem;transition:all .2s;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 .625rem 1rem -.1875rem #0000001a,0 .25rem .375rem -.25rem #0000001a}.dialog-content[data-state=open]{animation:fade-in .2s ease-out,zoom-in .2s ease-out}.dialog-content[data-state=closed]{animation:fade-out .2s ease-out,zoom-out .2s ease-out}@media (min-width:640px){.dialog-content{max-width:32rem}}.dialog-content>[data-slot=dialog-close]{position:absolute;display:flex;cursor:pointer;opacity:.7;outline:none;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items: center;padding:0;transition:opacity .2s;top:1rem;right:1rem}.dialog-content>[data-slot=dialog-close]:hover{opacity:1}.dialog-content>[data-slot=dialog-close]:focus-visible{box-shadow:0 0 0 .125rem var(--ring)}.dialog-content>[data-slot=dialog-close]:disabled{pointer-events:none}.dialog-content>[data-slot=dialog-close][data-state=open]{background:var(--accent);color:var(--muted-foreground)}.dialog-content>[data-slot=dialog-close] svg{pointer-events:none;flex-shrink:0;width:1rem;height:1rem}.dialog-header{display:flex;text-align:center;flex-direction:column;gap:.5rem}@media (min-width:640px){.dialog-header{text-align:left}}.dialog-footer{display:flex;flex-direction:column-reverse;gap:.5rem}@media (min-width:640px){.dialog-footer{flex-direction:row;justify-content:flex-end}}.dialog-title{font-size:1.125rem;font-weight:600;line-height:1}.dialog-description{color:var(--muted-foreground);font-size:.875rem}.button{display:inline-flex;white-space:nowrap;cursor:pointer;outline:none;backface-visibility:hidden;-webkit-font-smoothing:subpixel-antialiased;border:1px solid #0000;border-radius:8px;flex-shrink:0;justify-content:center;align-items: center;gap:.5rem;transition:transform .12s ease-out,background .2s,color .2s,border-color .2s,box-shadow .2s,opacity .2s;font-size:.875rem;font-weight:500;transform:translateZ(0)}.button svg{pointer-events:none;flex-shrink:0}.button svg:not([class*=size-]){width:1rem;height:1rem}.button[data-variant=default]{background:var(--primary);color:var(--primary-foreground)}.button[data-variant=default]:hover:not(:disabled){background:color-mix(in oklch,var(--primary)90%,transparent);transform:translateZ(0)scale(1.02)}.button[data-variant=destructive]{background:var(--destructive);color:var(--destructive-foreground)}.button[data-variant=destructive]:hover:not(:disabled){background:color-mix(in oklch,var(--destructive)90%,transparent);transform:translateZ(0)scale(1.02)}.button[data-variant=outline]{border:1px solid var(--border);background:var(--background);color:var(--foreground)}.button[data-variant=outline]:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground);transform:translateZ(0)scale(1.02)}.button[data-variant=secondary]{background:var(--secondary);color:var(--secondary-foreground)}.button[data-variant=secondary]:hover:not(:disabled){background:color-mix(in oklch,var(--secondary)80%,transparent);transform:translateZ(0)scale(1.02)}.button[data-variant=ghost]{background:0 0}.button[data-variant=ghost]:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground);transform:translateZ(0)scale(1.02)}.button[data-variant=link]{color:var(--primary);text-decoration:underline;text-underline-offset:4px}.button[data-variant=link]:hover:not(:disabled){text-decoration:none}.button[data-variant=action]{background:var(--action-button);color:var(--action-button-foreground)}.button[data-variant=action]:hover:not(:disabled){background:color-mix(in oklch,var(--action-button)90%,transparent);transform:translateZ(0)scale(1.02)}.button[data-size=default]{height:2.25rem;padding:.5rem 1rem}.button[data-size=default]:has(>svg){padding-left:.75rem;padding-right:.75rem}.button[data-size=sm]{border-radius:8px;gap:.375rem;height:2rem;padding:.5rem .75rem}.button[data-size=sm]:has(>svg){padding-left:.625rem;padding-right:.625rem}.button[data-size=lg]{border-radius:8px;height:2.5rem;padding:.5rem 1.5rem}.button[data-size=lg]:has(>svg){padding-left:1rem;padding-right:1rem}.button[data-size=icon]{position:relative;border-radius:8px;width:2.25rem;height:2.25rem}.button[data-size=icon]:before{content:"";position:absolute;border-radius:12px;inset:-4px}.button:active:not(:disabled){transition-duration:80ms;transform:translateZ(0)scale(.95)}.button:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.button[data-variant=destructive]:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)20%,transparent)}.button[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)20%,transparent)}.dark .button[aria-invalid=true]{box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)40%,transparent)}.button:disabled{cursor:not-allowed;opacity:.5}@media (prefers-reduced-motion:reduce){.button{transition:none}}.error-report-dialog{gap:0;max-width:28rem;padding:0}.error-report-dialog .dialog-header{padding:24px 24px 16px}.error-report-body{display:flex;animation:error-report-cascade .3s ease-out .1s both;flex-direction:column;gap:16px;padding:16px 24px}.error-summary{display:flex;background-color:color-mix(in oklch,var(--destructive)10%,transparent);border:1px solid color-mix(in oklch,var(--destructive)25%,transparent);border-radius:8px;align-items: flex-start;gap:12px;padding:12px 16px}.error-summary-icon{color:var(--destructive);flex-shrink:0;width:1.25rem;height:1.25rem;margin-top:2px}.error-summary-content{display:flex;flex-direction:column;gap:4px;min-width:0}.error-summary-name{color:var(--destructive);font-size:.875rem;font-weight:600}.error-summary-message{color:var(--muted-foreground);word-break:break-word;font-size:.8125rem}.error-report-field{display:flex;flex-direction:column;gap:8px}.error-report-label{color:var(--foreground);font-size:.875rem;font-weight:500}.error-report-label .optional{color:var(--muted-foreground);font-weight:400}.error-report-textarea{color:var(--foreground);background-color:var(--input-background);border:1px solid var(--border);resize:vertical;border-radius:8px;width:100%;padding:10px 12px;transition:border-color .15s ease-out,box-shadow .15s ease-out;font-family:inherit;font-size:.875rem;line-height:1.5}.error-report-textarea:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)20%,transparent)}.error-report-textarea::placeholder{color:var(--muted-foreground)}.error-report-textarea:disabled{opacity:.6;cursor:not-allowed}.error-report-severity{display:flex;gap:8px}.error-report-severity-option{color:var(--muted-foreground);background-color:var(--input-background);border:1px solid var(--border);cursor:pointer;border-radius:6px;flex:1;padding:8px 12px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,border-color .2s,color .2s;font-size:.8125rem;font-weight:500}.error-report-severity-option:hover:not(:disabled){background-color:var(--accent);color:var(--foreground);transform:scale(1.02)}.error-report-severity-option:active:not(:disabled){transition-duration:80ms;transform:scale(.95)}.error-report-severity-option:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.error-report-severity-option[data-selected=true]{background-color:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.error-report-severity-option[data-severity=high][data-selected=true],.error-report-severity-option[data-severity=critical][data-selected=true]{background-color:var(--destructive);border-color:var(--destructive);color:var(--destructive-foreground)}.error-report-severity-option:disabled{opacity:.6;cursor:not-allowed}.error-report-details-toggle{display:flex;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;align-items: center;gap:8px;padding:8px 0;transition:color .15s ease-out;font-size:.8125rem;font-weight:500}.error-report-details-toggle:hover:not(:disabled){color:var(--foreground)}.error-report-details-toggle:disabled{cursor:not-allowed}.error-report-details-icon{width:1rem;height:1rem;transition:transform .2s ease-out}.error-report-details-icon[data-expanded=true]{transform:rotate(180deg)}.error-report-details{overflow:auto;background-color:var(--input-background);border:1px solid var(--border);border-radius:8px;max-height:200px}.error-report-details-content{color:var(--muted-foreground);white-space:pre-wrap;word-break:break-all;margin:0;padding:12px;font-family:SF Mono,Consolas,Liberation Mono,Menlo,monospace;font-size:.75rem}.error-report-error{color:var(--destructive);background-color:color-mix(in oklch,var(--destructive)10%,transparent);border:1px solid color-mix(in oklch,var(--destructive)25%,transparent);border-radius:8px;padding:10px 12px;font-size:.8125rem}.error-report-footer{display:flex;border-top:1px solid var(--border);animation:error-report-cascade .3s ease-out .15s both;justify-content:flex-end;gap:12px;padding:16px 24px}.error-report-submit{display:flex;align-items: center;gap:8px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,box-shadow .2s}.error-report-submit:hover:not(:disabled){transform:scale(1.02)}.error-report-submit:active:not(:disabled){transition-duration:80ms;transform:scale(.95)}.error-report-submit-icon{width:1rem;height:1rem}.error-report-loading{display:flex;align-items: center;gap:8px}.error-report-success{position:absolute;display:flex;background-color:var(--background);animation:error-report-fade-in .2s ease-out;border-radius:1rem;flex-direction:column;justify-content:center;align-items: center;gap:12px;inset:0}.error-report-success-icon{color:var(--action-button);width:48px;height:48px}.error-report-success-text{color:var(--foreground);font-size:1rem;font-weight:600}.error-report-success-subtext{color:var(--muted-foreground);font-size:.875rem}@keyframes error-report-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes error-report-cascade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.error-report-success,.error-report-details-icon,.error-report-body,.error-report-footer,.error-report-severity-option,.error-report-submit{animation:none;transition:none}}.input{display:flex;border:1px solid var(--border);background:var(--input-background);color:var(--foreground);outline:none;border-radius:6px;width:100%;min-width:0;height:2.25rem;padding:.25rem .75rem;transition:color .2s,box-shadow .2s;font-size:1rem}.input::-webkit-file-upload-button{display:inline-flex;color:var(--foreground);font-size:.875rem;font-weight:var(--font-weight-medium);background:0 0;border:0;height:1.75rem}.input::file-selector-button{display:inline-flex;color:var(--foreground);font-size:.875rem;font-weight:var(--font-weight-medium);background:0 0;border:0;height:1.75rem}.input::placeholder{color:var(--muted-foreground)}.input::selection{background:var(--primary);color:var(--primary-foreground)}.input:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.input:disabled{pointer-events:none;cursor:not-allowed;opacity:.5}.input[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)20%,transparent)}@media (min-width:768px){.input{font-size:.875rem}}.dark .input[aria-invalid=true]{box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)40%,transparent)}@keyframes modal-enter{0%{opacity:0;transform:scale(.98)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes field-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.login-modal{overflow:hidden;border:1px solid var(--border);animation:modal-enter .3s ease-out;border-radius:1rem;max-width:24rem;padding:0;box-shadow:0 4px 24px #00000014,0 1px 4px #0000000a}.login-modal-header{display:flex;text-align:center;border-bottom:1px solid var(--border);flex-direction:column;align-items: center;padding:2rem 2rem 1.5rem}.login-modal-title{color:var(--foreground);letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.25rem;font-weight:600}.login-modal-subtitle{color:var(--muted-foreground);margin:0;font-size:.8125rem}.login-modal-form{padding:1.5rem 2rem 2rem}.login-modal-error{background-color:color-mix(in oklch,var(--destructive)10%,transparent);border:1px solid color-mix(in oklch,var(--destructive)25%,transparent);color:var(--destructive);animation:field-enter .2s ease-out;border-radius:.5rem;margin-bottom:1rem;padding:.625rem .75rem;font-size:.8125rem}.dark .login-modal-error{background-color:color-mix(in oklch,var(--destructive)15%,transparent);border-color:color-mix(in oklch,var(--destructive)30%,transparent)}.login-modal-form-group{animation:field-enter .3s ease-out both;margin-bottom:.875rem}.login-modal-form-group[data-spacing=large]{margin-bottom:1.5rem}.login-modal-form-group:first-of-type{animation-delay:50ms}.login-modal-form-group:nth-of-type(2){animation-delay:.1s}.login-modal-form-group:nth-of-type(3){animation-delay:.15s}.login-modal-label{display:block;color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.375rem;font-size:.6875rem;font-weight:500}.login-modal-input-wrapper{position:relative}.login-modal-input-wrapper .input{border-radius:.5rem;height:2.625rem;padding-left:2.5rem;padding-right:1rem;transition:border-color .15s,box-shadow .15s;font-size:.875rem}.login-modal-input-wrapper.has-toggle .input{padding-right:2.5rem}.login-modal-input-wrapper .input:focus-visible{border-color:var(--foreground);box-shadow:0 0 0 2px color-mix(in oklch,var(--foreground)15%,transparent)}.login-modal-input-icon{position:absolute;color:var(--muted-foreground);width:1rem;height:1rem;top:50%;left:.75rem;transform:translateY(-50%)}.login-modal-password-toggle{position:absolute;color:var(--muted-foreground);cursor:pointer;display:flex;background:0 0;border:0;justify-content:center;align-items: center;padding:0;transition:color .15s;top:50%;right:.75rem;transform:translateY(-50%)}.login-modal-password-toggle:hover,.login-modal-password-toggle[data-active=true]{color:var(--foreground)}.login-modal-password-toggle svg{width:1rem;height:1rem}.login-modal-submit{background-color:var(--action-button);color:var(--action-button-foreground);cursor:pointer;animation:field-enter .3s ease-out .2s both;border:0;border-radius:.5rem;width:100%;margin-top:.5rem;padding:.6875rem;transition:background-color .15s,transform .1s;font-size:.875rem;font-weight:500}.login-modal-submit:hover:not(:disabled){background-color:color-mix(in oklch,var(--action-button)90%,black)}.login-modal-submit:active:not(:disabled){transform:scale(.98)}.login-modal-submit:disabled{opacity:.5;cursor:not-allowed}.login-modal-divider{display:flex;align-items: center;gap:1rem;margin:1.25rem 0}.login-modal-divider:before,.login-modal-divider:after{content:"";background:var(--border);flex:1;height:1px}.login-modal-divider-text{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem}.login-modal-switch{text-align:center;color:var(--muted-foreground);font-size:.8125rem}.login-modal-switch-button{color:var(--foreground);cursor:pointer;text-decoration:underline;text-underline-offset:2px;background:0 0;border:0;transition:opacity .15s;font-weight:500}.login-modal-switch-button:hover{opacity:.7}@media (prefers-reduced-motion:reduce){.login-modal,.login-modal-form-group,.login-modal-submit,.login-modal-error{animation:none}}.tooltip-content{position:relative;z-index:50;background:var(--primary);color:var(--primary-foreground);text-wrap:balance;transform-origin:var(--radix-tooltip-content-transform-origin);border-radius:6px;width:-moz-fit-content;width:fit-content;padding:6px 12px;font-size:.75rem}.tooltip-content[data-state=delayed-open]{animation:tooltip-fade-in .15s ease-out,tooltip-zoom-in .15s ease-out}.tooltip-content[data-state=closed]{animation:tooltip-fade-out .1s ease-in,tooltip-zoom-out .1s ease-in}.tooltip-content[data-side=bottom]{animation:tooltip-fade-in .15s ease-out,tooltip-zoom-in .15s ease-out,tooltip-slide-in-from-top .15s ease-out}.tooltip-content[data-side=left]{animation:tooltip-fade-in .15s ease-out,tooltip-zoom-in .15s ease-out,tooltip-slide-in-from-right .15s ease-out}.tooltip-content[data-side=right]{animation:tooltip-fade-in .15s ease-out,tooltip-zoom-in .15s ease-out,tooltip-slide-in-from-left .15s ease-out}.tooltip-content[data-side=top]{animation:tooltip-fade-in .15s ease-out,tooltip-zoom-in .15s ease-out,tooltip-slide-in-from-bottom .15s ease-out}@keyframes tooltip-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tooltip-fade-out{0%{opacity:1}to{opacity:0}}@keyframes tooltip-zoom-in{0%{transform:scale(.95)}to{transform:scale(1)}}@keyframes tooltip-zoom-out{0%{transform:scale(1)}to{transform:scale(.95)}}@keyframes tooltip-slide-in-from-top{0%{transform:translateY(-.5rem)}to{transform:translateY(0)}}@keyframes tooltip-slide-in-from-bottom{0%{transform:translateY(.5rem)}to{transform:translateY(0)}}@keyframes tooltip-slide-in-from-left{0%{transform:translate(-.5rem)}to{transform:translate(0)}}@keyframes tooltip-slide-in-from-right{0%{transform:translate(.5rem)}to{transform:translate(0)}}.theme-toggle-button{position:relative;display:flex;color:var(--muted-foreground);cursor:pointer;outline:none;background-color:#0000;border:none;border-radius:8px;justify-content:center;align-items: center;padding:8px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,color .2s}.theme-toggle-button:before{content:"";position:absolute;border-radius:14px;inset:-6px}.theme-toggle-icon{width:20px;height:20px}.theme-toggle-button:hover{background-color:var(--accent);color:var(--foreground);transform:scale(1.02)}.theme-toggle-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.theme-toggle-button:active{transition-duration:80ms;transform:scale(.95)}@media (prefers-reduced-motion:reduce){.theme-toggle-button{transition:none}.theme-toggle-button:hover,.theme-toggle-button:active{transform:none}}.football-field{position:absolute;border-radius:inherit;background:var(--field-bg);width:100%;height:100%;top:0;left:0}.football-field-svg{position:absolute;top:0;left:0}.image-visual{display:block;border-radius:var(--radius);max-width:100%;max-height:100%}.image-visual--placeholder{display:flex;background:color-mix(in oklch,var(--muted)10%,transparent);border:2px dashed var(--border);border-radius:var(--radius);justify-content:center;align-items: center;width:100%;height:100%;min-height:100px}.resizable-container{position:relative}.resize-handle{position:absolute;background:var(--primary);border:1px solid var(--primary-foreground);z-index:10;border-radius:2px;width:8px;height:8px}.resize-handle--nw{cursor:nwse-resize;top:-4px;left:-4px}.resize-handle--n{cursor:ns-resize;top:-4px;left:50%;transform:translate(-50%)}.resize-handle--ne{cursor:nesw-resize;top:-4px;right:-4px}.resize-handle--e{cursor:ew-resize;top:50%;right:-4px;transform:translateY(-50%)}.resize-handle--se{cursor:nwse-resize;bottom:-4px;right:-4px}.resize-handle--s{cursor:ns-resize;bottom:-4px;left:50%;transform:translate(-50%)}.resize-handle--sw{cursor:nesw-resize;bottom:-4px;left:-4px}.resize-handle--w{cursor:ew-resize;top:50%;left:-4px;transform:translateY(-50%)}.resize-handle:hover{background:var(--primary);opacity:.8}.resize-handle:active{background:var(--primary);opacity:1}.text-visual{color:var(--foreground);line-height:1.6}.text-visual p{margin:.5em 0}.text-visual p:first-child{margin-top:0}.text-visual p:last-child{margin-bottom:0}.text-visual a{color:var(--primary);text-decoration:underline}.text-visual a:hover{color:var(--primary-hover,var(--primary))}.text-visual--empty{color:var(--muted-foreground);font-style:italic}.header-visual{color:var(--foreground);margin:0;font-weight:700;line-height:1.2}.header-visual--level-1{font-size:2.5rem}.header-visual--level-2{font-size:2rem}.header-visual--level-3{font-size:1.75rem}.header-visual--level-4{font-size:1.5rem}.header-visual--level-5{font-size:1.25rem}.header-visual--level-6{font-size:1rem}@container (width>=0){.header-visual--level-1{font-size:4.17cqi}.header-visual--level-2{font-size:3.33cqi}.header-visual--level-3{font-size:2.92cqi}.header-visual--level-4{font-size:2.5cqi}.header-visual--level-5{font-size:2.08cqi}.header-visual--level-6{font-size:1.67cqi}}.header-visual--empty{color:var(--muted-foreground);font-style:italic;font-weight:400}.divider-visual{border:none;border-top:1px solid var(--border);width:100%;height:0;margin:1rem 0}.divider-visual--solid{border-top-style:solid}.divider-visual--dashed{border-top-style:dashed}.divider-visual--dotted{border-top-style:dotted}.row-visual{width:100%;min-height:2rem}.column-visual{min-height:2rem}.reference-wrapper{position:relative;border-radius:var(--radius);width:100%}.reference-wrapper--fit-contain{object-fit:contain}.reference-wrapper--fit-cover{object-fit:cover}.auto-play-animation{position:relative;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-field-dark,#1e3a0f);width:100%}.auto-play-animation-canvas{width:100%;height:100%}:root{--landing-max-width:75rem;--landing-section-padding:9rem;--landing-accent:var(--color-blue)}.landing-page{background-color:var(--background);color:var(--foreground);overflow-x:hidden;overflow-y:auto;height:100vh}.landing-skip-link{position:absolute;background-color:var(--action-button);color:var(--action-button-foreground);z-index:100;border-radius:.5rem;padding:.5rem 1rem;transition:top .2s;top:-6.25rem;left:1rem}.landing-skip-link:focus{top:1rem}.landing-nav{position:fixed;z-index:50;background-color:color-mix(in oklch,var(--background)80%,transparent);backdrop-filter:blur(.75rem);border-bottom:1px solid #0000;height:3.5rem;transition:all .2s;top:0;left:0;right:0}.landing-nav-scrolled{border-bottom-color:var(--border)}.landing-nav-container{display:flex;justify-content:space-between;align-items: center;height:100%;padding:0 1.5rem}.landing-nav-logo{display:flex;text-decoration:none;color:var(--foreground);align-items: center;gap:.5rem}.landing-nav-logo-icon{width:1.75rem;height:1.75rem}.landing-nav-logo-text{letter-spacing:-.02em;font-size:1.125rem;font-weight:600}.landing-nav-links{position:absolute;display:flex;align-items: center;gap:2rem;left:50%;transform:translate(-50%)}.landing-nav-link{color:var(--muted-foreground);text-decoration:none;transition:color .2s;font-size:.875rem;font-weight:500}.landing-nav-link:hover{color:var(--foreground)}.landing-nav-actions{display:flex;align-items: center;gap:.75rem}.landing-nav-signin{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;padding:.375rem .75rem;transition:color .2s;font-size:.875rem;font-weight:500}.landing-nav-signin:hover{color:var(--foreground)}.landing-nav-signin:focus-visible{outline:2px solid var(--ring);outline-offset:.125rem;border-radius:.375rem}.landing-nav-cta{font-size:.8125rem}.landing-hero{display:flex;padding-bottom:var(--landing-section-padding);background-color:var(--background);flex-direction:column;justify-content:flex-end;align-items: center;min-height:100vh}.landing-hero-container{max-width:var(--landing-max-width);display:flex;text-align:center;flex-direction:column;align-items: center;gap:2.5rem;width:100%;margin:0 auto;padding:0 1.5rem}.landing-hero-content{animation:fade-slide-up .6s ease-out;max-width:50rem}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}.landing-hero-eyebrow{display:inline-block;color:var(--landing-accent);text-transform:uppercase;letter-spacing:.1em;animation:fade-slide-up .6s ease-out;animation-fill-mode:both;margin-bottom:.75rem;font-size:.8125rem;font-weight:600}.landing-hero-headline{letter-spacing:-.03em;color:var(--foreground);text-wrap:balance;animation:fade-slide-up .6s ease-out;animation-delay:.1s;animation-fill-mode:both;margin:0 0 1rem;font-size:3.5rem;font-weight:700;line-height:1.1}.landing-hero-subhead{color:var(--muted-foreground);animation:fade-slide-up .6s ease-out;animation-delay:.2s;animation-fill-mode:both;max-width:28rem;margin:0 auto 1.5rem;font-size:1.125rem;line-height:1.6}.landing-hero-ctas{display:flex;animation:fade-slide-up .6s ease-out;animation-delay:.3s;animation-fill-mode:both;justify-content:center;align-items: center;gap:1.5rem}.landing-hero-cta-primary{display:flex;align-items: center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem}.landing-hero-cta-icon{width:1rem;height:1rem}.landing-hero-cta-secondary{display:flex;color:var(--muted-foreground);text-decoration:none;align-items: center;gap:.5rem;transition:color .2s;font-size:.9375rem;font-weight:500}.landing-hero-cta-secondary:hover{color:var(--foreground)}.landing-hero-cta-secondary:focus-visible{outline:2px solid var(--ring);outline-offset:.25rem;border-radius:.25rem}.landing-hero-demo{overflow:hidden;animation:fade-slide-up .6s ease-out;animation-delay:.4s;animation-fill-mode:both;border-radius:1rem;width:100%;max-width:56rem;box-shadow:0 .5rem 2rem -.5rem #00000026,0 0 0 1px #0000000d}.dark .landing-hero-demo{box-shadow:0 .5rem 2rem -.5rem #0006,0 0 0 1px #ffffff0f}.landing-section-title{letter-spacing:-.02em;text-align:center;color:var(--foreground);text-wrap:balance;margin:0 0 .75rem;font-size:2rem;font-weight:700}.landing-section-subtitle{color:var(--muted-foreground);text-align:center;max-width:30rem;margin:0 auto 2.5rem;font-size:1rem;line-height:1.6}.landing-features-section{padding:var(--landing-section-padding)0;background-color:var(--background)}.landing-features-container{max-width:var(--landing-max-width);margin:0 auto;padding:0 1.5rem}.landing-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.landing-feature-card{background-color:var(--card);border:1px solid var(--border);animation:fade-slide-up .6s ease-out;animation-fill-mode:both;border-radius:.75rem;padding:1.5rem;transition:transform .2s ease-out,box-shadow .2s ease-out}.landing-feature-card:hover{box-shadow:var(--shadow-elevation-medium);transform:translateY(-.125rem)}.landing-feature-card-header{display:flex;align-items: center;gap:.625rem;margin-bottom:.625rem}.landing-feature-icon{background-color:color-mix(in oklch,var(--action-button)10%,transparent);color:var(--landing-accent);display:flex;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items: center;width:2.5rem;height:2.5rem}.landing-feature-icon svg{width:1.25rem;height:1.25rem}.landing-feature-title{color:var(--foreground);margin:0;font-size:1rem;font-weight:600}.landing-feature-description{color:var(--muted-foreground);margin:0;font-size:.875rem;line-height:1.5}.landing-how-it-works-section{padding:var(--landing-section-padding)0;background-color:var(--card)}.landing-how-it-works-container{max-width:var(--landing-max-width);margin:0 auto;padding:0 1.5rem}.landing-how-it-works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.landing-how-it-works-column{display:flex;animation:fade-slide-up .6s ease-out;animation-fill-mode:both;flex-direction:column;align-items: center;gap:2.5rem}.landing-how-it-works-number{background-color:var(--landing-accent);color:#fff;display:flex;border-radius:50%;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;font-size:1rem;font-weight:700}.landing-how-it-works-step{background-color:var(--background);border:1px solid var(--border);text-align:center;border-radius:.75rem;padding:1.5rem;transition:transform .2s ease-out,box-shadow .2s ease-out}.landing-how-it-works-step:hover{box-shadow:var(--shadow-elevation-medium);transform:translateY(-.125rem)}.landing-how-it-works-icon{background-color:color-mix(in oklch,var(--action-button)10%,transparent);color:var(--landing-accent);display:flex;border-radius:.5rem;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;margin:0 auto 1rem}.landing-how-it-works-icon svg{width:1.25rem;height:1.25rem}.landing-how-it-works-step-title{color:var(--foreground);margin:0 0 .375rem;font-size:1rem;font-weight:600}.landing-how-it-works-step-description{color:var(--muted-foreground);margin:0;font-size:.875rem;line-height:1.5}.landing-final-cta-section{padding:var(--landing-section-padding)0;background:linear-gradient(180deg,var(--background)0%,var(--card)100%);text-align:center}.landing-final-cta-container{max-width:var(--landing-max-width);margin:0 auto;padding:0 1.5rem}.landing-final-cta-title{letter-spacing:-.02em;color:var(--foreground);text-wrap:balance;margin:0 0 .75rem;font-size:2rem;font-weight:700}.landing-final-cta-subtitle{color:var(--muted-foreground);margin:0 0 1.5rem;font-size:1rem}.landing-final-cta-button{padding:.875rem 1.75rem;font-size:1rem}.landing-final-cta-note{color:var(--muted-foreground);margin:.75rem 0 0;font-size:.8125rem}.landing-footer{border-top:1px solid var(--border);padding:1.5rem}.landing-footer-copyright{color:var(--muted-foreground);text-align:center;margin:0;font-size:.75rem}.landing-login-modal{max-width:25rem;padding:2rem}.landing-login-header{text-align:center;margin-bottom:1.5rem}.landing-login-logo{width:3.5rem;height:3.5rem;margin:0 auto 1rem}.landing-login-title{color:var(--foreground);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.landing-login-subtitle{color:var(--muted-foreground);margin:0;font-size:.9375rem}.landing-login-form{display:flex;flex-direction:column;gap:1rem}.landing-login-error{background-color:color-mix(in oklch,var(--destructive)10%,transparent);color:var(--destructive);text-align:center;border-radius:.5rem;padding:.75rem;font-size:.875rem}.landing-login-field{display:flex;flex-direction:column;gap:.375rem}.landing-login-field label{color:var(--foreground);font-size:.875rem;font-weight:500}.landing-login-field input{border:1px solid var(--border);background-color:var(--input-background);color:var(--foreground);border-radius:.5rem;padding:.75rem 1rem;transition:all .2s;font-size:1rem}.landing-login-field input:focus{outline:none;border-color:var(--landing-accent);box-shadow:0 0 0 3px color-mix(in oklch,var(--action-button)20%,transparent)}.landing-login-field input::placeholder{color:var(--muted-foreground)}.landing-login-submit{width:100%;margin-top:.5rem;padding:.875rem;font-size:1rem}.landing-login-switch{text-align:center;color:var(--muted-foreground);margin:.5rem 0 0;font-size:.875rem}.landing-login-switch button{color:var(--landing-accent);cursor:pointer;font-weight:500;font-size:inherit;background:0 0;border:none;padding:0}.landing-login-switch button:hover{text-decoration:underline}@media (max-width:1024px){.landing-features-grid,.landing-how-it-works-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:767.999px){.landing-nav-links{display:none}.landing-hero-headline{font-size:2.25rem}.landing-section-title{font-size:1.5rem}.landing-features-grid,.landing-how-it-works-grid{grid-template-columns:1fr}.landing-hero-ctas{flex-direction:column;gap:.75rem}}@media (max-width:479.999px){.landing-hero-headline{font-size:1.75rem}.landing-final-cta-title{font-size:1.5rem}.landing-nav-cta{display:none}}@media (prefers-reduced-motion:reduce){.landing-hero-eyebrow,.landing-hero-headline,.landing-hero-subhead,.landing-hero-ctas,.landing-hero-demo,.landing-feature-card,.landing-how-it-works-column{animation:none}.landing-feature-card:hover,.landing-how-it-works-step:hover{transform:none}}.login-page{display:flex;background-color:var(--background);justify-content:center;align-items: center;min-height:100vh}.not-found-page{display:flex;background-color:var(--background);flex-direction:column;justify-content:center;align-items: center;min-height:100vh}.not-found-page-title{margin-bottom:1rem;font-size:3.75rem;font-weight:700;line-height:1}.not-found-page-message{color:var(--muted-foreground);margin-bottom:2rem;font-size:1.5rem;line-height:2rem}.not-found-page-button{background-color:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border-radius:.5rem;padding:.5rem 1.5rem;transition:all .2s}.not-found-page-button:hover{background-color:color-mix(in oklch,var(--action-button)90%,transparent)}.not-found-page-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items: center;gap:24px}.loading-container[data-fullscreen=true]{background-color:var(--background);height:100vh}.loading-animation{display:flex;align-items: center;gap:16px}.loading-dot{background:linear-gradient(135deg,var(--action-button),color-mix(in oklch,var(--action-button)70%,var(--primary)));box-shadow:0 4px 12px color-mix(in oklch,var(--action-button)30%,transparent);animation:loading-pulse 1.4s ease-in-out infinite;border-radius:50%;width:16px;height:16px}.loading-dot[data-delay="1"]{animation-delay:.2s}.loading-dot[data-delay="2"]{animation-delay:.4s}.loading-container[data-size=sm] .loading-dot{width:12px;height:12px}.loading-container[data-size=sm] .loading-animation{gap:12px}.loading-container[data-size=lg] .loading-dot{width:20px;height:20px}.loading-container[data-size=lg] .loading-animation{gap:20px}.loading-text{color:var(--foreground);letter-spacing:.02em;margin:0;font-size:1rem;font-weight:500}.loading-container[data-size=sm] .loading-text{font-size:.875rem}.loading-container[data-size=lg] .loading-text{font-size:1.125rem}@keyframes loading-pulse{0%,to{transform:scale(1)translateY(0);opacity:.7}50%{transform:scale(1.3)translateY(-8px);opacity:1}}@media (prefers-reduced-motion:reduce){.loading-dot{animation:loading-fade 1.4s ease-in-out infinite}@keyframes loading-fade{0%,to{opacity:.4}50%{opacity:1}}}.separator{background:var(--border);flex-shrink:0}.separator[data-orientation=horizontal]{width:100%;height:1px}.separator[data-orientation=vertical]{width:1px;height:100%}.select-trigger{display:flex;white-space:nowrap;border:1px solid var(--border);background:var(--input-background);outline:none;cursor:pointer;border-radius:8px;justify-content:space-between;align-items: center;gap:8px;width:100%;padding:8px 12px;transition:color .2s,box-shadow .2s;font-size:.875rem}.select-trigger:disabled{cursor:not-allowed;opacity:.5}.select-trigger:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.select-trigger[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)20%,transparent)}.dark .select-trigger[aria-invalid=true]{box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)40%,transparent)}.select-trigger[data-placeholder],.select-trigger svg:not([class*=text-]){color:var(--muted-foreground)}.select-trigger [data-slot=select-value]{display:flex;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;align-items: center;gap:8px}.select-trigger svg{pointer-events:none;flex-shrink:0}.select-trigger svg:not([class*=size-]){width:1rem;height:1rem}.select-trigger[data-size=default]{height:2.25rem}.select-trigger[data-size=sm]{height:2rem}.select-content{position:relative;z-index:50;max-height:var(--radix-select-content-available-height);overflow-x:hidden;overflow-y:auto;scroll-padding-block:8px;overscroll-behavior:contain;border:1px solid var(--border);background:var(--popover);color:var(--popover-foreground);transform-origin:var(--radix-select-content-transform-origin);border-radius:8px;min-width:8rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.select-content[data-state=open]{animation:zoom-in .2s ease-out,fade-in .2s ease-out}.select-content[data-state=closed]{animation:zoom-out .2s ease-out,fade-out .2s ease-out}.select-content[data-side=bottom]{animation:slide-in-from-top .2s ease-out,zoom-in .2s ease-out,fade-in .2s ease-out}.select-content[data-side=left]{animation:slide-in-from-right .2s ease-out,zoom-in .2s ease-out,fade-in .2s ease-out}.select-content[data-side=right]{animation:slide-in-from-left .2s ease-out,zoom-in .2s ease-out,fade-in .2s ease-out}.select-content[data-side=top]{animation:slide-in-from-bottom .2s ease-out,zoom-in .2s ease-out,fade-in .2s ease-out}.select-content[data-position=popper][data-side=bottom]{transform:translateY(.25rem)}.select-content[data-position=popper][data-side=left]{transform:translate(-.25rem)}.select-content[data-position=popper][data-side=right]{transform:translate(.25rem)}.select-content[data-position=popper][data-side=top]{transform:translateY(-.25rem)}.select-item{position:relative;display:flex;outline:none;user-select:none;cursor:pointer;border-radius:4px;align-items: center;gap:8px;width:100%;padding:6px 2rem 6px 8px;font-size:.875rem}.select-item:focus{background:var(--accent);color:var(--accent-foreground)}.select-item[data-disabled]{pointer-events:none;opacity:.5}.select-item svg:not([class*=text-]){color:var(--muted-foreground)}.select-item svg{pointer-events:none;flex-shrink:0}.select-item svg:not([class*=size-]){width:1rem;height:1rem}.select-item>span:last-child{display:flex;align-items: center;gap:8px}.select-item-indicator{position:absolute;display:flex;justify-content:center;align-items: center;width:.875rem;height:.875rem;right:8px}.select-label{color:var(--muted-foreground);padding:6px 8px;font-size:.75rem}.select-separator{background:var(--border);pointer-events:none;height:1px;margin:4px -4px}.settings-section-title{margin-bottom:.375rem;font-size:1.125rem;font-weight:500}.settings-section-content{display:flex;flex-direction:column;gap:1rem}.settings-row{display:flex;justify-content:space-between;align-items: center;gap:1rem}.settings-label-group{flex:1;min-width:0}.settings-label{display:block;font-weight:500}.settings-description{color:var(--muted-foreground);margin-top:.25rem;font-size:.875rem}.settings-control{flex-shrink:0}.settings-select-trigger{width:180px}.switch{position:relative;display:inline-flex;border:1px solid var(--border);outline:none;cursor:pointer;border-radius:9999px;flex-shrink:0;align-items: center;width:2rem;height:1.25rem;padding:.125rem;transition:all .2s}.switch:before{content:"";position:absolute;border-radius:9999px;inset:-12px}.switch[data-state=checked]{background:var(--primary);border-color:#0000}.switch[data-state=unchecked]{background:var(--input-background);border-color:var(--border)}.switch-thumb{display:block;background-color:var(--card);pointer-events:none;ring:0;border-radius:9999px;width:.875rem;height:.875rem;transition:transform .2s}.switch-thumb[data-state=checked]{transform:translate(.875rem)}.switch-thumb[data-state=unchecked]{background:var(--muted-foreground);transform:translate(0)}.switch:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.switch:disabled{cursor:not-allowed;opacity:.5}.playbook-labels-panel{display:flex;flex-direction:column;gap:8px}.playbook-labels-list{display:flex;flex-direction:column;gap:4px}.playbook-label-row{display:flex;border-radius:6px;align-items: center;gap:8px;padding:8px;transition:background .2s ease-out}.playbook-label-row:hover{background:var(--accent)}.playbook-label-drag{color:var(--muted-foreground);cursor:grab;font-size:1rem;line-height:1}.playbook-label-color-picker{position:relative}.playbook-label-swatch{display:block;cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px;transition:border-color .2s ease-out}.playbook-label-swatch:hover{border-color:var(--foreground)}.playbook-label-swatch:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.playbook-label-color-dropdown{display:none;position:absolute;z-index:50;background:var(--popover);border:1px solid var(--border);box-shadow:var(--shadow-elevation-medium);border-radius:8px;flex-wrap:wrap;gap:4px;margin-top:4px;padding:8px;top:100%;left:0}.playbook-label-color-picker[data-open=true] .playbook-label-color-dropdown{display:flex}.playbook-label-name{color:var(--foreground);background:0 0;border:1px solid #0000;border-radius:4px;flex:1;padding:4px 8px;font-size:.875rem}.playbook-label-name:focus-visible{outline:none;border-color:var(--ring);background:var(--input-background)}.playbook-label-usage{display:flex;color:var(--muted-foreground);white-space:nowrap;gap:8px;font-size:.75rem}.playbook-label-unused{color:var(--muted-foreground);font-style:italic}.playbook-label-delete{color:var(--muted-foreground);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;padding:2px 8px;transition:opacity .2s ease-out;font-size:1rem}.playbook-label-row:hover .playbook-label-delete{opacity:1}.playbook-label-delete:focus-visible{opacity:1;box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.playbook-label-delete:hover{background:var(--destructive);color:var(--destructive-foreground)}.playbook-label-confirm{display:flex;color:var(--foreground);align-items: center;gap:8px;font-size:.75rem}.playbook-label-confirm-delete{background:var(--destructive);color:var(--destructive-foreground);cursor:pointer;border:none;border-radius:4px;padding:2px 8px;font-size:.75rem}.playbook-label-confirm-delete:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.playbook-label-confirm-cancel{color:var(--muted-foreground);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:2px 8px;font-size:.75rem}.playbook-label-confirm-cancel:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.playbook-labels-empty{text-align:center;color:var(--muted-foreground);padding:24px;font-size:.875rem}@media (prefers-reduced-motion:reduce){.playbook-label-row,.playbook-label-swatch,.playbook-label-delete{transition:none}}.unified-settings-backdrop{position:fixed;z-index:50;display:flex;justify-content:center;align-items: center;inset:0}.unified-settings-backdrop:before{content:"";position:absolute;background:#00000080;inset:0}.unified-settings-dialog{position:relative;background:var(--popover);border:1px solid var(--border);overflow-y:auto;border-radius:16px;width:100%;max-width:42rem;max-height:90vh;margin:0 1rem;padding:1.5rem;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.unified-settings-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:.25rem}.unified-settings-title{font-size:1.5rem;font-weight:600}.unified-settings-content{display:flex;flex-direction:column;gap:1.5rem}.unified-settings-footer{border-top:1px solid var(--border);display:flex;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem}.unified-settings-close-icon{width:1.25rem;height:1.25rem}.alert-dialog-overlay{position:fixed;z-index:50;background:#00000080;inset:0}.alert-dialog-overlay[data-state=open]{animation:fade-in .2s ease-out}.alert-dialog-overlay[data-state=closed]{animation:fade-out .2s ease-out}.alert-dialog-content{position:fixed;z-index:50;display:grid;border:1px solid var(--border);background-color:var(--background);border-radius:1rem;gap:1rem;width:100%;max-width:calc(100% - 2rem);padding:1.5rem;transition:all .2s;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 .625rem 1rem -.1875rem #0000001a,0 .25rem .375rem -.25rem #0000001a}.alert-dialog-content[data-state=open]{animation:fade-in .2s ease-out,zoom-in .2s ease-out}.alert-dialog-content[data-state=closed]{animation:fade-out .2s ease-out,zoom-out .2s ease-out}@media (min-width:640px){.alert-dialog-content{max-width:32rem}}.alert-dialog-header{display:flex;text-align:center;flex-direction:column;gap:.5rem}@media (min-width:640px){.alert-dialog-header{text-align:left}}.alert-dialog-footer{display:flex;flex-direction:column-reverse;gap:.5rem}@media (min-width:640px){.alert-dialog-footer{flex-direction:row;justify-content:flex-end}}.alert-dialog-title{font-size:1.125rem;font-weight:600;line-height:1}.alert-dialog-description{color:var(--muted-foreground);font-size:.875rem}.manage-teams-overlay{position:fixed;z-index:50;display:flex;justify-content:center;align-items: center;inset:0}.manage-teams-backdrop{position:absolute;background:#00000080;inset:0}.manage-teams-dialog{position:relative;background:var(--popover);border:1px solid var(--border);box-shadow:var(--shadow-dialog);display:flex;border-radius:16px;flex-direction:column;width:100%;max-width:672px;max-height:80vh;margin:0 16px}.manage-teams-header{display:flex;border-bottom:1px solid var(--border);justify-content:space-between;align-items: center;padding:24px}.manage-teams-header-content{display:flex;align-items: center;gap:12px}.manage-teams-title{font-size:1.25rem;font-weight:600}.manage-teams-content{overflow-y:auto;flex:1;padding:24px}.manage-teams-list{display:flex;flex-direction:column;gap:12px}.manage-teams-empty,.manage-teams-loading{text-align:center;color:var(--muted-foreground);padding:32px 0}.manage-teams-item{display:flex;border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items: center;padding:16px}.manage-teams-item-info{display:flex;flex:1;align-items: center;gap:12px}.manage-teams-item-details{flex:1}.manage-teams-item-name{font-weight:500}.manage-teams-item-role{color:var(--muted-foreground);display:flex;align-items: center;gap:8px;margin-top:4px;font-size:.875rem}.manage-teams-item-role span{text-transform:capitalize}.manage-teams-item-actions{display:flex;align-items: center;gap:8px}.manage-teams-form{display:flex;flex-direction:column;gap:16px}.manage-teams-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:16px}.manage-teams-form-actions-split{display:flex;justify-content:space-between;align-items: center;padding-top:16px}.manage-teams-form-actions-split>div{display:flex;gap:8px}.manage-teams-members{display:flex;flex-direction:column;gap:24px}.manage-teams-section-title{margin-bottom:12px;font-size:.875rem;font-weight:500}.manage-teams-section-title-spacing{margin-top:24px}.manage-teams-member-list{display:flex;flex-direction:column;gap:8px}.manage-teams-member{display:flex;border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items: center;padding:12px}.manage-teams-member-info{display:flex;align-items: center;gap:12px}.manage-teams-member-name{font-weight:500}.manage-teams-member-email{color:var(--muted-foreground);font-size:.875rem}.manage-teams-member-actions{display:flex;align-items: center;gap:8px}.manage-teams-invitation{display:flex;border:1px solid var(--border);background:color-mix(in oklch,var(--muted)30%,transparent);border-radius:8px;justify-content:space-between;align-items: center;padding:12px}.manage-teams-invitation-info{display:flex;align-items: center;gap:12px}.manage-teams-invitation-email{font-weight:500}.manage-teams-invitation-role{color:var(--muted-foreground);text-transform:capitalize;font-size:.875rem}.manage-teams-invite-form{display:flex;gap:8px}.manage-teams-error{background:color-mix(in oklch,var(--destructive)10%,transparent);border:1px solid color-mix(in oklch,var(--destructive)20%,transparent);color:var(--destructive);border-radius:8px;margin-bottom:16px;padding:12px;font-size:.875rem}.manage-teams-form-label{display:block;margin-bottom:8px;font-size:.875rem;font-weight:500}.manage-teams-select-width{width:120px}.manage-teams-invite-email{flex:1}.icon-sm{width:1rem;height:1rem}.icon-md{width:1.25rem;height:1.25rem}.icon-yellow{color:var(--color-yellow)}.icon-blue{color:var(--color-blue)}.icon-gray,.icon-muted{color:var(--muted-foreground)}.icon-destructive{color:var(--destructive)}.mr-2{margin-right:.5rem}.w-full{width:100%}.document-dialog-content{display:flex;flex-direction:column;max-width:600px;max-height:85vh}.document-dialog-body{overflow-y:auto;flex:1;padding:0 1.5rem}.document-dialog-steps{display:flex;border-bottom:1px solid var(--border);justify-content:center;gap:2rem;margin-bottom:0;padding:1rem 1.5rem}.document-dialog-step{display:flex;color:var(--muted-foreground);align-items: center;gap:.5rem;transition:color .2s;font-size:.875rem}.document-dialog-step[data-active=true]{color:var(--foreground)}.document-dialog-step[data-complete=true]{color:var(--primary)}.document-dialog-step-number{background:var(--muted);display:flex;border-radius:50%;justify-content:center;align-items: center;width:1.5rem;height:1.5rem;transition:background-color .2s,color .2s,transform .15s cubic-bezier(.34,1.56,.64,1);font-size:.75rem;font-weight:500}.document-dialog-step[data-active=true] .document-dialog-step-number{background:var(--primary);color:var(--primary-foreground)}.document-dialog-step[data-complete=true] .document-dialog-step-number{background:var(--primary);color:var(--primary-foreground);animation:step-complete .3s cubic-bezier(.34,1.56,.64,1)}.document-dialog-step-label{display:none}@media (min-width:500px){.document-dialog-step-label{display:inline}}.document-step-wrapper{display:grid;grid-template-rows:0fr;min-height:0;transition:grid-template-rows .3s ease-out}.document-step-wrapper[data-active=true]{grid-template-rows:1fr}.document-step-content{display:flex;overflow:hidden;opacity:0;flex-direction:column;gap:1rem;min-height:0;margin:0 -.5rem;padding:0;transition:opacity .2s ease-out,transform .2s ease-out,padding .3s ease-out;transform:translateY(8px)}.document-step-wrapper[data-active=true] .document-step-content{opacity:1;padding:.5rem .5rem 1rem;transform:translateY(0)}.document-step-description{color:var(--muted-foreground);margin-bottom:.5rem;font-size:.875rem}.document-templates-grid{display:flex;flex-direction:column;gap:.75rem}.document-template-card{display:flex;border:2px solid var(--border);background:var(--card);cursor:pointer;text-align:left;outline:none;box-shadow:var(--shadow-elevation-low);border-radius:8px;align-items: flex-start;gap:1rem;padding:1rem;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,border-color .2s,box-shadow .2s}.document-template-card:hover{border-color:var(--ring);background:var(--accent);box-shadow:var(--shadow-elevation-high);transform:translateY(-4px)scale(1.01)}.document-template-card:active{transition-duration:80ms;transform:scale(.95)}.document-template-card:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.document-template-card[data-selected=true]{border-color:var(--primary);background:color-mix(in oklch,var(--primary)10%,transparent)}.document-template-icon{display:flex;background:var(--muted);color:var(--muted-foreground);border-radius:8px;flex-shrink:0;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;transition:background-color .2s,color .2s,transform .15s cubic-bezier(.34,1.56,.64,1)}.document-template-card[data-selected=true] .document-template-icon{background:var(--primary);color:var(--primary-foreground);animation:icon-pop .3s cubic-bezier(.34,1.56,.64,1)}.document-template-info{flex:1;min-width:0}.document-template-name{margin:0 0 .25rem;font-size:.9375rem;font-weight:500}.document-template-description{color:var(--muted-foreground);margin:0;font-size:.8125rem;line-height:1.4}.document-template-preview{display:flex;flex-shrink:0;align-items: center;gap:.25rem}.document-template-section-dot{border-radius:2px;width:.75rem;height:.75rem}.document-template-more{color:var(--muted-foreground);margin-left:.25rem;font-size:.75rem}.document-sections-editor{display:flex;flex-direction:column;gap:.75rem}.document-sections-list{display:flex;flex-direction:column;gap:.5rem}.document-section-row{display:flex;background:var(--card);border:1px solid var(--border);position:relative;user-select:none;border-radius:6px;align-items: center;gap:.5rem;padding:.5rem}.document-section-drag{display:flex;cursor:grab;border-radius:4px;justify-content:center;align-items: center;padding:.5rem;transition:background-color .2s}.document-section-drag:hover{background:var(--muted)}.document-section-drag:active,.document-section-drag[data-dragging=true]{cursor:grabbing;background:var(--accent)}.document-section-grip{color:var(--muted-foreground);pointer-events:none}.document-section-color-trigger{flex-shrink:0;width:2.5rem;padding:.25rem}.document-section-color-swatch{border:1px solid var(--border);border-radius:4px;width:1.5rem;height:1.5rem}.document-color-option{display:flex;align-items: center;gap:.5rem}.document-color-swatch{border-radius:3px;flex-shrink:0;width:1rem;height:1rem}.document-section-name-input{flex:1;min-width:0}.document-section-filter{flex-shrink:0;width:120px}.document-section-delete{color:var(--muted-foreground);cursor:pointer;outline:none;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:.375rem;transition:color .2s,background-color .2s,transform .15s cubic-bezier(.34,1.56,.64,1)}.document-section-delete:hover{color:var(--destructive);background:color-mix(in oklch,var(--destructive)15%,transparent)}.document-section-delete:active{transition-duration:80ms;transform:scale(.95)}.document-section-delete:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.document-add-section{align-self: flex-start;gap:.5rem}.document-dialog-actions{display:flex;border-top:1px solid var(--border);justify-content:space-between;margin-top:auto;padding:1rem 1.5rem}.document-dialog-actions button{display:flex;align-items: center;gap:.25rem}@keyframes step-complete{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes icon-pop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.document-template-card,.document-section-row,.document-dialog-step-number,.document-step-wrapper,.document-step-content,.document-template-icon,.document-section-move,.document-section-delete{animation:none;transition:none}.document-step-content{opacity:1;transform:none}.document-template-card:hover{transform:none}}.checkbox{position:relative;border:1px solid var(--border);background:var(--input-background);outline:none;display:flex;border-radius:4px;flex-shrink:0;justify-content:center;align-items: center;width:1rem;height:1rem;transition:box-shadow .2s;box-shadow:0 1px 2px #0000000d}.checkbox:before{content:"";position:absolute;inset:-8px}.checkbox[data-state=checked]{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.checkbox:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.checkbox:disabled{cursor:not-allowed;opacity:.5}.checkbox[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)20%,transparent)}.add-to-folder-dialog{max-width:480px}.add-to-folder-dialog__content{display:flex;flex-direction:column;gap:16px;max-height:400px}.add-to-folder-dialog__list{display:flex;overflow-y:auto;flex-direction:column;gap:8px;max-height:320px;padding:4px}.add-to-folder-dialog__item{display:flex;cursor:pointer;animation:add-to-folder-item-enter .2s cubic-bezier(.34,1.56,.64,1)both;animation-delay:calc(var(--item-index,0)*50ms);border-radius:8px;align-items: center;gap:12px;padding:12px;transition:background-color .15s cubic-bezier(.34,1.56,.64,1)}.add-to-folder-dialog__item:hover{background-color:var(--accent)}.add-to-folder-dialog__folder-name{color:var(--foreground);flex:1;font-size:.875rem;font-weight:500}.add-to-folder-dialog__empty{text-align:center;color:var(--muted-foreground);padding:24px;font-size:.875rem}.add-to-folder-dialog__create{display:flex;border-top:1px solid var(--border);align-items: center;gap:8px;padding-top:8px}@keyframes add-to-folder-item-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.add-to-folder-dialog__item{animation:none;transition:none}.add-to-folder-dialog__item:hover{background-color:var(--accent)}}.radio-group{display:grid;gap:.75rem}.radio-group-item{aspect-ratio:1;border:2px solid var(--border);background-color:var(--background);color:var(--primary);cursor:pointer;outline:none;border-radius:9999px;flex-shrink:0;width:1rem;height:1rem;transition:all .2s;box-shadow:0 1px 2px #0000000d}.radio-group-item[data-state=checked]{border-color:var(--action-button);background-color:var(--action-button)}.radio-group-item:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.radio-group-item:disabled{opacity:.5;cursor:not-allowed}.radio-group-item[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)20%,transparent)}.dark .radio-group-item[aria-invalid=true]{box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive)40%,transparent)}.radio-group-indicator{position:relative;display:flex;justify-content:center;align-items: center}.radio-group-indicator svg{fill:var(--action-button-foreground);position:absolute;width:.5rem;height:.5rem;top:50%;left:50%;transform:translate(-50%,-50%)}.button-tabs{display:flex;gap:var(--spacing-8,8px);overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}.button-tabs::-webkit-scrollbar{display:none}.button-tabs-item{padding:var(--spacing-8,8px)var(--spacing-16,16px);text-transform:capitalize;border-radius:var(--radius-md,8px);white-space:nowrap;cursor:pointer;border:1px solid var(--border);outline:none;display:flex;justify-content:center;align-items: center;gap:var(--spacing-8,8px);backface-visibility:hidden;-webkit-font-smoothing:subpixel-antialiased;flex-shrink:0;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform 80ms ease-out;font-size:.875rem;font-weight:500;transform:translateZ(0)}.button-tabs-item-stretch{flex:1}.button-tabs-item-compact{padding:var(--spacing-8,8px);min-width:2rem;min-height:2rem}.button-tabs-item-active{background-color:var(--accent);color:var(--foreground);animation:tab-activate .15s ease-out}.button-tabs-item-inactive{color:var(--foreground);background-color:#0000}.button-tabs-item-inactive:hover:not(:disabled){background-color:color-mix(in oklch,var(--accent)50%,transparent)}.button-tabs-item:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.button-tabs-item:active:not(:disabled){transition-duration:80ms;transform:translateZ(0)scale(.95)}.button-tabs-item:disabled{opacity:.5;cursor:not-allowed}.button-tabs-icon{width:1rem;height:1rem}@keyframes tab-activate{0%{transform:translateZ(0)scale(.97)}to{transform:translateZ(0)scale(1)}}@media (prefers-reduced-motion:reduce){.button-tabs-item,.button-tabs-item-active{animation:none;transition:none}}.playbook-share-dialog{max-width:560px}.playbook-share-content{display:flex;flex-direction:column;gap:1.5rem}.playbook-share-tab-content{min-height:180px}.playbook-share-link-section{display:flex;flex-direction:column;gap:1rem}.playbook-share-link-card{display:flex;border:1px solid var(--border);background-color:var(--input-background);border-radius:8px;align-items: center;gap:.75rem;padding:1rem}.playbook-share-link-info{display:flex;flex:1;align-items: center;gap:.75rem}.playbook-share-link-icon{border-radius:8px;padding:.75rem}.playbook-share-link-text{flex:1}.playbook-share-link-title{font-weight:500}.playbook-share-team-form{display:flex;flex-direction:column;gap:1rem}.playbook-share-team-select{flex:1}.playbook-share-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500}.playbook-share-permissions{display:flex;flex-direction:column;gap:8px}.playbook-share-permission-option{display:flex;border:1px solid var(--border);background-color:var(--input-background);cursor:pointer;border-radius:8px;align-items: center;gap:8px;padding:12px;transition:background-color .2s}.playbook-share-permission-option:hover{background-color:var(--accent)}.playbook-share-permission-text{font-size:.875rem}.playbook-share-list{display:flex;overflow-y:auto;flex-direction:column;gap:.5rem;max-height:150px}.playbook-share-list-header{margin-bottom:.5rem;font-size:.875rem;font-weight:500}.playbook-share-list-empty{color:var(--muted-foreground);font-size:.875rem}.playbook-share-item{display:flex;border:1px solid var(--border);background-color:var(--input-background);border-radius:8px;justify-content:space-between;align-items: center;padding:.75rem}.playbook-share-item-info{flex:1}.playbook-share-recipient-info{display:flex;align-items: center;gap:.75rem}.playbook-share-item-name{font-weight:500}.playbook-share-item-detail{color:var(--muted-foreground);font-size:.875rem}.playbook-share-delete-button{color:var(--destructive)}.playbook-share-email-form{display:flex;flex-direction:column;gap:1rem}.playbook-share-email-row{display:flex;align-items: center;gap:.5rem}.playbook-share-email-input-wrapper{position:relative;flex:1}.playbook-share-email-input-icon{position:absolute;color:var(--muted-foreground);width:1rem;height:1rem;top:50%;left:.75rem;transform:translateY(-50%)}.playbook-share-email-input{background-color:var(--input-background);border:1px solid var(--border);outline:none;border-radius:8px;width:100%;padding:.625rem 1rem .625rem 2.5rem;transition:all .2s}.playbook-share-email-input:focus{box-shadow:0 0 0 2px color-mix(in oklch,var(--ring)20%,transparent)}.playbook-share-recipient-avatar{background-color:var(--accent);display:flex;color:var(--accent-foreground);border-radius:9999px;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;font-weight:500}.playbook-share-full-width{width:100%;margin-top:.5rem}.help-dialog__section-title{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;font-size:.875rem;font-weight:600}.help-dialog__tour-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.help-dialog__tour-item{display:flex;background-color:var(--muted);border-radius:8px;justify-content:space-between;align-items: center;padding:12px}.help-dialog__tour-name{margin-bottom:4px;font-weight:500}.help-dialog__tour-status{color:var(--muted-foreground);font-size:.75rem}.help-dialog__tour-status[data-completed=true]{color:var(--action-button)}.help-dialog__reset{width:100%}.onboarding-wizard__steps{display:inline-flex;align-items: center;gap:.5rem;margin-bottom:.25rem}.onboarding-wizard__step-dot{display:inline-block;background:var(--muted);border-radius:50%;width:.5rem;height:.5rem;transition:background .2s}.onboarding-wizard__step-dot--active{background:var(--primary)}.onboarding-wizard__step-dot--completed{background:var(--primary);opacity:.5}.onboarding-wizard__step-label{color:var(--muted-foreground);margin-left:.25rem;font-size:.75rem}.onboarding-wizard__systems{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:.5rem 0}.onboarding-wizard__system-card{display:flex;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);cursor:pointer;text-align:left;flex-direction:column;gap:.375rem;padding:1rem;transition:border-color .15s,background .15s}.onboarding-wizard__system-card:hover{border-color:var(--primary);background:color-mix(in oklch,var(--accent)50%,transparent)}.onboarding-wizard__system-card--selected{border-color:var(--primary);background:color-mix(in oklch,var(--primary)8%,transparent);box-shadow:0 0 0 1px var(--primary)}.onboarding-wizard__system-name{color:var(--foreground);font-size:.9375rem;font-weight:600}.onboarding-wizard__system-description{color:var(--muted-foreground);font-size:.8125rem;line-height:1.4}.onboarding-wizard__vocabulary{display:flex;overflow-y:auto;flex-direction:column;gap:.5rem;max-height:20rem;padding:.25rem 0}.onboarding-wizard__selection-summary{color:var(--muted-foreground);padding-bottom:.25rem;font-size:.8125rem}.onboarding-wizard__category-group{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.onboarding-wizard__category-header{display:flex;background:color-mix(in oklch,var(--muted)40%,transparent);cursor:pointer;user-select:none;align-items: center;gap:.5rem;padding:.625rem .75rem}.onboarding-wizard__category-header:hover{background:color-mix(in oklch,var(--muted)60%,transparent)}.onboarding-wizard__category-name{color:var(--foreground);flex:1;font-size:.8125rem;font-weight:600}.onboarding-wizard__count-badge{color:var(--muted-foreground);background:color-mix(in oklch,var(--muted)80%,transparent);border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:500}.onboarding-wizard__expand-icon{color:var(--muted-foreground);flex-shrink:0;width:1rem;height:1rem;transition:transform .15s}.onboarding-wizard__expand-icon--open{transform:rotate(180deg)}.onboarding-wizard__entry-list{border-top:1px solid var(--border)}.onboarding-wizard__entry{display:flex;border-bottom:1px solid color-mix(in oklch,var(--border)50%,transparent);align-items: center;gap:.5rem;padding:.5rem .75rem .5rem 1.75rem}.onboarding-wizard__entry:last-child{border-bottom:none}.onboarding-wizard__entry-code{color:var(--foreground);min-width:4rem;font-size:.8125rem;font-weight:600}.onboarding-wizard__entry-name{color:var(--muted-foreground);font-size:.8125rem}.onboarding-wizard__result{display:flex;text-align:center;flex-direction:column;align-items: center;gap:1rem;padding:1.5rem 0}.onboarding-wizard__result-icon{color:var(--primary);width:3rem;height:3rem}.onboarding-wizard__result-title{color:var(--foreground);font-size:1.125rem;font-weight:600}.onboarding-wizard__result-count{color:var(--muted-foreground);font-size:.875rem}.onboarding-wizard__result-errors{color:var(--destructive);text-align:left;border:1px solid color-mix(in oklch,var(--destructive)30%,transparent);border-radius:var(--radius);background:color-mix(in oklch,var(--destructive)5%,transparent);width:100%;padding:.75rem;font-size:.8125rem}.onboarding-wizard__result-error-item{margin:.25rem 0}.onboarding-wizard__result-actions{display:flex;gap:.5rem;padding-top:.5rem}.spotlight-overlay{position:fixed;z-index:9998;inset:0}.spotlight-overlay__cutout{position:fixed;z-index:9999;border-radius:8px;transition:all .3s ease-out;box-shadow:0 0 0 9999px #000000b3}.spotlight-overlay__cutout:after{content:"";position:absolute;border:2px solid var(--action-button);animation:spotlight-pulse 2s ease-in-out infinite;border-radius:10px;inset:-4px}@keyframes spotlight-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.spotlight-overlay__cutout:after{animation:none}}.tour-tooltip{background-color:var(--popover);color:var(--popover-foreground);box-shadow:var(--shadow-elevation-high);z-index:10000;border-radius:12px;width:320px;padding:16px}.tour-tooltip__header{margin-bottom:8px}.tour-tooltip__title{color:var(--foreground);font-size:1rem;font-weight:600}.tour-tooltip__content{color:var(--muted-foreground);margin-bottom:16px;font-size:.875rem;line-height:1.5}.tour-tooltip__footer{display:flex;justify-content:space-between;align-items: center}.tour-tooltip__step-indicator{color:var(--muted-foreground);font-size:.75rem}.tour-tooltip__actions{display:flex;gap:8px}.tour-tooltip[data-entering]{animation:tooltip-enter .2s ease-out}@keyframes tooltip-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dropdown-menu-content{position:relative;z-index:50;max-height:var(--radix-dropdown-menu-content-available-height);overflow-x:hidden;overflow-y:auto;scroll-padding-block:8px;overscroll-behavior:contain;border:1px solid var(--border);background:var(--popover);color:var(--popover-foreground);transform-origin:var(--radix-dropdown-menu-content-transform-origin);border-radius:8px;min-width:8rem;padding:4px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.dropdown-menu-content[data-state=open]{animation:fade-in .15s ease-out,zoom-in .15s ease-out}.dropdown-menu-content[data-state=closed]{animation:fade-out .15s ease-out,zoom-out .15s ease-out}.dropdown-menu-content[data-state=open][data-side=bottom]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-top .15s ease-out}.dropdown-menu-content[data-state=open][data-side=top]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-bottom .15s ease-out}.dropdown-menu-content[data-state=open][data-side=left]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-right .15s ease-out}.dropdown-menu-content[data-state=open][data-side=right]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-left .15s ease-out}.dropdown-menu-sub-content{position:relative;z-index:50;overflow:hidden;border:1px solid var(--border);background:var(--popover);color:var(--popover-foreground);transform-origin:var(--radix-dropdown-menu-content-transform-origin);border-radius:8px;min-width:8rem;padding:4px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.dropdown-menu-sub-content[data-state=open]{animation:fade-in .15s ease-out,zoom-in .15s ease-out}.dropdown-menu-sub-content[data-state=closed]{animation:fade-out .15s ease-out,zoom-out .15s ease-out}.dropdown-menu-sub-content[data-state=open][data-side=bottom]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-top .15s ease-out}.dropdown-menu-sub-content[data-state=open][data-side=top]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-bottom .15s ease-out}.dropdown-menu-sub-content[data-state=open][data-side=left]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-right .15s ease-out}.dropdown-menu-sub-content[data-state=open][data-side=right]{animation:fade-in .15s ease-out,zoom-in .15s ease-out,slide-in-from-left .15s ease-out}.dropdown-menu-item,.dropdown-menu-checkbox-item,.dropdown-menu-radio-item{position:relative;display:flex;outline:none;cursor:pointer;user-select:none;border-radius:4px;align-items: center;gap:8px;padding:6px 8px;transition:background-color .1s,color .1s;font-size:.875rem}.dropdown-menu-item:focus,.dropdown-menu-checkbox-item:focus,.dropdown-menu-radio-item:focus{background:var(--accent);color:var(--accent-foreground)}.dropdown-menu-item[data-disabled],.dropdown-menu-checkbox-item[data-disabled],.dropdown-menu-radio-item[data-disabled]{pointer-events:none;opacity:.5}.dropdown-menu-item[data-inset]{padding-left:32px}.dropdown-menu-item svg,.dropdown-menu-checkbox-item svg,.dropdown-menu-radio-item svg{pointer-events:none;flex-shrink:0}.dropdown-menu-item svg:not([class*=size-]),.dropdown-menu-checkbox-item svg:not([class*=size-]),.dropdown-menu-radio-item svg:not([class*=size-]){width:1rem;height:1rem}.dropdown-menu-item svg:not([class*=text-]){color:var(--muted-foreground)}.dropdown-menu-item[data-variant=destructive]{color:var(--destructive)}.dropdown-menu-item[data-variant=destructive]:focus{color:var(--destructive);background:#d4183d1a}.dark .dropdown-menu-item[data-variant=destructive]:focus{background:#d4183d33}.dropdown-menu-item[data-variant=destructive] svg{color:var(--destructive)!important}.dropdown-menu-checkbox-item{padding-left:32px}.dropdown-menu-checkbox-item>span:first-child{position:absolute;display:flex;pointer-events:none;justify-content:center;align-items: center;width:14px;height:14px;left:8px}.dropdown-menu-radio-item{padding-left:32px}.dropdown-menu-radio-item>span:first-child{position:absolute;display:flex;pointer-events:none;justify-content:center;align-items: center;width:14px;height:14px;left:8px}.dropdown-menu-sub-trigger{display:flex;outline:none;cursor:pointer;user-select:none;border-radius:4px;align-items: center;padding:6px 8px;transition:background-color .1s,color .1s;font-size:.875rem}.dropdown-menu-sub-trigger:focus,.dropdown-menu-sub-trigger[data-state=open]{background:var(--accent);color:var(--accent-foreground)}.dropdown-menu-sub-trigger[data-inset]{padding-left:32px}.dropdown-menu-sub-trigger svg:last-child{width:1rem;height:1rem;margin-left:auto}.dropdown-menu-label{padding:6px 8px;font-size:.875rem;font-weight:500}.dropdown-menu-label[data-inset]{padding-left:32px}.dropdown-menu-separator{background:var(--border);height:1px;margin:4px -4px}.dropdown-menu-shortcut{letter-spacing:.1em;color:var(--muted-foreground);margin-left:auto;font-size:.75rem}.content-sidebar{border-right:1px solid var(--sidebar-border);background:var(--sidebar-primary);position:sticky;display:flex;flex-direction:column;height:100vh;top:0}.content-sidebar-header{display:flex;border-bottom:1px solid var(--sidebar-border);align-items: center;gap:12px;height:100%;padding:0 16px}.content-sidebar-logo{flex-shrink:0;width:3rem;height:3rem}.dark .content-sidebar-logo-dark{display:block}.dark .content-sidebar-logo-light,.content-sidebar-logo-dark{display:none}.content-sidebar-logo-light{display:block}.content-sidebar-title{color:var(--sidebar-foreground)}.content-sidebar-nav{overflow-y:auto;flex:1;padding:16px 12px}.content-sidebar-group{margin-bottom:1.5rem}.content-sidebar-group-label{text-transform:uppercase;color:var(--muted-foreground);margin-bottom:.5rem;padding:0 .75rem;font-size:.75rem;font-weight:600}.content-sidebar-group-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:.5rem;padding:0 .75rem}.content-sidebar-group-header .content-sidebar-group-label{margin:0;padding:0}.content-sidebar-add-folder{cursor:pointer;color:var(--muted-foreground);background:0 0;border:none;border-radius:4px;padding:.25rem;transition:all .2s}.content-sidebar-add-folder:hover{background:var(--sidebar-accent);color:var(--sidebar-accent-foreground)}.content-sidebar-section{display:flex;cursor:pointer;color:var(--sidebar-foreground);outline:none;background:0 0;border:none;border-radius:8px;align-items: center;gap:12px;width:100%;padding:10px 12px;transition:all .2s}.content-sidebar-section:hover{background:color-mix(in oklch,var(--sidebar-accent)50%,transparent)}.content-sidebar-section:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.content-sidebar-section-active{background:color-mix(in oklch,var(--primary)10%,transparent);color:var(--primary);border:1px solid color-mix(in oklch,var(--primary)20%,transparent);font-weight:500}.content-sidebar-folders{list-style:none;display:flex;flex-direction:column;gap:4px;margin:4px;padding:0}.content-sidebar-folder-wrapper{position:relative;display:flex;border-radius:8px;align-items: center;transition:background-color .2s}.content-sidebar-folder-wrapper:hover{background:color-mix(in oklch,var(--sidebar-accent)30%,transparent)}.content-sidebar-folder-wrapper.content-sidebar-folder-active{background:color-mix(in oklch,var(--primary)5%,transparent)}.content-sidebar-folder-wrapper:hover .content-sidebar-folder-menu{opacity:1}.content-sidebar-folder{display:flex;cursor:pointer;color:var(--sidebar-foreground);outline:none;text-align:left;background:0 0;border:none;border-radius:8px;flex:1;align-items: center;gap:8px;padding:8px 12px;transition:all .2s;font-size:.875rem}.content-sidebar-folder:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.content-sidebar-folder-wrapper.content-sidebar-folder-active .content-sidebar-folder{color:var(--primary);font-weight:500}.content-sidebar-folder-menu{position:absolute;cursor:pointer;color:var(--muted-foreground);opacity:0;background:0 0;border:none;border-radius:4px;padding:4px;transition:opacity .15s,background-color .15s;right:8px}.content-sidebar-folder-menu:hover{background:var(--accent);color:var(--foreground)}.content-sidebar-folder-menu:focus-visible{opacity:1;box-shadow:0 0 0 2px color-mix(in oklch,var(--ring)50%,transparent)}.content-sidebar-folder-count{color:var(--muted-foreground);background:var(--muted);text-align:center;border-radius:10px;min-width:20px;margin-left:auto;padding:0 6px;font-size:.6875rem;line-height:1.5}.content-sidebar-folder-skeleton{display:flex;align-items: center;gap:8px;padding:8px 12px}.content-sidebar-folder-skeleton-icon{background:var(--muted);animation:sidebar-skeleton-pulse 1.5s ease-in-out infinite;border-radius:4px;width:16px;height:16px}.content-sidebar-folder-skeleton-text{background:var(--muted);animation:sidebar-skeleton-pulse 1.5s ease-in-out infinite;animation-delay:75ms;border-radius:4px;width:80%;height:14px}@keyframes sidebar-skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.content-sidebar-folders-empty{color:var(--muted-foreground);padding:8px 12px;font-size:.8125rem;font-style:italic}.content-sidebar-section svg{flex-shrink:0;width:20px;height:20px}.content-sidebar-folder svg{flex-shrink:0;width:16px;height:16px}.team-selector-button{display:flex;background-color:var(--accent);cursor:pointer;outline:none;border:none;border-radius:8px;align-items: center;gap:8px;padding:8px 12px;transition:all .2s}.team-selector-button:hover{background-color:color-mix(in oklch,var(--accent)80%,transparent)}.team-selector-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.team-selector-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.team-selector-icon{width:1rem;height:1rem}.team-selector-item-content{display:flex;flex:1 1 0;align-items: center;gap:8px}.team-selector-item-name{flex:1 1 0}.team-selector-item-check{color:var(--primary)}.team-selector-manage{cursor:pointer}.icon-button{position:relative;cursor:pointer;outline:none;color:var(--foreground);display:flex;background:0 0;border-radius:8px;justify-content:center;align-items: center;transition:all .2s}.icon-button:before{content:"";position:absolute;border-radius:14px;inset:-6px}.icon-button-sm{padding:6px}.icon-button-md{padding:8px}.icon-button-default{border:1px solid var(--border);background:var(--background)}.icon-button-default:hover{background:var(--accent)}.icon-button-ghost{border:none}.icon-button-ghost:hover{background:var(--accent)}.icon-button-destructive{border:none}.icon-button-destructive:hover{background:color-mix(in oklch,var(--destructive)10%,transparent);color:var(--destructive)}.icon-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.icon-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.icon-button-sm .icon-button-icon{width:16px;height:16px}.icon-button-md .icon-button-icon{width:20px;height:20px}.view-toggle{display:flex;align-items: center;gap:4px}.view-toggle-button{position:relative;display:flex;border:1px solid var(--border);color:var(--muted-foreground);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items: center;width:2rem;height:2rem;transition:all .2s}.view-toggle-button:before{content:"";position:absolute;border-radius:12px;inset:-6px}.view-toggle-button:hover{border-color:var(--accent);color:var(--accent-foreground)}.view-toggle-button-active{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.view-toggle-icon{width:1rem;height:1rem}.search-input-wrapper{position:relative}.search-input-icon{position:absolute;color:var(--muted-foreground);pointer-events:none;width:1.25rem;height:1.25rem;top:50%;left:.75rem;transform:translateY(-50%)}.search-input{background-color:var(--input-background);color:var(--foreground);border:2px solid color-mix(in oklch,var(--border)50%,transparent);outline:none;border-radius:.5rem;width:100%;padding:.625rem 1rem .625rem 2.75rem;transition:all .2s}.search-input::placeholder{color:var(--muted-foreground)}.search-input:focus{box-shadow:0 0 0 2px color-mix(in oklch,var(--ring)20%,transparent)}.content-toolbar{border-bottom:1px solid var(--border);background:color-mix(in oklch,var(--card)50%,transparent);backdrop-filter:blur(24px);position:sticky;z-index:10;top:0}.content-toolbar-container{display:flex;align-items: center;height:100%;padding:0 24px}.content-toolbar-content{display:flex;justify-content:space-between;align-items: center;gap:16px;width:100%}.content-toolbar-actions{display:flex;align-items: center;gap:8px}.content-toolbar-divider{background:var(--border);width:1px;height:24px}.content-toolbar-new-playbook{display:flex;background:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;white-space:nowrap;border:none;border-radius:8px;align-items: center;gap:8px;padding:8px 16px;transition:all .2s}.content-toolbar-new-playbook:hover{background:color-mix(in oklch,var(--action-button)90%,transparent)}.content-toolbar-new-playbook:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.content-toolbar-icon{width:1rem;height:1rem}.select-button{display:flex;background-color:var(--card);border:2px solid var(--muted-foreground);cursor:pointer;outline:none;border-radius:50%;justify-content:center;align-items: center;width:1.25rem;height:1.25rem;padding:0;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,border-color .2s,box-shadow .2s}.select-button:hover:not(:disabled){background-color:var(--accent);border-color:var(--action-button);transform:scale(1.02)}.select-button:active:not(:disabled){transition-duration:80ms;transform:scale(.95)}.select-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.select-button--selected,.select-button--selected:hover:not(:disabled){background-color:var(--action-button);border-color:var(--action-button);box-shadow:0 2px 4px #0003}.select-button--partial{border-color:var(--action-button)}.select-button-icon{color:#fff;stroke-width:3;width:.75rem;height:.75rem}.select-button--partial .select-button-icon{color:var(--action-button)}@media (prefers-reduced-motion:reduce){.select-button{transition:none}}.playbook-preview-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;background:var(--background);position:relative;gap:.75rem .5rem;width:100%;height:100%;padding:8px}.playbook-preview-cell{aspect-ratio:16/9;background:var(--field-bg);border:1px solid var(--card-border);overflow:hidden;display:flex;border-radius:12px;align-items:stretch}.playbook-preview-placeholder{background:linear-gradient(135deg,var(--muted)0%,var(--accent)100%);opacity:.3;width:100%;height:100%}.playbook-preview-empty{background:linear-gradient(to bottom right,var(--accent),var(--muted));display:flex;justify-content:center;align-items: center;width:100%;height:100%}.playbook-preview-empty-icon{color:color-mix(in oklch,var(--muted-foreground)40%,transparent);stroke-width:1.5;width:4rem;height:4rem}.document-preview-grid{background:var(--background);position:relative;display:flex;flex-direction:column;width:100%;height:100%;padding:.5rem}.document-preview-sections{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);flex:1;gap:.375rem;min-height:0}.document-preview-section{background:var(--card);border:1px solid var(--card-border);overflow:hidden;display:flex;border-radius:6px;flex-direction:column}.document-preview-section-header{color:#fff;text-shadow:0 1px 2px #0000004d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1rem;padding:.125rem .25rem;font-size:.5rem;font-weight:500}.document-preview-section-name{display:block;overflow:hidden;text-overflow:ellipsis}.document-preview-section-plays{display:flex;flex:1;align-items: flex-start;padding:.25rem}.document-preview-dots{display:flex;flex-wrap:wrap;align-items: center;gap:.125rem}.document-preview-dot{border-radius:50%;flex-shrink:0;width:.375rem;height:.375rem}.document-preview-dot-run{background-color:var(--destructive)}.document-preview-dot-pass{background-color:var(--primary)}.document-preview-dot-neutral{background-color:var(--muted-foreground);opacity:.5}.document-preview-more{color:var(--muted-foreground);margin-left:.125rem;font-size:.5rem}.document-preview-template-label{color:var(--muted-foreground);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.25rem;font-size:.5rem}.document-preview-empty{background:linear-gradient(to bottom right,var(--accent),var(--muted));display:flex;justify-content:center;align-items: center;width:100%;height:100%}.document-preview-empty-icon{color:color-mix(in oklch,var(--muted-foreground)40%,transparent);stroke-width:1.5;width:4rem;height:4rem}.content-card{position:relative;background:var(--background);border:1px solid var(--card-border);cursor:pointer;overflow:hidden;border-radius:12px;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease-out,border-color .2s ease-out}.content-card:hover{box-shadow:var(--shadow-elevation-high);transform:translateY(-4px)scale(1.01)}.content-card[data-selected=true]{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.content-card[data-selected=true]:hover{box-shadow:0 0 0 2px var(--primary),var(--shadow-elevation-high);transform:translateY(-4px)scale(1.01)}.content-card[data-animate=reveal]{animation:card-reveal .4s ease-out backwards;animation-delay:var(--reveal-delay,0s)}@keyframes card-reveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.content-card[data-animate=fade-slide]{animation:fadeSlideIn .4s ease-out backwards;animation-delay:calc(min(var(--card-index,0),20)*60ms)}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.content-card-thumbnail{aspect-ratio:16/9;display:flex;position:relative;overflow:hidden;align-items:stretch}.content-card-thumbnail img{object-fit:cover;width:100%;height:100%}.content-card-thumbnail-gradient{background:linear-gradient(to bottom right,var(--accent),var(--muted));display:flex;justify-content:center;align-items: center;width:100%;height:100%}.content-card-select-button{position:absolute;z-index:5;top:.3rem;left:.3rem}.content-card-thumbnail-icon{color:color-mix(in oklch,var(--muted-foreground)40%,transparent);stroke-width:1.5;width:4rem;height:4rem}.content-card-action-icon{color:inherit;width:1rem;height:1rem}.content-card-action-icon-starred{fill:var(--color-star);color:var(--color-star);width:1rem;height:1rem}.content-card-menu-icon{width:1rem;height:1rem}.content-card-actions{display:flex;flex-shrink:0;align-items: center;gap:.25rem}.content-card-action-button{position:relative;display:flex;background:color-mix(in oklch,var(--card)90%,transparent);backdrop-filter:blur(8px);border:1px solid var(--border);color:var(--muted-foreground);cursor:pointer;outline:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;padding:0;transition:all .2s}.content-card-action-button:before{content:"";position:absolute;border-radius:14px;inset:-6px}.content-card-action-button:hover{background:var(--accent);color:var(--accent-foreground)}.content-card-action-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.content-card-actions .content-card-action-button{opacity:0;transition:opacity .15s,transform .15s,background-color .2s,color .2s;transform:translateY(4px)}.content-card:hover .content-card-actions .content-card-action-button{opacity:1;transform:translateY(0)}.content-card:hover .content-card-actions .content-card-action-button:first-child{transition-delay:0s}.content-card:hover .content-card-actions .content-card-action-button:nth-child(2){transition-delay:30ms}.content-card:hover .content-card-actions .content-card-action-button:nth-child(3){transition-delay:60ms}.content-card-info{padding:16px}.content-card-header{display:flex;justify-content:space-between;align-items: center;gap:.5rem;margin-bottom:.5rem}.content-card-type-indicator{display:flex;color:var(--muted-foreground);overflow:hidden;flex-shrink:1;align-items: center;gap:.375rem;min-width:0;font-size:.75rem}.content-card-type-label{text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.content-card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:1rem;font-weight:500;line-height:1.5}.content-card-meta{color:var(--muted-foreground);font-size:.875rem}.content-card-meta+.content-card-meta{margin-top:4px}@media (prefers-reduced-motion:reduce){.content-card,.content-card[data-animate=reveal],.content-card[data-animate=fade-slide]{animation:none;opacity:1;transition:none;transform:none}}.content-list-header{display:grid;grid-template-columns:repeat(13,1fr);border-bottom:1px solid var(--border);background:var(--muted);position:sticky;z-index:10;gap:1rem;padding:.75rem 1rem;top:0}.content-list-header-cell{display:flex;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;align-items: center;font-size:.75rem;font-weight:500}.content-list-row{display:grid;grid-template-columns:repeat(13,1fr);border-bottom:1px solid var(--border);gap:1rem;padding:.75rem 1rem;transition:background .2s}.content-list-row:hover{background:var(--accent)}.content-list-row-selected{background:color-mix(in oklch,var(--accent)50%,transparent)}.content-list-row-selected:hover{background:color-mix(in oklch,var(--accent)70%,var(--primary)15%)}.content-list-cell{display:flex;align-items: center;min-width:0}.content-list-name-button{text-align:left;cursor:pointer;outline:none;color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:#0000;border:none;width:100%;padding:0;transition:all .2s;font-weight:500}.content-list-name-button:hover{text-decoration:underline}.content-list-name-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);border-radius:.25rem}.content-list-type{display:flex;color:var(--muted-foreground);align-items: center;gap:.375rem;font-size:.875rem}.content-list-meta{color:var(--muted-foreground);font-size:.875rem}.content-list-actions{display:flex;justify-content:flex-end;align-items: center}.content-list-action-buttons{display:flex;align-items: center;gap:.25rem}.content-list-action-button{display:flex;color:var(--muted-foreground);cursor:pointer;outline:none;opacity:0;background:0 0;border:1px solid #0000;border-radius:8px;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;padding:0;transition:all .2s}.content-list-action-button:hover{background:var(--accent);color:var(--accent-foreground);border-color:var(--border)}.content-list-action-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.content-list-row:hover .content-list-action-button,.content-list-action-button-more{opacity:1}.content-list-action-icon{color:inherit;width:1rem;height:1rem}.content-list-action-icon-starred{fill:var(--color-star);color:var(--color-star);width:1rem;height:1rem}.content-list-menu-icon{width:1rem;height:1rem}.content-list-action-button{transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,color .2s,opacity .2s}.content-list-action-button:hover:not(:disabled){transform:scale(1.05)}.content-list-action-button:active:not(:disabled){transition-duration:80ms;transform:scale(.95)}.content-list-name-button{transition:transform .15s cubic-bezier(.34,1.56,.64,1),text-decoration .2s}.content-list-name-button:hover{transform:translate(2px)}.content-list-name-button:active{transform:scale(.98)}.content-list-row[data-animate=stagger]{animation:row-enter .3s ease-out backwards;animation-delay:calc(var(--row-index,0)*30ms)}@keyframes row-enter{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.content-list-row,.content-list-action-button{transition:none}}.windowed-content-grid{overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;flex:1;padding:1rem}.windowed-content-grid-spacer{box-sizing:border-box}@media (prefers-reduced-motion:reduce){.windowed-content-grid{scroll-behavior:auto}}.selection-action-bar{position:fixed;z-index:50;animation:selection-action-bar-enter .3s cubic-bezier(.34,1.56,.64,1)forwards;bottom:24px;left:50%;transform:translate(-50%)}.selection-action-bar[data-exiting=true]{animation:selection-action-bar-exit .2s ease-in forwards}.selection-action-bar__content{display:flex;background:color-mix(in oklch,var(--card)80%,transparent);backdrop-filter:blur(16px);border:1px solid color-mix(in oklch,var(--border)50%,transparent);border-radius:12px;align-items: center;gap:12px;padding:12px 16px;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014,0 1px 3px #0000000f}.selection-action-bar__count{color:var(--foreground);white-space:nowrap;font-size:.875rem;font-weight:500}.selection-action-bar__actions{display:flex;align-items: center;gap:12px}.selection-action-bar__button,.selection-action-bar__clear{display:flex;border:1px solid var(--border);background:var(--background);color:var(--foreground);cursor:pointer;white-space:nowrap;border-radius:8px;align-items: center;gap:8px;padding:8px 16px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .15s ease-out,border-color .15s ease-out;font-size:.875rem;font-weight:500}.selection-action-bar__button:hover{background:var(--accent);transform:scale(1.02)}.selection-action-bar__button:active,.selection-action-bar__clear:active{transform:scale(.95)}.selection-action-bar__button[data-variant=destructive]{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive)}.selection-action-bar__button[data-variant=destructive]:hover{background:color-mix(in oklch,var(--destructive)90%,black)}.selection-action-bar__clear{background:0 0;border-color:#0000}.selection-action-bar__clear:hover{background:var(--muted);transform:scale(1.02)}@keyframes selection-action-bar-enter{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes selection-action-bar-exit{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(20px)}}@media (prefers-reduced-motion:reduce){.selection-action-bar{animation:none}.selection-action-bar[data-exiting=true]{animation:none;opacity:0}.selection-action-bar__button,.selection-action-bar__clear{transition:none}.selection-action-bar__button:hover,.selection-action-bar__clear:hover,.selection-action-bar__button:active,.selection-action-bar__clear:active{transform:none}}.resizable-handle[data-panel-group-direction=vertical]>div{transform:rotate(90deg)}.resizable-handle-grip{z-index:10;display:none}.resizable-handle-icon{width:.625rem;height:.625rem}.content-manager-page{overflow:hidden;background:var(--background);height:100vh}.page-loading{display:flex;flex-direction:column;justify-content:center;align-items: center;gap:16px;height:100vh}.page-loading-spinner{border:4px solid var(--muted);border-top-color:var(--primary);animation:spin 1s linear infinite;border-radius:9999px;width:48px;height:48px}@keyframes spin{to{transform:rotate(360deg)}}.page-loading-text{color:var(--muted-foreground);font-size:.875rem}.page-error{display:flex;justify-content:center;align-items: center;height:100vh}.page-error-content{text-align:center;max-width:500px;padding:24px}.page-error-title{color:var(--foreground);margin-bottom:12px;font-size:1.875rem;font-weight:700}.page-error-title[data-variant=error]{color:var(--destructive)}.page-error-message{color:var(--muted-foreground);font-size:1rem}.content-manager-resize-handle{transition:background-color .2s,colors .2s}.content-manager-resize-handle:hover{background:var(--sidebar-accent)}.content-manager-resize-handle:active{background:var(--sidebar-border)}.content-manager-content{display:flex;overflow:hidden;flex-direction:column;height:100%}.content-manager-content-inner{display:flex;overflow:hidden;flex-direction:column;flex:1;gap:16px;padding:24px}.trash-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:16px}.trash-notice{color:var(--muted-foreground);font-size:.875rem}.trash-actions{display:flex;align-items: center;gap:8px}.trash-recover-button{background:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border:none;border-radius:8px;padding:8px 16px;transition:opacity .2s}.trash-recover-button:hover{opacity:.9}.trash-recover-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.trash-empty-button{background:var(--destructive);color:var(--destructive-foreground);cursor:pointer;outline:none;border:none;border-radius:8px;padding:8px 16px;transition:opacity .2s}.trash-empty-button:hover{opacity:.9}.trash-empty-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:16px}@media (min-width:768px){.playbook-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.playbook-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1280px){.playbook-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.playbook-list{display:flex;flex-direction:column;gap:12px}.content-list-container{background:var(--card);border:1px solid var(--border);overflow:hidden;display:flex;border-radius:12px;flex-direction:column;flex:1}.playbook-section{margin-bottom:32px}.playbook-section-title{color:var(--foreground);margin-bottom:16px;font-size:1.25rem;font-weight:600}.empty-state{text-align:center;padding:64px 16px}.empty-state-text{color:var(--muted-foreground);margin-bottom:16px;font-size:.875rem}.empty-state-button{background:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border:none;border-radius:8px;padding:10px 24px;transition:all .2s}.empty-state-button:hover{background:color-mix(in oklch,var(--action-button)90%,transparent)}.empty-state-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.dialog-body{display:flex;flex-direction:column;gap:16px}.form-field{display:flex;flex-direction:column;gap:8px}.form-label{display:block;color:var(--foreground);font-size:.875rem;font-weight:500}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.dialog-warning{color:var(--destructive);text-align:center;font-size:.875rem}.dialog-close-button{position:relative;display:flex;cursor:pointer;outline:none;color:var(--muted-foreground);background-color:#0000;border:none;border-radius:.5rem;justify-content:center;align-items: center;width:2rem;height:2rem;transition:transform .15s cubic-bezier(.34,1.56,.64,1),color .2s,background-color .2s}.dialog-close-button:before{content:"";position:absolute;border-radius:.75rem;inset:-6px}.dialog-close-button:hover:not(:disabled){color:var(--foreground);background-color:var(--accent);transform:scale(1.02)}.dialog-close-button:active:not(:disabled){transition-duration:80ms;transform:scale(.95)}.dialog-close-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.dialog-close-button svg{width:1rem;height:1rem}@media (prefers-reduced-motion:reduce){.dialog-close-button{transition:none}}.slider{position:relative;display:flex;touch-action:none;user-select:none;align-items: center;width:100%}.slider[data-orientation=vertical]{flex-direction:column;width:auto;height:100%;min-height:176px}.slider[data-orientation=horizontal]{width:100%}.slider[data-disabled]{opacity:.5}.slider-track{position:relative;overflow:hidden;background-color:var(--muted);border-radius:9999px;flex-grow:1}.slider-track[data-orientation=horizontal]{width:100%;height:16px}.slider-track[data-orientation=vertical]{width:6px;height:100%}.slider-range{position:absolute;background-color:var(--action-button)}.slider-range[data-orientation=horizontal]{height:100%}.slider-range[data-orientation=vertical]{width:100%}.slider-thumb{display:block;background-color:var(--primary);box-shadow:0 1px 3px #0003,0 0 0 0 color-mix(in oklch,var(--action-button)30%,transparent);cursor:grab;border:none;border-radius:3px;flex-shrink:0;width:6px;height:20px;transition:transform .2s cubic-bezier(.34,1.56,.64,1),background-color .2s,box-shadow .2s}.slider-thumb:active{cursor:grabbing;transform:scaleY(1.15)}.slider-thumb:hover{background-color:var(--action-button);box-shadow:0 2px 6px #00000040,0 0 0 4px color-mix(in oklch,var(--action-button)20%,transparent);transform:scaleY(1.1)}.slider-thumb:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.slider-thumb:disabled{pointer-events:none;opacity:.5;cursor:not-allowed}.animation-controls{display:flex;background:color-mix(in oklch,var(--card)60%,transparent);backdrop-filter:blur(16px);border:1px solid color-mix(in oklch,var(--border)50%,transparent);border-radius:16px;flex-direction:column;gap:1rem;padding:16px 20px;box-shadow:0 4px 12px #00000014,0 1px 3px #0000000a}.dark .animation-controls{background:color-mix(in oklch,var(--card)50%,transparent);box-shadow:0 4px 16px #0003,0 1px 4px #0000001a}.animation-controls-scrubber{display:flex;align-items: center;gap:.75rem}.animation-controls-time{font-variant-numeric:tabular-nums;color:var(--muted-foreground);text-align:center;min-width:3rem;transition:color .2s;font-family:ui-monospace,monospace;font-size:.8125rem}.animation-controls-buttons{display:flex;justify-content:center;align-items: center;gap:12px}.animation-controls-divider{background:var(--border);width:1px;height:24px;margin:0 8px}.animation-controls-speed-group{display:flex;align-items: center;gap:8px}.animation-controls-speed-label{color:var(--muted-foreground);letter-spacing:.02em;text-transform:uppercase;font-size:.75rem;font-weight:500}.animation-controls-speed-select{border:1px solid var(--border);background-color:var(--input-background);color:var(--foreground);font-variant-numeric:tabular-nums;border-radius:8px;width:4.5rem;height:2rem;transition:all .2s}.animation-controls-speed-select:hover{border-color:color-mix(in oklch,var(--border)150%,var(--foreground))}.animation-controls-button-play{border-radius:50%;width:3.5rem;height:3.5rem;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background-color .2s,box-shadow .2s;box-shadow:0 2px 8px #00000026}.animation-controls-button-play:hover{box-shadow:0 4px 12px color-mix(in oklch,var(--action-button)30%,transparent);transform:scale(1.05)}.animation-controls-button-play:active{transition:transform 80ms ease-out;transform:scale(.92)}.animation-controls-button-loop{transition:color .2s,background-color .2s,transform .2s}.animation-controls-button-loop:hover{background-color:var(--accent)}.animation-controls-button-loop:active{transform:scale(.92)}.animation-controls-button-loop[data-active=true]{color:var(--action-button);background-color:color-mix(in oklch,var(--action-button)15%,transparent)}.animation-controls-button-loop[data-active=true]:hover{background-color:color-mix(in oklch,var(--action-button)20%,transparent)}.animation-controls-button-reset{transition:color .2s,background-color .2s,transform .2s}.animation-controls-button-reset:hover{background-color:var(--accent)}.animation-controls-button-reset:hover svg{transition:transform .2s ease-out;transform:rotate(-45deg)}.animation-controls-button-reset:active{transform:scale(.92)}.animation-dialog-content{display:flex;flex-direction:column;gap:20px;height:100%}.animation-dialog-header{display:flex;flex-shrink:0;justify-content:space-between;align-items: center;padding-bottom:8px}.animation-dialog-title{letter-spacing:-.02em;color:var(--foreground);font-size:1.25rem;font-weight:600;line-height:1}.animation-dialog-loading,.animation-dialog-error{display:flex;justify-content:center;align-items: center;min-height:400px}.animation-dialog-error-text{color:var(--destructive);font-size:.875rem}.animation-dialog-loading-text{color:var(--muted-foreground);font-size:.875rem}.animation-dialog-canvas-container{overflow:hidden;background:radial-gradient(ellipse at center,var(--muted)0%,color-mix(in oklch,var(--muted)70%,var(--background))100%);box-shadow:inset 0 2px 4px #0000000f,inset 0 0 0 1px var(--border);animation:fade-in .3s ease-out .1s both;border-radius:12px;flex:1;width:100%;min-height:0}.dark .animation-dialog-canvas-container{box-shadow:inset 0 2px 8px #00000026,inset 0 0 0 1px var(--border)}.animation-dialog-controls{animation:controls-reveal .35s cubic-bezier(.34,1.56,.64,1).2s both;flex-shrink:0}.animation-dialog-wrapper{display:flex;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px var(--border);border-radius:20px;flex-direction:column;gap:20px;width:70vw;max-width:none;height:95vh;padding:24px}.animation-dialog-wrapper>[data-slot=dialog-close]{display:none}@media (min-width:640px){.animation-dialog-wrapper{max-width:none}}.slide-export-dialog{max-width:720px;max-height:85vh}.slide-export-dialog__body{display:flex;overflow-y:auto;flex-direction:column;gap:1.25rem;padding-right:.25rem}.slide-export-dialog__config{display:flex;flex-direction:column;gap:1rem}.slide-export-dialog__format{display:flex;flex-direction:column;gap:.5rem}.slide-export-dialog__label{color:var(--foreground);font-size:.8125rem;font-weight:600}.slide-export-dialog__format-options{display:flex;gap:.5rem}.slide-export-dialog__format-btn{border:2px solid var(--border);background-color:var(--secondary);color:var(--foreground);cursor:pointer;outline:none;border-radius:8px;flex:1;padding:.5rem 1rem;transition:all .2s;font-size:.8125rem;font-weight:500}.slide-export-dialog__format-btn:hover{border-color:var(--muted-foreground)}.slide-export-dialog__format-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.slide-export-dialog__format-btn:active{transform:scale(.97)}.slide-export-dialog__format-btn[data-selected=true]{background-color:color-mix(in oklch,var(--action-button)10%,transparent);border-color:var(--action-button);color:var(--action-button)}.slide-export-dialog__error{background-color:color-mix(in oklch,var(--destructive)10%,transparent);color:var(--destructive);border-radius:8px;padding:.75rem;font-size:.8125rem}.slide-export-dialog__summary{color:var(--muted-foreground);flex:1;font-size:.8125rem}.content-selector{display:flex;flex-direction:column;gap:.5rem}.content-selector__header{display:flex;justify-content:space-between;align-items: center}.content-selector__label{color:var(--foreground);font-size:.8125rem;font-weight:600}.content-selector__toggle-btn{color:var(--action-button);cursor:pointer;outline:none;background-color:#0000;border:none;border-radius:4px;padding:.25rem .5rem;transition:background-color .2s;font-size:.75rem}.content-selector__toggle-btn:hover{background-color:color-mix(in oklch,var(--action-button)10%,transparent)}.content-selector__toggle-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.content-selector__list{display:flex;overflow-y:auto;flex-direction:column;gap:.25rem;max-height:180px}.content-selector__item{display:flex;cursor:pointer;outline:none;border:1px solid #0000;border-radius:6px;align-items: center;gap:.75rem;padding:.5rem .75rem;transition:all .2s}.content-selector__item:hover{background-color:var(--accent)}.content-selector__item:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.content-selector__item[data-selected=true]{background-color:color-mix(in oklch,var(--action-button)8%,transparent)}.content-selector__name{color:var(--foreground);flex:1;font-size:.8125rem;font-weight:500}.content-selector__count{color:var(--muted-foreground);font-size:.75rem}.content-selector__empty{text-align:center;color:var(--muted-foreground);padding:1rem;font-size:.8125rem}.layout-picker{display:flex;flex-direction:column;gap:.5rem}.layout-picker__label{color:var(--foreground);font-size:.8125rem;font-weight:600}.layout-picker__options{display:flex;gap:.5rem}.layout-picker__option{display:flex;border:2px solid var(--border);background-color:var(--secondary);cursor:pointer;outline:none;border-radius:8px;flex-direction:column;flex:1;align-items: center;gap:.25rem;padding:.5rem;transition:all .2s}.layout-picker__option:hover{border-color:var(--muted-foreground)}.layout-picker__option:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.layout-picker__option[data-selected=true]{background-color:color-mix(in oklch,var(--action-button)10%,transparent);border-color:var(--action-button)}.layout-picker__icon{width:40px;height:28px}.layout-picker__count{color:var(--muted-foreground);font-size:.6875rem;font-weight:600}.layout-picker__option[data-selected=true] .layout-picker__count{color:var(--action-button)}.metadata-toggles{display:flex;flex-direction:column;gap:.5rem}.metadata-toggles__label{color:var(--foreground);font-size:.8125rem;font-weight:600}.metadata-toggles__grid{display:flex;flex-wrap:wrap;gap:.25rem 1rem}.metadata-toggles__item{display:flex;cursor:pointer;color:var(--foreground);align-items: center;gap:.5rem;padding:.25rem 0;font-size:.8125rem}.slide-organizer{display:flex;flex-direction:column;gap:.5rem}.slide-organizer__header{display:flex;justify-content:space-between;align-items: center}.slide-organizer__label{color:var(--foreground);font-size:.8125rem;font-weight:600}.slide-organizer__reset-btn{color:var(--action-button);cursor:pointer;outline:none;background-color:#0000;border:none;border-radius:4px;padding:.25rem .5rem;transition:background-color .2s;font-size:.75rem}.slide-organizer__reset-btn:hover{background-color:color-mix(in oklch,var(--action-button)10%,transparent)}.slide-organizer__reset-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.slide-organizer__grid{display:flex;overflow-y:auto;flex-wrap:wrap;gap:.5rem;max-height:300px;padding-right:.25rem}.slide-organizer__card{position:relative;display:flex;border:2px solid var(--border);background-color:var(--card);border-radius:8px;flex-direction:column;gap:.25rem;width:160px;min-height:100px;padding:.5rem;transition:border-color .2s,box-shadow .2s}.slide-organizer__card[data-drop-target=true]{border-color:var(--action-button);box-shadow:0 0 0 3px color-mix(in oklch,var(--action-button)20%,transparent)}.slide-organizer__card[data-drag-source=true]{opacity:.5}.slide-organizer__card[data-type=divider]{background-color:var(--foreground);justify-content:center;align-items: center}.slide-organizer__divider-content{text-align:center;padding:.5rem}.slide-organizer__divider-title{color:var(--background);font-size:.6875rem;font-weight:600}.slide-organizer__card-header{display:flex;justify-content:space-between;align-items: center}.slide-organizer__slide-number{color:var(--muted-foreground);font-size:.6875rem;font-weight:600}.slide-organizer__play-count{color:var(--muted-foreground);font-size:.625rem}.slide-organizer__plays{display:grid;flex:1;gap:.25rem}.slide-organizer__plays[data-count="1"]{grid-template-columns:1fr}.slide-organizer__plays[data-count="2"]{grid-template-columns:1fr 1fr}.slide-organizer__plays[data-count="3"],.slide-organizer__plays[data-count="4"]{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.slide-organizer__plays[data-count="5"],.slide-organizer__plays[data-count="6"]{grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr}.slide-organizer__play-item{display:flex;cursor:grab;border-radius:4px;flex-direction:column;align-items: center;gap:.125rem;padding:2px;transition:background-color .2s}.slide-organizer__play-item:hover{background-color:var(--accent)}.slide-organizer__play-item:active{cursor:grabbing}.slide-organizer__play-thumb{aspect-ratio:16/9;overflow:hidden;pointer-events:none;border-radius:3px;width:100%}.slide-organizer__play-thumb svg{object-fit:contain;width:100%;height:100%}.slide-organizer__play-name{color:var(--muted-foreground);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.5625rem}.slide-organizer__drop-indicator{position:absolute;display:flex;background-color:color-mix(in oklch,var(--action-button)15%,transparent);color:var(--action-button);pointer-events:none;border-radius:6px;justify-content:center;align-items: center;font-size:.75rem;font-weight:500;inset:0}.slide-organizer__hint{color:var(--muted-foreground);text-align:center;font-size:.75rem}@media (prefers-reduced-motion:reduce){.slide-export-dialog__format-btn,.content-selector__item,.content-selector__toggle-btn,.layout-picker__option,.slide-organizer__card,.slide-organizer__play-item,.slide-organizer__reset-btn{transition:none}.slide-export-dialog__format-btn:active{transform:none}}.label-chips{display:flex;overflow:hidden;flex-wrap:nowrap;align-items: center;gap:4px}.label-chip{display:inline-flex;white-space:nowrap;border:1px solid;border-radius:999px;align-items: center;padding:1px 8px;font-size:.75rem;font-weight:500;line-height:1.4}.label-chip-overflow{background:var(--muted);color:var(--muted-foreground);border-color:var(--border)}.label-chips-compact{gap:4px}.label-chip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.play-card{position:relative;background:var(--card);border:1px solid var(--card-border);overflow:hidden;border-radius:12px;width:100%;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease-out,border-color .2s ease-out}.play-card:hover{box-shadow:var(--shadow-elevation-high),0 0 0 4px color-mix(in oklch,var(--color-blue)50%,transparent);border-color:var(--color-blue);transform:translateY(-4px)scale(1.01)}.play-card[data-selected=true]{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.play-card[data-selected=true]:hover{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary),var(--shadow-elevation-high)}.play-card[data-animate=reveal]{animation:card-reveal .4s ease-out backwards;animation-delay:var(--reveal-delay,0s)}@keyframes card-reveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.play-card-thumbnail{position:relative}.play-card-thumbnail-button{aspect-ratio:16/9;background:var(--field-bg);display:flex;cursor:pointer;align-items:stretch;transition:background .2s}.play-card-thumbnail-button:hover{background:color-mix(in oklch,var(--field-bg)90%,white)}.play-card-type-badge{position:absolute;box-shadow:var(--shadow-elevation-low);backdrop-filter:blur(4px);border-radius:6px;padding:4px 10px;font-size:.75rem;top:8px;right:8px}.play-card-type-badge-route{background:var(--action-button);color:var(--action-button-foreground)}.play-card-type-badge-formation{background:color-mix(in oklch,var(--color-green)20%,transparent);color:var(--color-green)}.play-card-type-badge-group{background:color-mix(in oklch,var(--color-purple)20%,transparent);color:var(--color-purple)}.play-card-badges{position:absolute;display:flex;flex-direction:row-reverse;gap:4px;top:8px;right:8px}.play-card-badge{border-radius:4px;padding:2px 8px;font-size:.75rem}.play-card-badge-motion{background:color-mix(in oklch,var(--color-orange)20%,transparent);color:var(--color-orange)}.play-card-badge-modifier{background:color-mix(in oklch,var(--color-yellow)20%,transparent);color:var(--color-yellow)}.play-card-linked-indicator{position:absolute;background:color-mix(in oklch,var(--color-blue)90%,transparent);display:flex;color:var(--overlay-text);box-shadow:var(--shadow-elevation-low);border-radius:50%;justify-content:center;align-items: center;width:24px;height:24px;top:8px;left:8px}.play-card-linked-icon{width:14px;height:14px}.play-card-thumbnail-placeholder{color:var(--muted-foreground);font-size:.875rem}.play-card-thumbnail-image{object-fit:contain;width:100%;height:100%}.play-card-animate-button{position:absolute;z-index:10;display:flex;background-color:var(--color-blue);box-shadow:var(--shadow-elevation-medium);opacity:0;cursor:pointer;outline:none;border:none;border-radius:50%;justify-content:center;align-items: center;width:40px;height:40px;transition:all .2s;top:50%;left:50%;transform:translate(-50%,-50%)}.play-card-thumbnail:hover .play-card-animate-button{opacity:1}.play-card-animate-button:hover{background-color:color-mix(in oklch,var(--color-blue)85%,var(--overlay-dark));transform:translate(-50%,-50%)scale(1.1)}.play-card-animate-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.play-card-select-button{position:absolute;top:.3rem;left:.3rem}.play-card-content{border-top:1px solid var(--card-border);padding:12px}.play-card-header{display:flex;justify-content:space-between;align-items: start;gap:0;margin-top:12px;margin-bottom:4px}.play-card-title{display:-webkit-box;-webkit-line-clamp:1;overflow:hidden;-webkit-box-orient:vertical;flex:1;margin:0;line-height:1.2}.play-card-menu-button{opacity:0;cursor:pointer;color:var(--foreground);outline:none;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .2s}.play-card:hover .play-card-menu-button{opacity:1}.play-card-menu-button:hover{background:var(--accent);color:var(--accent-foreground)}.play-card-menu-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.play-card-menu-button:hover:focus-visible{box-shadow:none}.play-card-meta{display:flex;align-items: center;gap:8px;margin-bottom:8px}.play-card-formation,.play-card-separator{color:var(--muted-foreground)}.play-card-personnel{background:var(--muted);color:var(--muted-foreground);border-radius:4px;padding:2px 8px;font-size:.75rem}.play-card-defensive-formation{color:var(--muted-foreground);margin-bottom:8px}.play-card-labels{display:flex;flex-wrap:wrap;gap:4px;min-height:22px;margin-top:8px}.play-card-label{white-space:nowrap;border:1px solid;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500}.play-card-icon{width:1rem;height:1rem}.play-card-icon-large{width:1.25rem;height:1.25rem}.play-card-icon-white{color:#fff;fill:white}.play-card-icon-full{width:100%;height:100%}@media (prefers-reduced-motion:reduce){.play-card,.play-card[data-animate=reveal]{animation:none;transition:none;transform:none}.play-card:hover{transform:none}}.play-list-view{background:var(--card);border:1px solid var(--border);overflow:hidden;border-radius:12px}.play-list-view-header{display:grid;grid-template-columns:repeat(12,1fr);border-bottom:1px solid var(--border);background:var(--muted);gap:1rem;padding:.75rem 1rem}.play-list-view-header-cell{display:flex;color:var(--muted-foreground);align-items: center}.play-list-view-rows{border-top:1px solid var(--border)}.play-list-view-rows>:not(:last-child){border-bottom:1px solid var(--border)}.play-list-view-row{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;padding:.75rem 1rem;transition:background .2s}.play-list-view-row:hover{background:var(--accent)}.play-list-view-row-selected{background:color-mix(in oklch,var(--accent)50%,transparent)}.play-list-view-row-selected:hover{background:color-mix(in oklch,var(--accent)70%,var(--primary)15%)}.play-list-view-cell{display:flex;align-items: center}.play-list-view-name-button{text-align:left;cursor:pointer;outline:none;color:var(--foreground);background-color:#0000;border:none;padding:0;transition:all .2s}.play-list-view-name-button:hover{text-decoration:underline}.play-list-view-name-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);border-radius:.25rem}.play-list-view-formation{color:var(--muted-foreground)}.play-list-view-labels{display:flex;flex-wrap:wrap;align-items: center;gap:.25rem}.play-list-view-label{background:var(--muted);color:var(--muted-foreground);white-space:nowrap;border:1px solid;border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.play-list-view-actions{display:flex;justify-content:end;align-items: center}.play-list-view-menu-button{cursor:pointer;outline:none;color:var(--foreground);background-color:#0000;border:none;border-radius:.25rem;padding:.25rem;transition:all .2s}.play-list-view-menu-button:hover{background-color:var(--accent)}.play-list-view-menu-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.play-list-view-menu-button svg{width:1rem;height:1rem}.label-popover{position:absolute;z-index:50;background:var(--popover);border:1px solid var(--border);box-shadow:var(--shadow-elevation-medium);border-radius:8px;min-width:240px;margin-top:4px;padding:12px;top:100%;right:0}.label-create-form{display:flex;flex-direction:column;gap:12px}.label-create-input{border:1px solid var(--border);background:var(--input-background);color:var(--foreground);border-radius:6px;width:100%;padding:8px 12px;font-size:.875rem}.label-create-input:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);border-color:var(--ring)}.label-color-swatches{display:flex;flex-wrap:wrap;gap:8px}.label-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px;transition:border-color .2s ease-out,transform .2s ease-out}.label-color-swatch:hover{transform:scale(1.1)}.label-color-swatch:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.label-color-swatch[data-selected=true]{border-color:var(--foreground);box-shadow:0 0 0 2px var(--background)}.label-create-submit{background:var(--action-button);color:var(--action-button-foreground);cursor:pointer;border:none;border-radius:6px;padding:8px 12px;transition:background .2s ease-out;font-size:.875rem;font-weight:500}.label-create-submit:hover{background:color-mix(in oklch,var(--action-button)90%,transparent)}.label-create-submit:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.label-create-submit:disabled{opacity:.5;cursor:not-allowed}.label-assign-popover{display:flex;flex-direction:column;max-height:320px}.label-assign-list{overflow-y:auto;display:flex;flex-direction:column;flex:1;gap:2px;margin:8px 0}.label-assign-row{display:flex;cursor:pointer;border-radius:4px;align-items: center;gap:8px;padding:4px 8px}.label-assign-row:hover,.label-assign-row:focus-within{background:var(--accent)}.label-assign-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.label-assign-name{color:var(--foreground);font-size:.875rem}.label-assign-empty{color:var(--muted-foreground);text-align:center;padding:8px 0;font-size:.875rem}.label-assign-create{border:1px dashed var(--border);color:var(--muted-foreground);cursor:pointer;text-align:center;background:0 0;border-radius:6px;width:100%;padding:8px;transition:background .2s ease-out,color .2s ease-out,border-style .2s ease-out;font-size:.875rem}.label-assign-create:hover{background:var(--accent);color:var(--foreground);border-style:solid}.label-assign-create:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.label-filter-popover-actions{display:flex;border-top:1px solid var(--border);justify-content:flex-end;padding-top:8px}.label-filter-clear{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:.8125rem}.label-filter-clear:hover{color:var(--foreground)}.label-filter-clear:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}@media (prefers-reduced-motion:reduce){.label-color-swatch,.label-create-submit,.label-assign-create{transition:none}.label-color-swatch:hover{transform:none}}.label-filter-bar{display:flex;position:relative;align-items: center;gap:8px;padding:8px 0}.label-filter-bar-scroll{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;flex:1;align-items: center;gap:8px}.label-filter-bar-scroll::-webkit-scrollbar{display:none}.label-filter-pill{display:inline-flex;border:1px solid var(--border);background:var(--background);color:var(--muted-foreground);white-space:nowrap;cursor:pointer;user-select:none;border-radius:999px;align-items: center;gap:8px;padding:4px 12px;transition:background .2s ease-out,border-color .2s ease-out,color .2s ease-out;font-size:.8125rem;font-weight:500}.label-filter-pill:hover{background:var(--accent);border-color:var(--accent);color:var(--foreground)}.label-filter-pill:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent);outline:none}.label-filter-pill[data-active=true]{background:var(--accent);border-color:var(--foreground);color:var(--foreground);font-weight:600}.label-filter-pill-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.label-filter-pill-count{color:var(--muted-foreground);font-size:.75rem;font-weight:400}.label-filter-pill[data-active=true] .label-filter-pill-count{color:var(--foreground)}.label-filter-pill-action{color:var(--muted-foreground);border-style:dashed}.label-filter-pill-action:hover{border-style:solid}.label-filter-pill-untagged{color:var(--muted-foreground);border-style:dashed}.label-filter-pill-untagged[data-active=true]{border-style:solid}.label-filter-pill[draggable=true]:active{opacity:.5}@media (prefers-reduced-motion:reduce){.label-filter-pill{transition:none}}.vocabulary-table{display:flex;overflow-y:auto;flex-direction:column}.vocabulary-table__loading,.vocabulary-table__empty{display:flex;padding:var(--spacing-8,32px);color:var(--muted-foreground);text-align:center;flex-direction:column;justify-content:center;align-items: center}.vocabulary-table__empty-hint{margin-top:var(--spacing-2,8px);font-size:.875rem}.vocabulary-table__group{margin-bottom:var(--spacing-6,24px)}.vocabulary-table__group-header{display:flex;align-items: center;gap:var(--spacing-2,8px);padding:var(--spacing-2,8px)var(--spacing-3,12px);border-left:4px solid var(--category-color,var(--border));margin-bottom:var(--spacing-2,8px)}.vocabulary-table__group-title{font-size:.875rem;font-weight:600}.vocabulary-table__group-count{color:var(--muted-foreground);font-size:.75rem}.vocabulary-row{display:flex;align-items: center;gap:var(--spacing-3,12px);padding:0 var(--spacing-3,12px);border:none;border-bottom:1px solid color-mix(in oklch,var(--border)50%,transparent);cursor:pointer;text-align:left;animation:vocabulary-row-enter .4s ease both;background-color:#0000;width:100%;height:52px;transition:background-color .15s;font-family:inherit}.vocabulary-row:hover{background-color:var(--accent)}.vocabulary-row:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.vocabulary-row:active{transition:transform 80ms;transform:scale(.98)}@keyframes vocabulary-row-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.vocabulary-row__thumbnail{border-radius:var(--radius,6px);background-color:var(--muted);flex-shrink:0;width:48px;height:48px}.vocabulary-row__code{font-variant-numeric:tabular-nums;min-width:80px;font-size:.875rem;font-weight:600}.vocabulary-row__name{color:var(--muted-foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem}.vocabulary-row__badge{background-color:color-mix(in oklch,var(--category-color)15%,transparent);color:var(--category-color);border-radius:8px;flex-shrink:0;padding:2px 8px;font-size:.75rem;font-weight:500}@media (prefers-reduced-motion:reduce){.vocabulary-row{animation:none}}.sheet-content{position:fixed;z-index:50;display:flex;background:var(--background);flex-direction:column;gap:16px;transition:transform .3s ease-in-out;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.sheet-content[data-state=open]{transition-duration:.5s}.sheet-content[data-state=closed]{transition-duration:.3s}.sheet-content[data-side=right]{border-left:1px solid var(--border);width:75%;height:100%;right:0}.sheet-content[data-side=right][data-state=open]{animation:slide-in-from-right .5s ease-in-out}.sheet-content[data-side=right][data-state=closed]{transform:translate(100%)}.sheet-content[data-side=left]{border-right:1px solid var(--border);width:75%;height:100%;left:0}.sheet-content[data-side=left][data-state=open]{animation:slide-in-from-left .5s ease-in-out}.sheet-content[data-side=left][data-state=closed]{transform:translate(-100%)}.sheet-content[data-side=top]{border-bottom:1px solid var(--border);height:auto;top:0}.sheet-content[data-side=top][data-state=open]{animation:slide-in-from-top .5s ease-in-out}.sheet-content[data-side=top][data-state=closed]{transform:translateY(-100%)}.sheet-content[data-side=bottom]{border-top:1px solid var(--border);height:auto;bottom:0}.sheet-content[data-side=bottom][data-state=open]{animation:slide-in-from-bottom .5s ease-in-out}.sheet-content[data-side=bottom][data-state=closed]{transform:translateY(100%)}@media (min-width:640px){.sheet-content[data-side=right],.sheet-content[data-side=left]{max-width:24rem}}.sheet-content>[data-slot=sheet-close]{position:absolute;opacity:.7;outline:none;cursor:pointer;display:flex;background:0 0;border:none;border-radius:4px;justify-content:center;align-items: center;padding:0;transition:opacity .2s;top:16px;right:16px}.sheet-content>[data-slot=sheet-close]:hover{opacity:1}.sheet-content>[data-slot=sheet-close]:focus-visible{box-shadow:0 0 0 2px var(--ring)}.sheet-content>[data-slot=sheet-close]:disabled{pointer-events:none}.sheet-content>[data-slot=sheet-close][data-state=open]{background:var(--secondary)}.sheet-content>[data-slot=sheet-close] svg{width:1rem;height:1rem}.vocabulary-detail-sheet[data-side=right]{width:min(400px,90vw)}.vocabulary-detail-sheet__body{display:flex;gap:var(--spacing-4,16px);padding:var(--spacing-4,16px)0;overflow-y:auto;flex-direction:column;flex:1}.vocabulary-detail-sheet__preview{border-radius:var(--radius,6px);background-color:var(--muted);box-shadow:inset 0 2px 8px color-mix(in oklch,var(--foreground)10%,transparent);height:240px}.vocabulary-detail-sheet__field{display:flex;gap:var(--spacing-1,4px);flex-direction:column}.vocabulary-detail-sheet__label{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.vocabulary-detail-sheet__code-display{display:flex;align-items: center;gap:var(--spacing-2,8px);border:1px dashed var(--border);border-radius:var(--radius,6px);padding:var(--spacing-2,8px)var(--spacing-3,12px);cursor:pointer;background:0 0;transition:border-color .15s;font-family:inherit}.vocabulary-detail-sheet__code-display:hover{border-color:var(--foreground)}.vocabulary-detail-sheet__code-display:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.vocabulary-detail-sheet__code-value{font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:600}.vocabulary-detail-sheet__code-edit-hint{color:var(--muted-foreground);font-size:.75rem}.vocabulary-detail-sheet__code-edit{display:flex}.vocabulary-detail-sheet__badge{display:inline-flex;background-color:color-mix(in oklch,var(--category-color)15%,transparent);color:var(--category-color);border-radius:8px;width:-moz-fit-content;width:fit-content;padding:2px 8px;font-size:.8125rem;font-weight:500}.vocabulary-detail-sheet__auto-hint{color:var(--muted-foreground);font-size:.75rem;font-style:italic}.vocabulary-detail-sheet__footer{display:flex;gap:var(--spacing-2,8px);padding-top:var(--spacing-4,16px);border-top:1px solid var(--border)}@media (prefers-reduced-motion:reduce){.vocabulary-detail-sheet__code-display{transition:none}}.playbook-editor{display:flex;overflow:hidden;background:var(--background);height:100vh}.playbook-editor-main{display:flex;overflow:hidden;flex-direction:column;flex:1}.playbook-editor-header{border-bottom:1px solid var(--border);background:var(--card)}.playbook-editor-header-content{display:flex;justify-content:space-between;align-items: center;gap:16px}.playbook-editor-header-left{display:flex;flex:1;align-items: center;gap:16px;padding-left:1rem}.playbook-editor-header-divider{background:var(--border);align-self:stretch;width:1px;margin-left:8px}.playbook-editor-header-divider-small{background:var(--border);width:1px;height:24px}.playbook-editor-header-right{display:flex;align-items: center;gap:8px;padding-right:1rem}.playbook-editor-search-input{flex:1;min-width:30rem;max-width:70rem}.playbook-editor-tabs{border-bottom:1px solid var(--border);background:var(--card);padding:12px 24px}.playbook-editor-tabs-content{display:flex;align-items: center;gap:16px}.playbook-editor-tabs-divider{background:var(--border);width:1px;height:24px}.playbook-editor-content{overflow:auto;flex:1}.playbook-editor-sections{display:flex;flex-direction:column;gap:32px;padding-left:1rem;padding-right:1rem}.playbook-editor-section-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:.5rem}.playbook-editor-section-header h2{margin:0;font-size:1.25rem;font-weight:600}.playbook-editor-section-count{color:var(--muted-foreground);font-size:1rem}.playbook-editor-section-meta{display:flex;align-items: center;gap:1rem}.playbook-editor-trash-notice{color:var(--muted-foreground);font-size:.875rem}.playbook-editor-empty{display:flex;flex-direction:column;justify-content:center;align-items: center;padding:64px 16px}.playbook-editor-empty-text{color:var(--muted-foreground);margin-bottom:16px}.playbook-editor-ideas-empty{display:flex;border:2px dashed var(--border);border-radius:8px;flex-direction:column;justify-content:center;align-items: center;padding:48px 16px}.playbook-editor-ideas-empty-text{color:var(--muted-foreground);text-align:center}.playbook-editor-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1rem}@media (min-width:640px){.playbook-editor-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.playbook-editor-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1280px){.playbook-editor-grid{grid-template-columns:repeat(4,1fr)}}.playbook-editor-concepts-loading{display:flex;justify-content:center;align-items: center;height:256px}.playbook-editor-concepts-loading-text{color:var(--muted-foreground)}.playbook-editor-concepts-empty{display:flex;flex-direction:column;justify-content:center;align-items: center;gap:16px;height:256px}.playbook-editor-concepts-empty-text{color:var(--muted-foreground)}.playbook-editor-loading{display:flex;justify-content:center;align-items: center;height:100vh}.playbook-editor-loading-content{text-align:center}.playbook-editor-spinner{animation:spin 1s linear infinite;border:4px solid var(--muted);border-top-color:var(--action-button);border-radius:50%;width:48px;height:48px;margin:0 auto 16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.playbook-editor-loading-text{color:var(--muted-foreground)}.playbook-editor-error{display:flex;justify-content:center;align-items: center;height:100vh}.playbook-editor-error-content{text-align:center}.playbook-editor-error-title{color:var(--destructive);margin-bottom:16px;font-size:1.5rem;font-weight:700}.playbook-editor-error-message{color:var(--muted-foreground);margin-bottom:24px}.playbook-editor-error-button{background-color:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border:1px solid #0000;border-radius:8px;padding:8px 16px;transition:all .2s}.playbook-editor-error-button:hover{background-color:color-mix(in oklch,var(--action-button)90%,transparent)}.playbook-editor-error-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-toolbar-buttons{display:flex;align-items: center;gap:8px}.playbook-editor-filter-buttons{display:flex;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border)transparent;flex:1;align-items: center;gap:8px;min-width:0;margin:-4px;padding:4px}.playbook-editor-filter-buttons::-webkit-scrollbar{height:6px}.playbook-editor-filter-buttons::-webkit-scrollbar-track{background:0 0}.playbook-editor-filter-buttons::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:3px}.playbook-editor-filter-buttons::-webkit-scrollbar-thumb:hover{background-color:var(--muted-foreground)}.playbook-editor-action-button{cursor:pointer;display:flex;outline:none;border-radius:8px;align-items: center;gap:8px;padding:8px 16px;transition:all .2s;font-size:.875rem;font-weight:500}.playbook-editor-action-button--primary{background-color:var(--action-button);color:var(--action-button-foreground);border:none}.playbook-editor-action-button--primary:hover{opacity:.9}.playbook-editor-action-button--primary:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-action-button--secondary{border:1px solid var(--border);color:var(--foreground);background-color:#0000}.playbook-editor-action-button--secondary:hover{background-color:var(--accent)}.playbook-editor-action-button--secondary:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-filter-button{cursor:pointer;outline:none;white-space:nowrap;border-radius:8px;padding:8px 16px;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform 80ms;font-size:.875rem;font-weight:500}.playbook-editor-filter-button--active{background-color:var(--accent);border:1px solid var(--border);color:var(--foreground);animation:filter-activate .2s cubic-bezier(.34,1.56,.64,1)}.playbook-editor-filter-button--active:hover{opacity:.9}.playbook-editor-filter-button--active:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-filter-button--inactive{border:1px solid var(--border);color:var(--foreground);background-color:#0000}.playbook-editor-filter-button--inactive:hover{background-color:var(--accent)}.playbook-editor-filter-button--inactive:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-filter-button:active:not(:disabled){transition-duration:80ms;transform:scale(.92)}@keyframes filter-activate{0%{transform:scale(.95)}70%{transform:scale(1.03)}to{transform:scale(1)}}.playbook-editor-title-row{display:flex;align-items:baseline;gap:12px;margin-bottom:4px}.playbook-editor-team-name{color:var(--muted-foreground);font-size:.875rem}.playbook-editor-empty-button{background-color:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border:none;border-radius:8px;padding:10px 24px;transition:all .2s;font-weight:500}.playbook-editor-empty-button:hover{opacity:.9}.playbook-editor-empty-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-modal-content{display:flex;flex-direction:column;gap:16px}.playbook-editor-modal-label{display:block;margin-bottom:8px;font-weight:500}.playbook-editor-modal-message{color:var(--muted-foreground);margin-bottom:16px}.playbook-editor-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.playbook-editor-modal-button{cursor:pointer;outline:none;border-radius:8px;padding:8px 16px;transition:all .2s;font-weight:500}.playbook-editor-modal-button--secondary{border:1px solid var(--border);color:var(--foreground);background-color:#0000}.playbook-editor-modal-button--secondary:hover{background-color:var(--accent)}.playbook-editor-modal-button--secondary:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-modal-button--primary{background-color:var(--action-button);color:var(--action-button-foreground);border:none}.playbook-editor-modal-button--primary:hover{opacity:.9}.playbook-editor-modal-button--primary:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-modal-button--primary:disabled{opacity:.5;cursor:not-allowed}.playbook-editor-modal-button--destructive{background-color:var(--destructive);color:var(--destructive-foreground);border:none}.playbook-editor-modal-button--destructive:hover{opacity:.9}.playbook-editor-modal-button--destructive:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-modal-button--default{border:1px solid var(--border);color:var(--foreground);background-color:#0000}.playbook-editor-modal-button--default:hover{background-color:var(--accent)}.playbook-editor-modal-button--default:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.playbook-editor-section-title-help{cursor:help}.playbook-editor-tooltip-text{max-width:300px}.playbook-editor-selection-actions{display:flex;align-items: center;gap:8px;margin-left:auto}.icon-sm{width:16px;height:16px}.icon-md{width:20px;height:20px}@media (prefers-reduced-motion:reduce){.playbook-editor-filter-button,.playbook-editor-filter-button--active{animation:none;transition:none}}.document-editor{display:flex;background:var(--background);overflow:hidden;height:100vh}.document-editor__content{display:flex;position:relative;overflow:hidden;flex-direction:column;flex:1;min-height:0}.document-editor__main{display:flex;overflow:hidden;flex-direction:row;flex:1;min-height:0}.document-editor__canvas-area{display:grid;background:var(--muted);overflow:auto;flex:1;place-items: center;min-height:0;padding:24px}.document-editor__loading,.document-editor__error{display:flex;background:var(--background);flex-direction:column;justify-content:center;align-items: center;gap:1rem;height:100vh}.document-editor__loading p,.document-editor__error p{color:var(--muted-foreground);margin:0;font-size:.875rem}.document-editor__loading-spinner{animation:spin 1s linear infinite;color:var(--muted-foreground)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:1024px){.document-editor__canvas-area{padding:16px}}.toolbar-button{background-color:var(--muted);display:flex;cursor:pointer;outline:none;position:relative;border-radius:8px;justify-content:center;align-items: center;width:3.5rem;height:3.5rem;transition:all .2s}.toolbar-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.toolbar-button:disabled{opacity:.5;cursor:not-allowed}.toolbar-button:not([data-active=true]){border:1px solid var(--border);color:var(--icon-muted)}.toolbar-button:not([data-active=true]):hover{background-color:var(--accent);color:var(--foreground)}.toolbar-button[data-active=true]{background-color:var(--action-button);color:var(--action-button-foreground);border:none;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.toolbar-button svg{width:1.5rem;height:1.5rem}.editor-toolbar{background:var(--card);border-right:1px solid var(--border);gap:12px;height:100%}.toolbar-separator{grid-column:1/-1;background-color:var(--border);place-self: center;width:100%;height:1px}.toolbar-dialog-anchor{position:relative}.toolbar-indicator-dot{position:absolute;background-color:var(--dot-color,var(--color-green));border:2px solid var(--card);border-radius:9999px;width:12px;height:12px;top:-4px;right:-4px}.play-library-panel{position:relative;background:var(--card);border-left:1px solid var(--border);overflow:hidden;flex-shrink:0;height:100vh;transition:width .3s ease-out}.play-library-panel__content{display:flex;opacity:1;flex-direction:column;width:360px;height:100%;transition:opacity .2s ease-out}.play-library-panel__header{display:flex;border-bottom:1px solid var(--border);gap:8px;padding:16px}.play-library-panel__search{position:relative;flex:1}.play-library-panel__search-icon{position:absolute;color:var(--muted-foreground);pointer-events:none;top:50%;left:12px;transform:translateY(-50%)}.play-library-panel__search-input{padding-left:36px}.play-library-panel__filter-button[data-active=true]{background:var(--accent);color:var(--accent-foreground)}.play-library-panel__scroll{overflow-y:auto;overflow-x:hidden;flex:1}.play-library-panel__loading,.play-library-panel__empty{display:flex;color:var(--muted-foreground);justify-content:center;align-items: center;padding:32px 16px;font-size:.875rem}.play-library-panel__loading-more{text-align:center;color:var(--muted-foreground);padding:16px;font-size:.875rem}.play-library-card{background:var(--card);border:1px solid var(--border);cursor:grab;user-select:none;animation:play-card-reveal .2s ease-out both;animation-delay:var(--reveal-delay,0s);border-radius:6px;margin:0 8px 8px;padding:12px 16px;transition:transform .15s ease-out,box-shadow .15s ease-out,border-color .15s ease-out}.play-library-card:hover{box-shadow:var(--shadow-elevation-medium);border-color:var(--primary);transform:translateY(-2px)}.play-library-card:active{cursor:grabbing;transition-duration:80ms;transform:scale(.95)}.play-library-card__content{display:flex;flex-direction:column;gap:8px}.play-library-card__header{display:flex;justify-content:space-between;align-items: center;gap:8px}.play-library-card__name{color:var(--foreground);flex:1;font-size:.875rem;font-weight:500}.play-library-card__type-indicator{border-radius:50%;flex-shrink:0;width:8px;height:8px}.play-library-card__type-indicator[data-type=run]{background:var(--chart-1)}.play-library-card__type-indicator[data-type=pass]{background:var(--chart-2)}.play-library-card__meta{display:flex;flex-wrap:wrap;gap:6px}.play-library-card__tag{background:var(--muted);color:var(--muted-foreground);border-radius:4px;padding:2px 8px;font-size:.75rem}@keyframes play-card-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.document-section-list{position:relative;display:flex;overflow-y:auto;background:var(--background);flex-direction:column;gap:12px;width:100%;height:100%;padding:16px}.document-section-list__grid-overlay{position:absolute;background-image:linear-gradient(var(--border)1px,transparent 1px),linear-gradient(90deg,var(--border)1px,transparent 1px);opacity:.3;pointer-events:none;z-index:0;background-size:24px 24px;inset:0}.document-section-list__empty{display:flex;color:var(--muted-foreground);text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:8px;padding:48px 24px;font-size:.875rem}.document-section-list__item{position:relative;border-radius:8px;transition:box-shadow .15s ease-out}.document-section-list__item--selected{box-shadow:0 0 0 2px var(--ring)}.callsheet-section{background:color-mix(in oklch,var(--section-color,var(--card))10%,var(--card));border:1px solid var(--border);overflow:hidden;cursor:default;border-radius:8px;transition:box-shadow .2s ease-out,border-color .2s ease-out}.callsheet-section:hover{box-shadow:var(--shadow-elevation-medium)}.callsheet-section--selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--ring)}.callsheet-section__header{display:flex;background:var(--section-color,var(--muted));border-bottom:1px solid var(--border);align-items: center;gap:8px;padding:12px 16px}.callsheet-section__color-indicator{background:var(--section-color,var(--primary));border-radius:3px;flex-shrink:0;width:12px;height:12px}.callsheet-section__name{color:var(--foreground);font-variant-numeric:tabular-nums;flex:1;font-size:.875rem;font-weight:600}.callsheet-section__menu-button{opacity:0;transition:opacity .15s ease-out .1s}.callsheet-section:hover .callsheet-section__menu-button{opacity:1;transition-delay:0s}.callsheet-section__grid{display:grid;grid-template-columns:repeat(var(--grid-columns,3),1fr);grid-template-rows:repeat(var(--grid-rows,3),auto);background:var(--border);gap:1px;padding:1px}.callsheet-section__cell{background:var(--card);display:flex;justify-content:center;align-items: center;min-height:48px;padding:8px;transition:background-color .15s ease-out}.callsheet-section__cell:hover{background:var(--accent)}.callsheet-section__cell--hover{background:color-mix(in oklch,var(--primary)20%,var(--card));animation:drop-zone-pulse .3s ease-in-out infinite alternate}.callsheet-section__cell[data-has-play=true]{background:var(--card)}.callsheet-section__cell[data-has-play=true]:hover{background:color-mix(in oklch,var(--accent)50%,var(--card))}.callsheet-section__play{display:flex;align-items: center;gap:8px;width:100%}.callsheet-section__play-name{color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem}.callsheet-section__play--broken{opacity:.5;border:1px dashed var(--destructive);border-radius:4px;padding:4px}.callsheet-section__play--broken .callsheet-section__play-name{color:var(--muted-foreground);font-style:italic}.callsheet-section__wristband-indicator{background:var(--primary);animation:flag-pop .2s cubic-bezier(.34,1.56,.64,1);border-radius:50%;flex-shrink:0;width:8px;height:8px}.callsheet-section__add-play-button{display:flex;border:1px dashed var(--border);color:var(--muted-foreground);cursor:pointer;opacity:0;background:0 0;border-radius:4px;justify-content:center;align-items: center;width:100%;height:100%;min-height:32px;transition:opacity .15s ease-out,background-color .15s ease-out,border-color .15s ease-out,transform 80ms ease-out}.callsheet-section__cell:hover .callsheet-section__add-play-button{opacity:1}.callsheet-section__add-play-button:hover{background:var(--accent);border-color:var(--primary);color:var(--primary)}.callsheet-section__add-play-button:active{transform:scale(.95)}@keyframes drop-zone-pulse{0%{border-color:var(--primary)}to{border-color:color-mix(in oklch,var(--primary)50%,transparent)}}@keyframes flag-pop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.play-library-card,.callsheet-section,.callsheet-section__cell,.callsheet-section__add-play-button,.document-section-list__item{animation:none!important;transition-duration:.01ms!important}.play-library-card:hover,.play-library-card:active{transform:none}.callsheet-section__wristband-indicator{animation:none}}.document-canvas{position:relative;background:var(--card);overflow:hidden;transform-origin:center center;border-radius:4px;transition:transform .15s ease-out;box-shadow:0 4px 24px #00000026}.document-canvas--letter{width:816px;height:1056px}.document-canvas--legal{width:816px;height:1344px}.document-canvas--half-letter{width:528px;height:816px}.document-canvas--wristband{width:240px;height:336px}.document-toolbar{display:flex;background-color:var(--card);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;justify-content:center;width:72px;min-width:72px;padding:12px 8px}.document-toolbar__tools{display:flex;flex-direction:column;align-items: center;gap:8px}.document-toolbar__button{display:flex;border-radius:8px;justify-content:center;align-items: center;width:56px;height:56px;transition:all .15s}.document-toolbar__separator{background-color:var(--border);width:100%;height:1px;margin:4px 0}.toolbar{display:grid;place-content: center start;width:auto;min-width:80px;padding:12px}.toolbar-status-indicator{display:flex;border-radius:8px;justify-content:center;align-items: center;width:3.5rem;height:3.5rem;transition:background-color .2s,color .2s}.toolbar-status-indicator[data-status=saving]{background-color:var(--muted);border:1px solid var(--border);color:var(--muted-foreground)}.toolbar-status-indicator[data-status=saved],.toolbar-status-indicator[data-status=idle]{background-color:var(--color-green);color:#fff}.toolbar-status-indicator[data-status=error]{background-color:var(--destructive);color:#fff}@keyframes toolbar-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.toolbar-icon{width:1.5rem;height:1.5rem}.toolbar-button-relative{position:relative}.document-header{border-bottom:1px solid var(--border);padding:.75rem 1rem}.document-header__content{display:flex;align-items: center;gap:1rem}.document-header__title-area{display:flex;flex:1;align-items: center;gap:.75rem}.document-header__title{color:var(--foreground);cursor:pointer;border-radius:.25rem;margin:0;padding:.25rem .5rem;transition:background-color .15s ease-out;font-size:1.5rem;font-weight:600}.document-header__title:hover{background:var(--accent)}.document-header__title-input{color:var(--foreground);background:var(--background);border:1px solid var(--primary);outline:none;border-radius:.25rem;min-width:300px;padding:.25rem .5rem;font-size:1.5rem;font-weight:600}.document-header__size{color:var(--muted-foreground);background:var(--muted);border-radius:.25rem;padding:.125rem .5rem;font-size:.875rem}.document-header__actions{display:flex;align-items: center;gap:.75rem}.document-header__panel-toggle{display:flex;align-items: center;gap:.5rem}.editor-page{display:flex;background:var(--background);overflow:hidden;height:100vh}.editor-page__content{display:flex;position:relative;overflow:hidden;flex-direction:column;flex:1}.editor-page__main{display:flex;overflow:hidden;flex-direction:row;flex:1}.color-picker-dialog{border:1px solid var(--border);background-color:var(--popover);z-index:50;border-radius:1rem;width:17.5rem;padding:1rem;box-shadow:0 1.5rem 3rem -.75rem #00000040}.color-picker-dialog[data-positioned=true]{position:absolute;top:18rem;left:6rem}.color-picker-dialog-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:1rem}.color-picker-dialog-title{color:var(--foreground)}.color-picker-dialog-section{margin-bottom:1rem}.color-picker-dialog-section:last-child{margin-bottom:0}.color-picker-dialog-label{display:block;color:var(--muted-foreground);margin-bottom:.5rem;font-size:.75rem}.color-picker-dialog-custom{display:flex;align-items: center;gap:.5rem}.color-picker-dialog-color-input{border:1px solid var(--border);cursor:pointer;outline:none;border-radius:.5rem;width:3rem;height:3rem;transition:all .2s}.color-picker-dialog-color-input:hover{border-color:var(--ring)}.color-picker-dialog-color-input:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.color-picker-dialog-color-input:disabled{opacity:.5;pointer-events:none}.color-picker-dialog-text-input{border:1px solid var(--input);background-color:var(--input-background);color:var(--foreground);outline:none;border-radius:.5rem;flex:1;padding:.5rem .75rem;transition:all .2s;font-size:.875rem}.color-picker-dialog-text-input::placeholder{color:var(--muted-foreground)}.color-picker-dialog-text-input:hover{border-color:var(--ring)}.color-picker-dialog-text-input:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.color-picker-dialog-text-input:disabled{opacity:.5;pointer-events:none}.color-picker-dialog-preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.color-picker-dialog-preset-button{aspect-ratio:1;cursor:pointer;border:1px solid var(--border);outline:none;border-radius:.5rem;width:100%;max-height:3rem;transition:all .2s}.color-picker-dialog-preset-button:hover{transform:scale(1.1)}.color-picker-dialog-preset-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.color-picker-dialog-preset-button:active{transform:scale(.95)}.color-picker-dialog-preset-button:disabled{opacity:.5;pointer-events:none}.color-picker-dialog-preset-button[data-selected=true]{box-shadow:0 0 0 .125rem var(--action-button),0 0 0 .25rem var(--background);transform:scale(1.1)}.draw-options-dialog{background:var(--popover);border:1px solid var(--border);z-index:50;border-radius:1rem;width:16rem;padding:1rem;box-shadow:0 1.5rem 3rem -.75rem #00000040}.draw-options-dialog[data-positioned=true]{position:absolute;top:8rem;left:6rem}.drawing-properties-dialog-backdrop{position:fixed;z-index:60;inset:0}.drawing-properties-dialog{background:var(--popover);border:1px solid var(--border);z-index:70;border-radius:12px;width:440px;padding:12px;box-shadow:0 25px 50px -12px #00000040}.drawing-properties-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.drawing-properties-dialog-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:12px}.drawing-properties-dialog-title{color:var(--foreground)}.drawing-properties-dialog-section{margin-bottom:0}.drawing-properties-dialog-label{display:block;color:var(--muted-foreground);margin-bottom:6px;font-size:.7rem}.drawing-properties-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.drawing-properties-color-button{cursor:pointer;outline:none;border:1px solid var(--border);border-radius:6px;height:32px;transition:all .2s}.drawing-properties-color-button:hover{transform:scale(1.05)}.drawing-properties-color-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.drawing-properties-color-button[data-selected=true]{box-shadow:0 0 0 2px var(--action-button),0 0 0 4px var(--background)}.drawing-properties-button-group{display:flex;gap:6px}.drawing-properties-button-group-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.drawing-properties-button-group-2col{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.drawing-properties-option-button{flex:1;min-height:40px;padding:6px 10px}.drawing-properties-path-svg{width:100%;height:16px}.drawing-properties-line-solid{background:currentColor;width:48px;height:2px;margin:0 auto}.drawing-properties-line-dashed{display:flex;gap:4px;width:48px;height:2px;margin:0 auto}.drawing-properties-line-dashed-segment{background:currentColor;flex:1}.drawing-properties-line-end-text{min-height:40px;padding:6px 10px;font-size:.7rem}.drawing-properties-line-end-icon{min-height:40px;padding:6px 10px}.drawing-properties-brush-button{min-height:44px;padding:8px}.drawing-properties-brush-content{display:flex;flex-direction:column;align-items: center;gap:3px}.drawing-properties-brush-dot{background:currentColor;border-radius:9999px}.drawing-properties-brush-label{font-size:.7rem}.drawing-properties-presnap-button{cursor:pointer;outline:none;background:var(--action-button);color:var(--action-button-foreground);border:none;border-radius:6px;width:100%;min-height:40px;padding:8px 10px;transition:all .2s;font-size:.8rem;font-weight:500}.drawing-properties-presnap-button:hover:not(:disabled){opacity:.9;transform:scale(1.02)}.drawing-properties-presnap-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.drawing-properties-presnap-button:disabled{opacity:.5;cursor:not-allowed}.erase-dialog{background:var(--popover);border:1px solid var(--border);z-index:50;border-radius:1rem;width:16rem;padding:1rem;box-shadow:0 1.5rem 3rem -.75rem #00000040}.erase-dialog[data-positioned=true]{position:absolute;top:8rem;left:6rem}.erase-dialog-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:1rem}.erase-dialog-title{color:var(--foreground)}.erase-dialog-section{margin-bottom:0}.erase-dialog-label{display:block;color:var(--muted-foreground);margin-bottom:.5rem;font-size:.75rem}.erase-dialog-size-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.erase-dialog-size-button{cursor:pointer;outline:none;background:var(--muted);color:var(--foreground);border-radius:.5rem;padding:1rem .75rem;transition:all .2s}.erase-dialog-size-button:hover{background:var(--accent)}.erase-dialog-size-button:focus-visible{box-shadow:0 0 0 .1875rem color-mix(in oklch,var(--ring)50%,transparent)}.erase-dialog-size-button[data-active=true]{background:var(--action-button);color:var(--action-button-foreground)}.erase-dialog-size-content{display:flex;flex-direction:column;align-items: center;gap:.5rem}.erase-dialog-size-dot{background:currentColor;border-radius:9999px}.erase-dialog-size-label{font-size:.75rem}.drawing-dialog{position:absolute;background:var(--popover);border:1px solid var(--border);z-index:50;overflow-y:auto;border-radius:16px;width:320px;max-height:calc(100vh - 64px);padding:16px;top:24px;left:96px;box-shadow:0 25px 50px -12px #00000040}.drawing-dialog-header{display:flex;position:sticky;border-bottom:1px solid var(--border);background:var(--popover);justify-content:space-between;align-items: center;margin-bottom:16px;padding-bottom:8px;top:0}.drawing-dialog-title{color:var(--foreground)}.drawing-dialog-list{display:flex;flex-direction:column;gap:8px}.drawing-dialog-item{border:1px solid var(--border);background:var(--muted);text-align:left;cursor:pointer;outline:none;border-radius:12px;width:100%;padding:12px;transition:all .2s}.drawing-dialog-item:hover{background:var(--accent);border-color:var(--action-button)}.drawing-dialog-item:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.drawing-dialog-item-content{display:flex;align-items: start;gap:12px}.drawing-dialog-item-badge{background:var(--action-button);color:var(--action-button-foreground);display:flex;border-radius:8px;flex-shrink:0;justify-content:center;align-items: center;width:32px;height:32px;transition:transform .2s;font-size:.875rem;font-weight:600}.drawing-dialog-item:hover .drawing-dialog-item-badge{transform:scale(1.1)}.drawing-dialog-item-details{flex:1;min-width:0}.drawing-dialog-item-name{color:var(--foreground);margin-bottom:4px}.drawing-dialog-item-description{color:var(--muted-foreground);font-size:.75rem}.drawing-dialog-loading{display:flex;justify-content:center;align-items: center;padding:32px}.drawing-dialog-loading-spinner{color:var(--muted-foreground)}.drawing-dialog-error{text-align:center;color:var(--destructive);padding:32px}.hash-dialog{border:1px solid var(--border);background:var(--popover);z-index:50;border-radius:1rem;width:12rem;padding:1rem;box-shadow:0 1.5rem 3rem -.75rem #00000040}.hash-dialog[data-positioned=true]{position:fixed;top:50%;left:6rem;transform:translateY(-50%)}.hash-dialog-content{display:flex;flex-direction:column;gap:.5rem}.hash-dialog-title{color:var(--muted-foreground);margin-bottom:.75rem;padding:0 .5rem}.hash-dialog-button{text-align:left;cursor:pointer;background:var(--secondary);color:var(--secondary-foreground);border-radius:.75rem;width:100%;padding:.75rem 1rem;transition:all .2s}.hash-dialog-button:hover{background:var(--accent)}.hash-dialog-button[data-selected=true]{background:var(--color-blue);color:#fff;box-shadow:var(--shadow-elevation-low)}.color-swatch-indicator{position:absolute;border:1px solid;border-radius:99px;width:16px;height:16px;bottom:-4px;right:-4px;box-shadow:0 1px 2px #0000000d}.color-swatch-indicator[data-theme=dark]{border-color:#1f2937}.color-swatch-indicator[data-theme=light]{border-color:var(--muted-foreground)}.node-delete-popup{position:absolute;z-index:50;transform:translate(-50%)}.canvas-popup-button{display:flex;background-color:var(--card);box-shadow:var(--shadow-elevation-low);border:1px solid var(--border);cursor:pointer;outline:none;border-radius:8px;justify-content:center;align-items: center;padding:8px;transition:all .2s;line-height:0}.canvas-popup-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.canvas-popup-button-icon{display:block;flex-shrink:0}.canvas-popup-button[data-variant=add]:hover{background-color:color-mix(in oklch,var(--color-green)10%,var(--card));border-color:color-mix(in oklch,var(--color-green)50%,white)}.canvas-popup-button[data-variant=add] .canvas-popup-button-icon{color:var(--color-green)}.canvas-popup-button[data-variant=delete]:hover{background-color:color-mix(in oklch,var(--destructive)10%,var(--card));border-color:color-mix(in oklch,var(--destructive)50%,white)}.canvas-popup-button[data-variant=delete] .canvas-popup-button-icon{color:var(--destructive)}.node-add-popup{position:absolute;z-index:50;transform:translate(-50%)}.alignment-guideline-line{stroke:var(--action-button);stroke-width:1.5;stroke-dasharray:4 4;pointer-events:none}.alignment-label-background{fill:var(--card);stroke:var(--border);stroke-width:1}.alignment-label-text{fill:var(--action-button);pointer-events:none;font-family:SF Compact Rounded,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:11px;font-weight:500}.svg-canvas-container{position:absolute;overflow:hidden;border-radius:inherit;width:100%;height:100%;top:0;left:0}.svg-canvas{position:absolute;pointer-events:auto;width:100%;height:100%;top:0;left:0}.svg-canvas-overlay-wrapper,.svg-canvas-overlay-svg{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0}.svg-canvas-snap-indicator{pointer-events:none;animation:pulse 2s cubic-bezier(.4,0,.6,1)infinite;filter:drop-shadow(0 0 6px #3b82f699)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.canvas-container{display:flex;overflow:hidden;position:relative;border-radius:.8rem;flex:1;justify-content:center;align-items:stretch}.canvas-container-fill{padding:0}.canvas-whiteboard{position:relative;border:2px solid var(--border);box-shadow:0 0 0 2px var(--border);border-radius:1rem;width:100%;height:100%;transition:height .8s ease-in-out}.field-viewport{position:absolute;overflow:hidden;border-radius:inherit;inset:0}.canvas-transform-container{transform-origin:0 0;width:100%;height:100%}.canvas-transform-hidden{opacity:0;pointer-events:none;transition:opacity .2s ease-out}.canvas-svg-layer{position:absolute;pointer-events:auto;overflow:hidden;border-radius:inherit;width:100%;height:100%;top:0;left:0}.canvas-players-layer{position:absolute;overflow:hidden;pointer-events:none;border-radius:inherit;width:100%;height:100%;top:0;left:0}.canvas-cursor-overlay{position:absolute;pointer-events:none;overflow:hidden;border-radius:inherit;width:100%;height:100%;top:0;left:0}.canvas-whiteboard.custom-cursor-active,.canvas-whiteboard.custom-cursor-active *{cursor:none!important}.canvas-cursor-pencil,.canvas-cursor-fill,.canvas-cursor-eraser,.canvas-cursor-add-player{position:absolute;pointer-events:none}.canvas-cursor-pencil{transform:translate(-20%,-90%)}.canvas-cursor-fill{transform:translate(-20%,-90%)scaleX(-1)}.canvas-cursor-eraser,.canvas-cursor-add-player{transform:translate(-50%,-50%)}.canvas-eraser-circle{background:#ffffff4d;border:2px solid #00000080;border-radius:50%}.canvas-cursor-erase-delete{position:absolute;pointer-events:none;color:var(--destructive);transform:translate(-50%,-50%)}.canvas-add-player-circle{opacity:.6;border:2px solid #fffc;border-radius:50%;box-shadow:0 2px 8px #0000004d}.player-label-dialog-backdrop{position:fixed;z-index:40;inset:0}.player-label-dialog{position:fixed;z-index:50;border:1px solid var(--border);background:var(--popover);border-radius:16px;padding:12px;box-shadow:0 25px 50px -12px #00000040}.player-label-dialog-arrow{position:absolute;border-left:8px solid #0000;border-right:8px solid #0000;border-top:8px solid hsl(var(--card));width:0;height:0;bottom:-8px;left:50%;transform:translate(-50%)}.player-label-dialog-arrow-border{position:absolute;border-left:9px solid #0000;border-right:9px solid #0000;border-top:9px solid hsl(var(--border));z-index:-1;width:0;height:0;bottom:-9px;left:50%;transform:translate(-50%)}.player-label-dialog-row{display:flex;gap:8px}.player-label-dialog-row:not(:last-child){margin-bottom:8px}.player-label-dialog-label-button{cursor:pointer;outline:none;border-radius:8px;width:40px;height:40px;transition:all .2s}.player-label-dialog-label-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.player-label-dialog-label-button-active{background:var(--action-button);color:var(--action-button-foreground);transform:scale(1.1);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.player-label-dialog-label-button-inactive{background:var(--input-background);color:var(--secondary-foreground)}.player-label-dialog-label-button-inactive:hover{background:var(--accent)}.player-label-dialog-placeholder{color:var(--muted-foreground);font-size:.75rem}.player-label-dialog-custom{display:flex;border-top:1px solid var(--border);align-items: center;gap:8px;margin-top:8px;padding-top:8px}.player-label-dialog-input{outline:none;background:var(--input-background);color:var(--foreground);border:1px solid var(--input);border-radius:8px;height:40px;padding:0 12px;transition:all .2s}.player-label-dialog-input::placeholder{color:var(--muted-foreground)}.player-label-dialog-input:focus{box-shadow:0 0 0 2px color-mix(in oklch,var(--ring)20%,transparent)}.player-label-dialog-action-button{cursor:pointer;display:flex;border-radius:8px;flex-shrink:0;justify-content:center;align-items: center;width:40px;height:40px;transition:all .2s}.player-label-dialog-unlink-button{background:var(--secondary);color:var(--secondary-foreground)}.player-label-dialog-unlink-button:hover{background:var(--accent)}.player-label-dialog-delete-button{background:color-mix(in oklch,var(--destructive)10%,transparent);color:var(--destructive);outline:none}.player-label-dialog-delete-button:hover{background:color-mix(in oklch,var(--destructive)20%,transparent)}.player-label-dialog-delete-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.player-label-dialog-icon{width:1.25rem;height:1.25rem}.play-call-chip{display:inline-flex;align-items: center;gap:var(--spacing-1,4px);cursor:default;user-select:none;background-color:color-mix(in oklch,var(--category-color)15%,transparent);color:var(--category-color);border:1px solid color-mix(in oklch,var(--category-color)30%,transparent);border-radius:6px;padding:2px 8px;font-size:.8125rem;font-weight:500;line-height:1.4}.play-call-chip[data-category=plain]{color:var(--muted-foreground)}.play-call-chip[data-unresolved]{border-style:dashed}button.play-call-chip{cursor:pointer;transition:filter .15s;font-family:inherit}button.play-call-chip:hover{filter:brightness(.95)}button.play-call-chip:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.play-call-chip__text{font-variant-numeric:tabular-nums}.play-call-chip__sub-label{opacity:.6;text-transform:uppercase;letter-spacing:.05em;margin-left:2px;font-size:9px}.play-call-chip__remove{display:inline-flex;color:inherit;opacity:0;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items: center;width:14px;height:14px;margin-left:2px;padding:0;transition:opacity .15s,background-color .15s;font-size:.75rem}.play-call-chip:hover .play-call-chip__remove{opacity:.5}.play-call-chip__remove:hover{opacity:1;background-color:color-mix(in oklch,currentColor 15%,transparent)}.play-call-chip__edit-input{color:inherit;font:inherit;font-size:inherit;font-weight:inherit;outline:none;background:0 0;border:none;width:auto;min-width:1ch;margin:0;padding:0}@media (prefers-reduced-motion:reduce){button.play-call-chip,.play-call-chip__remove{transition:none}}.play-call-chip-sequence{display:flex;gap:var(--spacing-1,4px);flex-wrap:wrap;align-items: center}.dialog-centered{position:fixed;z-index:50;top:50%;left:50%;transform:translate(-50%,-50%)}.close-button-base{opacity:.7;outline:none;cursor:pointer;display:flex;background:0 0;border:none;justify-content:center;align-items: center;padding:0;transition:opacity .2s}.close-button-base:hover{opacity:1}.close-button-base:focus-visible{box-shadow:0 0 0 2px var(--ring)}.close-button-base:disabled{pointer-events:none}.icon-action-button{display:flex;aspect-ratio:1;outline:none;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items: center;width:20px;padding:0;transition:transform .2s}.icon-action-button:hover{background:var(--sidebar-accent);color:var(--sidebar-accent-foreground)}.icon-action-button:focus-visible{box-shadow:0 0 0 2px var(--sidebar-ring)}.icon-action-button>svg{flex-shrink:0;width:1rem;height:1rem}.interactive-button-base{cursor:pointer;outline:none;background:var(--card);color:var(--foreground);border:1px solid var(--border);display:flex;border-radius:6px;justify-content:center;align-items: center;transition:all .2s}.interactive-button-base:hover{background:var(--accent)}.interactive-button-base:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.interactive-button-base[data-active=true]{background:var(--action-button);color:var(--action-button-foreground);border-color:var(--action-button)}.glassmorphic-metadata{position:absolute;display:flex;background-color:color-mix(in oklch,var(--card)90%,transparent);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:8px;gap:8px;padding:4px 12px;bottom:8px;left:50%;transform:translate(-50%)}.dropdown-positioned{position:absolute;background:var(--popover);border:1px solid var(--border);z-index:50;border-radius:8px;margin-top:4px;top:100%;left:0;right:0;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.search-dropdown{overflow-y:auto;scroll-padding-block:8px;overscroll-behavior:contain;max-height:384px}.search-dropdown--loading,.search-dropdown--empty{text-align:center;padding:16px}.search-dropdown__empty-text{color:var(--muted-foreground)}.search-dropdown__section{padding:8px 0}.search-dropdown__section+.search-dropdown__section{border-top:1px solid var(--border)}.search-dropdown__section-title{color:var(--muted-foreground);text-transform:uppercase;padding:4px 12px;font-size:.75rem;font-weight:600}.search-dropdown__item{text-align:left;cursor:pointer;outline:none;background:0 0;border:none;width:100%;padding:8px 12px;transition:background .2s}.search-dropdown__item:hover{background:var(--accent)}.search-dropdown__item:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.search-dropdown__item--highlighted{background:var(--accent)}.search-dropdown__item-content{display:flex;align-items: center;gap:8px}.search-dropdown__item-code{white-space:nowrap;font-size:.875rem;font-weight:600}.search-dropdown__item-name{color:var(--muted-foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.875rem}.search-dropdown__item-playbook{color:var(--muted-foreground);white-space:nowrap;flex-shrink:0;font-size:.8125rem}.search-dropdown__item-badge{border-radius:4px;flex-shrink:0;margin-left:auto;padding:2px 8px;font-size:.75rem;font-weight:500}.search-dropdown__badge--formation{background:color-mix(in oklch,var(--color-chip-formation)15%,transparent);color:var(--color-chip-formation)}.search-dropdown__badge--modifier{background:color-mix(in oklch,var(--color-chip-modifier)15%,transparent);color:var(--color-chip-modifier)}.search-dropdown__badge--concept{background:color-mix(in oklch,var(--color-chip-concept)15%,transparent);color:var(--color-chip-concept)}.unified-search-bar{position:relative;width:100%}.unified-search-bar__input-wrapper{display:flex;background-color:var(--card);border:1px solid var(--border);box-sizing:border-box;overflow:visible;border-radius:.5rem;align-items: center;gap:.5rem;min-height:2.5rem;padding:.25rem 1rem;transition:border-color .2s,border-radius .2s,box-shadow .2s}.unified-search-bar__input-wrapper:focus-within{box-shadow:0 0 0 2px color-mix(in oklch,var(--ring)20%,transparent)}.unified-search-bar__icon{color:var(--muted-foreground);flex-shrink:0;width:1rem;height:1rem}.unified-search-bar__chips{display:flex;overflow:visible;flex-wrap:wrap;flex:1;align-items: center;gap:.25rem}.unified-search-bar__input{outline:none;color:var(--foreground);background:0 0;border:none;flex:1;min-width:8rem;padding:.25rem 0;font-size:.875rem}.unified-search-bar__input::placeholder{color:var(--muted-foreground)}.unified-search-bar__compose-bar{display:flex;color:var(--muted-foreground);border-top:1px solid var(--border);background:var(--card);border-radius:0 0 .5rem .5rem;align-items: center;gap:.5rem;padding:.25rem 1rem;font-size:.75rem}.unified-search-bar__compose-label{text-transform:uppercase;letter-spacing:.05em;font-weight:600}.unified-search-bar__compose-name{color:var(--foreground);flex:1;font-weight:500}.unified-search-bar__create-button{display:flex;color:var(--primary-foreground);background:var(--primary);border-radius:var(--radius-sm);cursor:pointer;border:none;align-items: center;gap:.25rem;padding:.25rem .75rem;transition:opacity .2s;font-size:.75rem;font-weight:600}.unified-search-bar__create-button:hover{opacity:.9}.unified-search-bar[data-composing=true] .unified-search-bar__input-wrapper{border-bottom:none;border-radius:.5rem .5rem 0 0}.unified-search-bar[data-composing=true] .unified-search-bar__compose-bar{border:1px solid var(--border);border-radius:0 0 .5rem .5rem}.unified-search-bar[data-composing=true] .unified-search-bar__input-wrapper:focus-within{box-shadow:none}.unified-search-bar[data-composing=true]:focus-within{box-shadow:0 0 0 2px color-mix(in oklch,var(--ring)20%,transparent);border-radius:.5rem}.play-header{padding:.75rem 1rem .25rem}.play-header__content{display:flex;align-items: center;gap:0}.play-header__search{flex:1}.play-header__button-area{display:flex;flex-shrink:0;width:calc(360px - 1rem);padding-left:1rem}.play-header__button{width:100%;height:2.5rem}.editor-cards-panel{position:relative;overflow:hidden;z-index:0;height:100%;transition:width .8s ease-in-out}.editor-cards-panel__content{display:flex;flex-direction:column;width:100%;min-width:360px;height:100%;padding:1rem}.editor-cards-panel__scroll{display:flex;overflow-y:auto;overflow-x:visible;scrollbar-gutter:stable;scroll-behavior:smooth;flex-direction:column;flex:1;gap:1rem;margin:-.75rem -.5rem -.5rem;padding:.75rem .5rem .5rem}.editor-cards-panel__card-wrapper{flex-shrink:0;width:100%}.editor-cards-panel__add-button{aspect-ratio:16/9;border:2px dashed var(--border);background:var(--muted);color:var(--muted-foreground);display:flex;cursor:pointer;outline:none;border-radius:.75rem;flex-direction:column;flex-shrink:0;justify-content:center;align-items: center;gap:.5rem;width:100%;transition:all .2s}.editor-cards-panel__add-button:hover:not(:disabled){border-color:var(--action-button);background:var(--accent);color:var(--action-button)}.editor-cards-panel__add-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.editor-cards-panel__add-button:disabled{cursor:wait;opacity:.5}.editor-cards-panel__add-icon{display:flex;background:var(--muted);border-radius:.75rem;justify-content:center;align-items: center;width:3rem;height:3rem}.editor-cards-panel__add-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-bottom-color:var(--muted-foreground);border-radius:50%;width:1.5rem;height:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.editor-cards-panel__add-text{font-size:.875rem;font-weight:500}.concept-toolbar{display:flex;flex-direction:column;justify-content:center;align-items: center;width:80px}.concept-toolbar-dialog{position:absolute;z-index:50;margin-left:8px;top:0;left:100%}.help-tooltip{position:relative;display:inline-block}.help-tooltip-button{position:relative;border-radius:4px;padding:4px;transition:background .2s}.help-tooltip-button:before{content:"";position:absolute;inset:-10px}.help-tooltip-button:hover{background:var(--accent)}.help-tooltip-icon{color:var(--muted-foreground);width:16px;height:16px}.help-tooltip-popover{position:absolute;background:var(--card);border:1px solid var(--border);z-index:50;border-radius:8px;width:320px;margin-bottom:8px;padding:0 1rem 1rem;bottom:100%;left:0;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.help-tooltip-title{font-size:1rem;font-weight:600}.help-tooltip-content{display:flex;flex-direction:column;gap:12px;font-size:.75rem}.help-tooltip-item-title{color:var(--foreground);margin-bottom:4px;font-weight:600}.help-tooltip-item-description{color:var(--muted-foreground);margin-bottom:8px}.help-tooltip-example{background:var(--secondary);border-radius:4px;padding:8px}.help-tooltip-example-text{color:var(--muted-foreground);font-family:monospace;font-size:.75rem}.help-tooltip-note{border-top:1px solid var(--border);padding-top:8px}.help-tooltip-note-text{color:var(--muted-foreground);font-style:italic}.modifier-selector{display:flex;flex-direction:column;gap:1rem}.modifier-selector__loading{color:var(--muted-foreground);padding:1rem;font-size:.875rem}.modifier-selector__conflict-banner{background:color-mix(in oklch,var(--destructive)10%,transparent);color:var(--destructive);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.875rem}.modifier-selector__conflict-banner strong{display:block;margin-bottom:.5rem}.modifier-selector__conflict-banner ul{margin:0;padding-left:1.25rem}.modifier-selector__group-title{text-transform:capitalize;margin-top:0;margin-bottom:.5rem;font-size:.875rem;font-weight:600}.modifier-selector__chips{display:flex;flex-wrap:wrap;gap:.5rem}.modifier-selector__chip[data-conflicting=true]{opacity:.5}.modifier-selector__chip:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.modifier-selector__chip{transition:none}}.concept-dialog-overlay{position:fixed;display:flex;z-index:50;background-color:#00000080;justify-content:center;align-items: center;inset:0}.concept-dialog{background-color:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-dialog);display:flex;position:relative;border-radius:1rem;flex-direction:column;width:85vw;max-width:72rem;height:85vh}.concept-dialog-close-button{position:absolute;z-index:10;top:1rem;right:1rem}.concept-dialog-close-icon{width:1.25rem;height:1.25rem}.concept-dialog-header{padding:1rem 3.5rem 1rem 1.5rem}.concept-dialog-label{display:block;margin-bottom:.25rem;font-size:1.5rem;font-weight:500}.concept-dialog-error{color:var(--destructive);margin-top:.25rem;font-size:.875rem}.concept-dialog-scope{display:flex;gap:.5rem}.concept-dialog-scope-button{cursor:pointer;outline:none;border:none;border-radius:.375rem;padding:.5rem 1rem;transition:all .2s;font-size:.875rem;font-weight:500}.concept-dialog-scope-button-inactive{border:1px solid var(--border);color:var(--foreground);background-color:#0000}.concept-dialog-scope-button-inactive:hover{background-color:var(--accent)}.concept-dialog-scope-button-inactive:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.concept-dialog-scope-button-active{background-color:var(--color-blue);color:#fff;border:1px solid #0000}.concept-dialog-scope-button-active:hover{background-color:color-mix(in oklch,var(--color-blue)85%,var(--overlay-dark))}.concept-dialog-scope-button-active:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.concept-dialog-scope-button-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.concept-dialog-canvas-area{display:flex;position:relative;flex:1;min-height:0;padding-right:1.5rem}.concept-dialog-canvas-container{display:flex;border:2px solid var(--border);border-radius:1rem;flex-direction:column;flex:1}.concept-dialog-color-picker{position:absolute;z-index:50;top:6rem;left:7rem}.concept-dialog-footer{display:flex;justify-content:space-between;align-items: center;padding:1rem 1.5rem}.concept-dialog-footer-controls{display:flex;align-items: center;gap:1rem}.concept-dialog-control-group{display:flex;align-items: center;gap:.5rem}.concept-dialog-control-label{font-size:.875rem;font-weight:500}.concept-dialog-select-trigger{width:165px}.concept-dialog-select-trigger-direction{width:100px}.concept-dialog-flip-button{border:1px solid var(--border);display:flex;cursor:pointer;background-color:var(--input-background);color:var(--foreground);outline:none;border-radius:.375rem;align-items: center;gap:.5rem;padding:.375rem .75rem;transition:all .2s;font-size:.875rem}.concept-dialog-flip-icon{width:1rem;height:1rem}.concept-dialog-flip-button:hover{background-color:var(--accent)}.concept-dialog-flip-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.concept-dialog-type-controls{display:flex;align-items: center;gap:1rem;margin-left:1rem}.concept-dialog-checkbox-label{display:flex;cursor:pointer;align-items: center;gap:.5rem}.concept-dialog-checkbox-text{font-size:.875rem}.concept-dialog-action-buttons{display:flex;align-items: center;gap:.5rem}.concept-dialog-cancel-button{border:1px solid var(--border);cursor:pointer;color:var(--foreground);outline:none;background-color:#0000;border-radius:.375rem;padding:.5rem 1rem;transition:all .2s;font-size:.875rem}.concept-dialog-cancel-button:hover{background-color:var(--accent)}.concept-dialog-cancel-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.concept-dialog-save-button{background-color:var(--color-blue);color:#fff;cursor:pointer;outline:none;border:none;border-radius:.375rem;padding:.5rem 1rem;transition:all .2s;font-size:.875rem}.concept-dialog-save-button:hover{background-color:color-mix(in oklch,var(--color-blue)85%,var(--overlay-dark))}.concept-dialog-save-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.concept-dialog-save-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.concept-dialog-modifier-section{border:1px solid var(--border);background:var(--muted);border-radius:.5rem;margin-top:1rem;padding:1rem}.concept-dialog-modifier-title{margin-bottom:.75rem;font-size:.875rem;font-weight:600}.concept-dialog-state-preview{background:var(--background);border-radius:.25rem;margin-top:1rem;padding:.75rem}.concept-dialog-state-title{margin-bottom:.5rem;font-size:.8125rem;font-weight:600}.concept-dialog-state-list{display:grid;gap:.25rem;font-size:.75rem}.concept-dialog-state-item{display:flex;gap:.5rem}.concept-dialog-state-key{color:var(--muted-foreground)}.concept-dialog-state-value{font-weight:500}.selection-overlay{position:absolute;background:var(--popover);border:1px solid var(--border);display:flex;z-index:40;border-radius:8px;align-items: center;gap:.5rem;padding:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.selection-overlay-count{color:var(--popover-foreground);border-right:1px solid var(--border);padding:.25rem .75rem;font-size:.875rem;font-weight:500}.selection-overlay-button-save{background:var(--action-button);color:var(--action-button-foreground);display:flex;cursor:pointer;outline:none;border-radius:8px;align-items: center;gap:.5rem;padding:.375rem .75rem;transition:all .2s;font-size:.875rem;font-weight:500}.selection-overlay-button-save:hover{background:color-mix(in oklch,var(--action-button)90%,transparent)}.selection-overlay-button-save:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.selection-overlay-button-icon{cursor:pointer;outline:none;border-radius:8px;padding:.375rem;transition:all .2s}.selection-overlay-button-icon:hover{background:var(--accent)}.selection-overlay-button-icon:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.selection-overlay-button-delete{color:var(--destructive);cursor:pointer;outline:none;border-radius:8px;padding:.375rem;transition:all .2s}.selection-overlay-button-delete:hover{background:color-mix(in oklch,var(--destructive)10%,transparent)}.selection-overlay-button-delete:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.selection-overlay-icon{width:1rem;height:1rem}.animation-control-bar{position:absolute;z-index:25;display:flex;background:color-mix(in oklch,var(--card)60%,transparent);backdrop-filter:blur(16px);border:1px solid color-mix(in oklch,var(--border)50%,transparent);border-radius:16px;flex-direction:column;gap:1rem;padding:16px 20px;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000014,0 1px 3px #0000000a}.dark .animation-control-bar{background:color-mix(in oklch,var(--card)50%,transparent);box-shadow:0 4px 16px #0003,0 1px 4px #0000001a}.animation-control-bar-stop{transition:color .2s,background-color .2s}.animation-control-bar-stop:hover{color:var(--destructive);background-color:color-mix(in oklch,var(--destructive)10%,transparent)}.in-place-animation-overlay{position:absolute;z-index:20;border-radius:inherit;overflow:hidden;inset:0}.applied-chips{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem 0}.applied-chip{position:relative;display:inline-flex;cursor:default;user-select:none;border-radius:9999px;align-items: center;gap:.25rem;padding:.25rem .625rem;transition:all .15s;font-size:.75rem;font-weight:500;line-height:1.25}.applied-chip[data-variant=formation]{background-color:var(--accent);color:var(--accent-foreground);border:1px solid var(--accent)}.applied-chip[data-variant=concept]{background-color:var(--secondary);color:var(--secondary-foreground);border:1px solid var(--border)}.applied-chip__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.applied-chip__remove{display:flex;color:currentColor;cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:9999px;justify-content:center;align-items: center;width:1rem;height:1rem;margin-left:.125rem;margin-right:-.25rem;padding:0;transition:all .15s}.applied-chip__remove:hover{opacity:1;background-color:color-mix(in oklch,currentColor 15%,transparent)}.applied-chip__remove:focus-visible{opacity:1;outline:2px solid var(--ring);outline-offset:1px}.applied-chip__remove-icon{stroke-width:2.5;width:.75rem;height:.75rem}.applied-chip:hover{box-shadow:0 1px 2px #0000000d}.applied-chip[data-variant=formation]:hover{background-color:color-mix(in oklch,var(--accent)90%,black)}.applied-chip[data-variant=concept]:hover{background-color:color-mix(in oklch,var(--secondary)90%,black)}.play-editor-canvas-area{position:relative;overflow:hidden;flex:1;padding-top:1rem;padding-left:1rem}.play-editor-dialog-label{display:block;margin-bottom:.5rem}.play-editor-dialog-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.5rem}.play-editor-dialog-cancel{border:1px solid var(--border);cursor:pointer;outline:none;background:0 0;border-radius:.5rem;padding:.5rem 1rem;transition:all .2s}.play-editor-dialog-cancel:hover{background-color:var(--accent)}.play-editor-dialog-cancel:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.play-editor-dialog-confirm{background-color:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border:none;border-radius:.5rem;padding:.5rem 1rem;transition:all .2s}.play-editor-dialog-confirm:hover{background-color:color-mix(in oklch,var(--action-button)90%,transparent)}.play-editor-dialog-confirm:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.play-editor-dialog-confirm:disabled{opacity:.5;pointer-events:none}.play-editor-dialog-delete{background-color:var(--destructive);color:var(--destructive-foreground);cursor:pointer;outline:none;border:none;border-radius:.5rem;padding:.5rem 1rem;transition:all .2s}.play-editor-dialog-delete:hover{background-color:color-mix(in oklch,var(--destructive)90%,transparent)}.play-editor-dialog-delete:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.play-editor-dialog-message{margin-bottom:1rem}.play-viewer-header{display:flex;border-bottom:1px solid var(--overlay-border);justify-content:space-between;align-items: center;padding:1rem 1.5rem}.play-viewer-header-left{display:flex;align-items: center;gap:1rem}.play-viewer-close-button{color:var(--overlay-text)}.play-viewer-close-button:hover{background:var(--overlay-surface)}.play-viewer-title{color:var(--overlay-text);font-size:1.125rem;font-weight:600}.play-viewer-counter{font-variant-numeric:tabular-nums;color:var(--overlay-text-subtle);font-size:.75rem}.play-viewer-edit-button{border-color:color-mix(in oklch,var(--overlay-light)20%,transparent);background:var(--overlay-surface);color:var(--overlay-text);gap:.5rem}.play-viewer-edit-button:hover{background:color-mix(in oklch,var(--overlay-light)20%,transparent)}.play-viewer-canvas{position:relative;overflow:hidden;flex:1}.play-viewer-loading,.play-viewer-error{display:flex;flex-direction:column;flex:1;justify-content:center;align-items: center;gap:1rem}.play-viewer-loading-spinner{animation:spin 1s linear infinite;color:var(--overlay-text);width:3rem;height:3rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.play-viewer-loading-text{color:var(--overlay-text-muted);font-size:.875rem}.play-viewer-error-title{color:var(--overlay-error);font-size:1rem}.play-viewer-error-message{color:var(--overlay-text-subtle);font-size:.875rem}.play-viewer-controls-footer{border-top:1px solid var(--overlay-border);padding:1rem 1.5rem}.play-animation-page-loading,.play-animation-page-error{display:flex;background-color:var(--background);justify-content:center;align-items: center;height:100vh}.play-animation-page-content{display:flex;flex-direction:column;align-items: center;gap:1rem}.play-animation-page-spinner{color:var(--muted-foreground);width:3rem;height:3rem}.play-animation-page-loading-text{color:var(--muted-foreground);font-size:.875rem;line-height:1.25rem}.play-animation-page-error-message{color:var(--destructive);font-size:1rem;line-height:1.5rem}.play-animation-page-error-detail{color:var(--muted-foreground);font-size:.875rem;line-height:1.25rem}.play-animation-page-button{background-color:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border-radius:.5rem;margin-top:1rem;padding:.5rem 1rem;transition:all .2s}.play-animation-page-button:hover{background-color:color-mix(in oklch,var(--action-button)90%,transparent)}.play-animation-page-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}.team-admin-page{max-width:1200px;margin:0 auto;padding:2rem}.team-admin-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:2rem}.team-admin-header h1{color:var(--foreground);font-size:1.5rem;font-weight:600}.member-list{background:var(--card);border:1px solid var(--border);overflow:hidden;border-radius:.5rem}.member-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;border-bottom:1px solid var(--border);cursor:pointer;padding:1rem;transition:background-color .15s}.member-row:last-child{border-bottom:none}.member-row:hover{background:var(--accent)}.member-row.header{background:var(--muted);color:var(--muted-foreground);cursor:default;font-size:.875rem;font-weight:500}.member-row.header:hover{background:var(--muted)}.member-name{font-weight:500}.member-email{color:var(--muted-foreground);font-size:.875rem}.member-detail-panel{background:var(--card);border:1px solid var(--border);border-radius:.5rem;margin-top:1rem;padding:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--muted);text-align:center;border-radius:.375rem;padding:1rem}.stat-value{color:var(--foreground);font-size:1.5rem;font-weight:600}.stat-label{color:var(--muted-foreground);margin-top:.25rem;font-size:.75rem}.activity-list{margin-top:1rem}.activity-list h3{margin-bottom:.75rem;font-size:1rem;font-weight:500}.activity-item{display:flex;border-bottom:1px solid var(--border);justify-content:space-between;padding:.5rem 0;font-size:.875rem}.activity-item:last-child{border-bottom:none}.activity-description{color:var(--foreground)}.activity-time{color:var(--muted-foreground)}.concept-header{padding:.75rem 1rem .25rem}.concept-header__content{display:flex;align-items: center;gap:1rem}.concept-header__controls{display:flex;flex:1;align-items: center;gap:1rem;min-width:0}.concept-header__name-input{flex:1;min-width:120px;font-size:1.125rem;font-weight:600}.concept-header__category-select{flex-shrink:0;width:200px}.concept-header__mode-toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius,6px);overflow:hidden;flex-shrink:0}.concept-header__mode-btn{padding:var(--spacing-1,4px)var(--spacing-3,12px);color:var(--muted-foreground);cursor:pointer;background-color:#0000;border:none;transition:background-color .15s,color .15s;font-family:inherit;font-size:.8125rem;font-weight:500}.concept-header__mode-btn:hover{background-color:var(--accent)}.concept-header__mode-btn[data-active]{background-color:var(--accent);color:var(--foreground)}.concept-header__mode-btn:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.concept-header__button-area{display:flex;flex-shrink:0;width:calc(360px - 1rem);padding-left:1rem}.concept-header__button{width:100%;height:2.5rem}@media (prefers-reduced-motion:reduce){.concept-header__mode-btn{transition:none}}.concept-details-panel{position:relative;overflow:hidden;z-index:0;border-left:1px solid var(--border);height:100%;transition:width .8s ease-in-out}.concept-details-panel__content{display:flex;flex-direction:column;width:100%;min-width:280px;height:100%}.concept-details-panel__scroll{display:flex;gap:var(--spacing-4,16px);padding:var(--spacing-4,16px);overflow-y:auto;scrollbar-gutter:stable;flex-direction:column;flex:1}.concept-details-panel__title{margin:0;font-size:1rem;font-weight:600}.concept-details-panel__label{display:block;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin-block-end:var(--spacing-1,4px);font-size:.75rem;font-weight:500}.concept-details-panel__targeting{display:flex;flex-direction:column}.concept-details-panel__toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius,6px);overflow:hidden}.concept-details-panel__toggle-btn{padding:var(--spacing-2,8px);cursor:pointer;color:var(--muted-foreground);background-color:#0000;border:none;flex:1;transition:background-color .15s,color .15s;font-family:inherit;font-size:.8125rem}.concept-details-panel__toggle-btn[data-active]{background-color:var(--accent);color:var(--foreground);font-weight:500}.concept-details-panel__toggle-btn:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.concept-details-panel__side-preference{margin-block-start:.75rem}.concept-details-panel__side-select{width:100%}.concept-details-panel__empty{text-align:center;padding:var(--spacing-6,24px);color:var(--muted-foreground)}.concept-details-panel__empty-hint{margin-top:var(--spacing-1,4px);font-size:.8125rem}.concept-details-panel__assignment-list{display:flex;gap:var(--spacing-2,8px);flex-direction:column}.concept-details-panel__assignment-card{display:flex;align-items: center;gap:var(--spacing-2,8px);padding:var(--spacing-2,8px)var(--spacing-3,12px);border:1px solid var(--border);border-radius:var(--radius,6px)}.concept-details-panel__assignment-role{min-width:40px;font-size:.875rem;font-weight:600}.concept-details-panel__assignment-type{color:var(--muted-foreground);flex:1;font-size:.875rem}.concept-details-panel__assignment-remove{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;transition:color .15s,background-color .15s;font-size:.875rem}.concept-details-panel__assignment-remove:hover{color:var(--destructive);background-color:color-mix(in oklch,var(--destructive)10%,transparent)}.concept-details-panel__assignment-remove:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.concept-details-panel__code-field{display:flex;flex-direction:column}.concept-details-panel__ai-section{display:flex;flex-direction:column;gap:1rem}.concept-details-panel__ai-label{display:block;color:var(--foreground);margin-block-end:var(--spacing-2,8px);font-size:.875rem;font-weight:500}.concept-details-panel__ai-textarea{padding:var(--spacing-3,12px);border:1px solid var(--border);border-radius:var(--radius,6px);background-color:var(--background);color:var(--foreground);resize:vertical;width:100%;font-family:inherit;font-size:.875rem;line-height:1.5}.concept-details-panel__ai-textarea:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 2px color-mix(in oklch,var(--ring)25%,transparent)}.concept-details-panel__ai-actions{display:flex;gap:var(--spacing-2,8px);margin-block-start:var(--spacing-2,8px)}.concept-details-panel__ai-error{padding:var(--spacing-3,12px);border:1px solid var(--destructive);border-radius:var(--radius,6px);background-color:color-mix(in oklch,var(--destructive)10%,transparent);font-size:.875rem}.concept-details-panel__ai-tips{color:var(--muted-foreground);margin-block-start:var(--spacing-2,8px);font-size:.8125rem}.concept-details-panel__ai-preview{border:1px solid var(--border);border-radius:var(--radius,6px);padding:var(--spacing-4,16px)}.concept-details-panel__ai-preview-title{margin-block-end:var(--spacing-3,12px);font-size:.875rem;font-weight:600}.concept-details-panel__ai-preview-meta{display:flex;gap:var(--spacing-2,8px);flex-wrap:wrap;margin-block-end:var(--spacing-3,12px)}.concept-details-panel__ai-preview-name{font-weight:600}.concept-details-panel__ai-preview-category,.concept-details-panel__ai-preview-targeting{color:var(--muted-foreground);padding:.125rem var(--spacing-2,8px);border:1px solid var(--border);border-radius:var(--radius,6px);font-size:.8125rem}.concept-details-panel__ai-low-confidence{padding:var(--spacing-2,8px)var(--spacing-3,12px);background-color:color-mix(in oklch,var(--warning)15%,transparent);border-radius:var(--radius,6px);margin-block-end:var(--spacing-3,12px);font-size:.8125rem}.concept-details-panel__ai-ambiguities{padding:var(--spacing-2,8px)var(--spacing-3,12px);background-color:color-mix(in oklch,var(--warning)10%,transparent);border-radius:var(--radius,6px);margin-block-end:var(--spacing-3,12px);font-size:.8125rem}.concept-details-panel__ai-ambiguities ul{margin:var(--spacing-1,4px)0 0 1.25rem;padding:0}.concept-details-panel__ai-assignments h4{color:var(--muted-foreground);margin-block-end:var(--spacing-2,8px);font-size:.8125rem;font-weight:600}.concept-details-panel__ai-assignment{display:flex;align-items: center;gap:var(--spacing-2,8px);padding:var(--spacing-1,4px)0;border-block-end:1px solid var(--border)}.concept-details-panel__ai-assignment:last-child{border-block-end:none}.concept-details-panel__ai-assignment-target{min-width:5rem;font-weight:500}.concept-details-panel__ai-assignment-arrow{color:var(--muted-foreground)}.concept-details-panel__ai-assignment-route{color:var(--foreground)}.concept-details-panel__ai-preview-actions{display:flex;gap:var(--spacing-2,8px);flex-wrap:wrap;margin-block-start:var(--spacing-4,16px)}@media (prefers-reduced-motion:reduce){.concept-details-panel,.concept-details-panel__toggle-btn,.concept-details-panel__assignment-remove{transition:none}}.concept-editor-canvas-area{position:relative;display:flex;overflow:hidden;flex-direction:column;flex:1;padding:1rem}.concept-editor-color-picker{position:absolute;z-index:50;top:0;left:0}.formation-toolbar{overflow:visible;display:grid;grid-auto-rows:56px;place-content: center start;width:80px;min-width:80px;padding:12px}.toolbar-dialog-anchor>.hash-dialog,.toolbar-dialog-anchor>.color-picker-dialog{position:absolute;z-index:60;top:50%;left:calc(100% + .5rem);transform:translateY(-50%)}.formation-header{padding:.75rem 1rem .25rem}.formation-header__content{display:flex;align-items: center;gap:0}.formation-header__inputs{display:flex;flex:1;align-items: center;gap:0;min-width:0}.formation-header__name-input{flex:1;min-width:120px;font-size:1.125rem;font-weight:600}.formation-header__name-input--mirrored{flex:1;font-size:.9375rem;font-weight:500}.formation-header__button-area{display:flex;flex-shrink:0;width:calc(360px - 1rem);padding-left:1rem}.formation-header__button{width:100%;height:2.5rem}.formation-editor__canvas-area{position:relative;display:flex;overflow:hidden;flex-direction:column;flex:1;padding:1rem 0 1rem 1rem}.formation-editor__canvas-wrapper{display:flex;overflow:hidden;flex-direction:column;flex:1;min-height:0}.formation-editor__dual-canvas{display:flex;flex-direction:column;flex:1;gap:1rem;min-height:0}.formation-editor__canvas-panel{display:flex;overflow:hidden;flex-direction:column;flex:1;min-height:0}.formation-editor__canvas-label{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;padding-bottom:.25rem;font-size:.75rem;font-weight:600}.formation-editor__error{color:var(--destructive);margin-top:.5rem;font-size:.875rem}:root{--field-bg:#f2f2f2;--field-line:#a9a9a9;--field-los:#3b82f6;--field-text:#919191;--field-line-opacity:.4;--field-los-opacity:.8;--field-text-opacity:.3;--erase-hover:#ef4444e6;--progress-traveled:#22c55e}.dark{--field-bg:#1f2937;--field-line:#4b5563;--field-los:#60a5fa;--field-text:#6b7280;--field-line-opacity:.6;--field-los-opacity:.9;--field-text-opacity:.5}[data-category=formation]{--category-color:var(--color-chip-formation)}[data-category=route],[data-category=blocking],[data-category=motion],[data-category=protection]{--category-color:var(--color-chip-concept)}[data-category=modifier]{--category-color:var(--color-chip-modifier)}[data-category=plain]{--category-color:var(--color-chip-plain)}:root{--font-size:16px;--background:#fff;--foreground:oklch(.145 0 0);--card:#fff;--card-foreground:oklch(.145 0 0);--popover:oklch(1 0 0);--popover-foreground:oklch(.145 0 0);--primary:#030213;--primary-foreground:oklch(1 0 0);--secondary:oklch(.95 .0058 264.53);--secondary-foreground:#030213;--muted:#ececf0;--muted-foreground:#717182;--accent:#e9ebef;--accent-foreground:#030213;--destructive:#d4183d;--destructive-foreground:#fff;--warning:#f59e0b;--success:#10b981;--action-button:#3b82f6;--action-button-foreground:#fff;--border:#0000001a;--card-border:lightgray;--input:transparent;--input-background:#f3f3f5;--switch-background:#cbced4;--font-weight-medium:500;--font-weight-normal:400;--ring:oklch(.708 0 0);--chart-1:oklch(.646 .222 41.116);--chart-2:oklch(.6 .118 184.704);--chart-3:oklch(.398 .07 227.392);--chart-4:oklch(.828 .189 84.429);--chart-5:oklch(.769 .188 70.08);--radius:.625rem;--radius-sm:.25rem;--radius-lg:.75rem;--sidebar:oklch(.985 0 0);--sidebar-foreground:oklch(.145 0 0);--sidebar-primary:oklch(.98 .005 250);--sidebar-primary-foreground:oklch(.145 0 0);--sidebar-accent:oklch(.97 0 0);--sidebar-accent-foreground:oklch(.205 0 0);--sidebar-border:oklch(.922 0 0);--sidebar-ring:oklch(.708 0 0);--icon-muted:oklch(.45 0 0);--color-star:oklch(.84 .17 90);--color-blue:oklch(.59 .2 255);--color-green:oklch(.64 .17 150);--color-purple:oklch(.62 .21 300);--color-orange:oklch(.7 .18 50);--color-yellow:oklch(.82 .17 95);--color-chip-formation:var(--color-blue);--color-chip-modifier:var(--color-green);--color-chip-concept:var(--color-orange);--color-chip-plain:var(--muted);--overlay-dark:oklch(0 0 0);--overlay-light:oklch(1 0 0);--overlay-border:oklch(1 0 0/.1);--overlay-surface:oklch(1 0 0/.1);--overlay-text:oklch(1 0 0);--overlay-text-muted:oklch(1 0 0/.7);--overlay-text-subtle:oklch(1 0 0/.5);--overlay-error:oklch(.58 .22 25);--shadow-elevation-low:0 1px 2px #0000000a,0 4px 6px -1px #00000014;--shadow-elevation-medium:0 2px 4px #0000000a,0 8px 16px -4px #0000001f;--shadow-elevation-high:0 4px 8px #0000000a,0 16px 24px -8px #0000001f;--shadow-dialog:0 4px 12px #00000014,0 25px 50px -12px #00000040;--shadow-inset:inset 0 2px 4px #0000000f}.dark{--background:oklch(.16 .02 250);--foreground:oklch(.985 0 0);--input-background:oklch(.18 .02 250);--card:oklch(.2 .02 250);--card-foreground:oklch(.985 0 0);--popover:oklch(.24 .02 250);--popover-foreground:oklch(.985 0 0);--primary:oklch(.985 0 0);--primary-foreground:oklch(.205 .02 250);--secondary:oklch(.25 .02 250);--secondary-foreground:oklch(.985 0 0);--muted:oklch(.25 .02 250);--muted-foreground:oklch(.708 0 0);--accent:oklch(.28 .02 250);--accent-foreground:oklch(.985 0 0);--destructive:oklch(.396 .141 25.723);--destructive-foreground:oklch(.637 .237 25.331);--warning:oklch(.75 .15 85);--success:oklch(.65 .15 155);--action-button:#3b82f6;--action-button-foreground:#fff;--border:oklch(.3 .02 250);--card-border:oklch(.4 .02 250);--input:oklch(.25 .02 250);--switch-background:oklch(.18 .02 250);--ring:oklch(.439 .01 250);--font-weight-medium:500;--font-weight-normal:400;--chart-1:oklch(.488 .243 264.376);--chart-2:oklch(.696 .17 162.48);--chart-3:oklch(.769 .188 70.08);--chart-4:oklch(.627 .265 303.9);--chart-5:oklch(.645 .246 16.439);--sidebar:oklch(.205 0 0);--sidebar-foreground:oklch(.985 0 0);--sidebar-primary:oklch(.205 .02 250);--sidebar-primary-foreground:oklch(.985 0 0);--sidebar-accent:oklch(.269 0 0);--sidebar-accent-foreground:oklch(.985 0 0);--sidebar-border:oklch(.269 0 0);--sidebar-ring:oklch(.439 0 0);--icon-muted:oklch(.7 0 0);--color-star:oklch(.88 .17 95);--color-blue:oklch(.65 .2 255);--color-green:oklch(.72 .17 150);--color-purple:oklch(.72 .21 300);--color-orange:oklch(.76 .18 55);--color-yellow:oklch(.88 .17 95);--color-chip-formation:var(--color-blue);--color-chip-modifier:var(--color-green);--color-chip-concept:var(--color-orange);--color-chip-plain:var(--muted);--overlay-dark:oklch(0 0 0);--overlay-light:oklch(1 0 0);--overlay-border:oklch(1 0 0/.1);--overlay-surface:oklch(1 0 0/.1);--overlay-text:oklch(1 0 0);--overlay-text-muted:oklch(1 0 0/.7);--overlay-text-subtle:oklch(1 0 0/.5);--overlay-error:oklch(.65 .24 25);--shadow-elevation-low:0 1px 3px #0000004d,0 4px 12px #ffffff0a;--shadow-elevation-medium:0 2px 6px #0006,0 8px 20px #ffffff0f;--shadow-elevation-high:0 4px 12px #00000080,0 12px 28px #ffffff14;--shadow-dialog:0 4px 16px #0009,0 25px 50px -12px #000c;--shadow-inset:inset 0 2px 8px #00000026}*{box-sizing:border-box;border-color:var(--border);outline-color:color-mix(in oklch,var(--ring)50%,transparent);font-family:SF Compact Rounded,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}html,body{background-color:var(--background);color:var(--foreground);overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;height:100%;margin:0;padding:0}#root{width:100%;height:100%}.protected-route-loading,.page-loading{display:flex;background:var(--background);flex-direction:column;justify-content:center;align-items: center;gap:24px;height:100vh}.protected-route-spinner,.page-loading-spinner{border:4px solid var(--muted);border-top-color:var(--action-button);animation:spin 1s linear infinite;border-radius:50%;width:48px;height:48px}@keyframes spin{to{transform:rotate(360deg)}}.protected-route-loading-text,.page-loading-text{color:var(--muted-foreground);font-size:.875rem;font-weight:500}.page-error{display:flex;background:var(--background);justify-content:center;align-items: center;height:100vh}.page-error-content{text-align:center;max-width:500px;padding:24px}.page-error-title{margin-bottom:16px;font-size:1.5rem;font-weight:700}.page-error-title[data-variant=error]{color:var(--destructive)}.page-error-title[data-variant=info]{color:var(--foreground)}.page-error-message{color:var(--muted-foreground);margin-bottom:24px;line-height:1.5}.page-error-button{background:var(--action-button);color:var(--action-button-foreground);cursor:pointer;outline:none;border:1px solid #0000;border-radius:8px;padding:8px 16px;transition:all .2s;font-weight:500}.page-error-button:hover{background:color-mix(in oklch,var(--action-button)90%,transparent)}.page-error-button:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--ring)50%,transparent)}h1{font-size:1.5rem;font-weight:500;line-height:1.5}h2{font-size:1.25rem;font-weight:500;line-height:1.5}h3{font-size:1.125rem;font-weight:500;line-height:1.5}h4{font-size:1rem;font-weight:500;line-height:1.5}p{font-size:1rem;font-weight:400;line-height:1.5}label{font-size:1rem;font-weight:500;line-height:1.5}button{color:inherit;background:0 0;border:none;font-size:1rem;font-weight:500;line-height:1.5}input{font-size:1rem;font-weight:400;line-height:1.5}html{font-size:var(--font-size)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes zoom-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes zoom-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes slide-in-from-top{0%{transform:translateY(-.5rem)}to{transform:translateY(0)}}@keyframes slide-in-from-bottom{0%{transform:translateY(.5rem)}to{transform:translateY(0)}}@keyframes slide-in-from-left{0%{transform:translate(-.5rem)}to{transform:translate(0)}}@keyframes slide-in-from-right{0%{transform:translate(.5rem)}to{transform:translate(0)}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}@keyframes slide{0%{background-position:0 0}to{background-position:256px 224px}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion){*,:before,:after{animation:none!important}}@keyframes modal-in{0%{opacity:0;transform:scale(.95)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes controls-reveal{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes loop-activate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.flex{display:flex}.flex-col{flex-direction:column}.grid{display:grid}.block{display:block}.items-center{align-items: center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-4>*+*{margin-top:1rem}.h-screen{height:100vh}.h-full{height:100%}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.p-6{padding:1.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.mb-4{margin-bottom:1rem}.text-center{text-align:center}.text-sm{font-size:.875rem;line-height:1.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-muted-foreground{color:var(--muted-foreground)}.text-foreground{color:var(--foreground)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-action-button-foreground{color:var(--action-button-foreground)}.rounded-lg{border-radius:.5rem}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.font-semibold{font-weight:600}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.outline-none{outline:2px solid #0000;outline-offset:2px}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.hover\:bg-accent:hover{background-color:var(--accent)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.w-4{width:1rem}.h-4{height:1rem}.w-16{width:4rem}.h-16{height:4rem}.flex-1{flex:1 1 0}.text-foreground{color:var(--foreground)}.text-muted-foreground\/40{color:color-mix(in oklch,var(--muted-foreground)40%,transparent)}.border{border-style:solid;border-width:1px}.border-b{border-bottom-style:solid;border-bottom-width:1px}.border-border{border-color:var(--border)}.bg-border{background-color:var(--border)}.text-action-button-foreground{color:var(--action-button-foreground)}.w-px{width:1px}.h-6{height:1.5rem}.rounded-lg{border-radius:.5rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-12{width:3rem}.h-5{height:1.25rem}.h-12{height:3rem}.size-12{width:3rem;height:3rem}.size-full{width:100%;height:100%}.w-2\.5{width:.625rem}.h-2\.5{height:.625rem}.w-3{width:.75rem}.h-3{height:.75rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pt-2{padding-top:.5rem}.mr-2{margin-right:.5rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.min-h-screen{min-height:100vh}.max-w-xl{max-width:36rem}.items-start{align-items: flex-start}.justify-start{justify-content:flex-start}.opacity-50{opacity:.5}.z-10{z-index:10}.relative{position:relative}.absolute{position:absolute}.top-0{top:0}.whitespace-nowrap{white-space:nowrap}.pointer-events-none{pointer-events:none}.text-blue-500{color:#3b82f6}.text-gray-500{color:#6b7280}.text-yellow-500{color:#eab308}.text-primary{color:var(--primary)}.bg-muted{background-color:var(--muted)}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0}.animate-spin{animation:spin 1s linear infinite}.inset-0{inset:0}.left-full{left:100%}.fixed{position:fixed}.w-auto{width:auto}.w-full{width:100%}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-3{padding:.75rem}.ml-0\.5{margin-left:.125rem}.ml-2{margin-left:.5rem}.gap-1{gap:.25rem}.space-y-2>*+*{margin-top:.5rem}.font-medium{font-weight:500}.font-mono{font-family:ui-monospace,monospace}.text-left{text-align:left}.border-r{border-right-style:solid;border-right-width:1px}.border-destructive{border-color:var(--destructive)}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.text-popover-foreground{color:var(--popover-foreground)}.text-white{color:#fff}.fill-white{fill:white}.hidden{display:none}.inline-flex{display:inline-flex}.shrink-0{flex-shrink:0}.z-50{z-index:50}.cursor-move{cursor:move}.pointer-events-auto{pointer-events:auto}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1)infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}
