@layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: "Inter", system-ui, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing: .25rem;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono);--color-brand: #4f46e5;--color-brand-dark: #3730a3;--color-brand-light: #eef2ff;--color-success: #059669;--color-success-bg: #ecfdf5;--color-warning: #d97706;--color-warning-bg: #fffbeb;--color-danger: #dc2626;--color-danger-bg: #fef2f2;--color-text: #111827;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-surface: #ffffff;--color-canvas: #f9fafb;--color-ide-bg: #1e1e1e;--color-ide-chrome: #252526;--color-ide-chrome-alt: #2d2d2d;--color-ide-border: #3c3c3c;--color-ide-fg: #cccccc;--color-ide-fg-dim: #8a8a8a;--color-ide-terminal-bg: #181818;--color-ide-active-file: #37373d;--color-ide-accent: #6366f1;--color-ide-info: #4da3ff;--color-ide-cyan: #22d3ee}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.end-1{inset-inline-end:calc(var(--spacing) * 1)}.isolate{isolation:isolate}.container{width:100%}@media(width>=40rem){.container{max-width:40rem}}@media(width>=48rem){.container{max-width:48rem}}@media(width>=64rem){.container{max-width:64rem}}@media(width>=80rem){.container{max-width:80rem}}@media(width>=96rem){.container{max-width:96rem}}.block{display:block}.block\!{display:block!important}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.flex-shrink,.shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.text-justify{text-align:justify}.text-wrap{text-wrap:wrap}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.diagonal-fractions{--tw-numeric-fraction: diagonal-fractions;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.lining-nums{--tw-numeric-figure: lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure: oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing: proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero: slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.stacked-fractions{--tw-numeric-fraction: stacked-fractions;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.shadow{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.ease-in{--tw-ease: var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease: var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease: var(--ease-out);transition-timing-function:var(--ease-out)}.select-all{-webkit-user-select:all;user-select:all}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:Inter,system-ui,sans-serif;font-size:14px;color:var(--color-text);background:var(--color-canvas);-webkit-font-smoothing:antialiased;overscroll-behavior:none}body{min-height:100vh;overscroll-behavior:none}app-root{display:block;min-height:100vh}.page{max-width:800px;margin:0 auto;padding:32px 20px 64px}.page-wide{max-width:1100px;margin:0 auto;padding:0 20px 64px}.topbar{height:56px;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;padding:0 20px;gap:12px;position:sticky;top:0;z-index:10}.topbar-logo{font-weight:700;font-size:16px;color:var(--color-brand);letter-spacing:-.3px}.topbar-title{font-size:14px;color:var(--color-text-muted);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-timer{font-variant-numeric:tabular-nums;font-weight:600;font-size:15px;color:var(--color-text)}.topbar-timer.warning{color:var(--color-warning)}.topbar-timer.danger{color:var(--color-danger)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:24px}.card+.card{margin-top:16px}h1{font-size:22px;font-weight:700;letter-spacing:-.4px;margin-bottom:4px}h2{font-size:17px;font-weight:600;margin-bottom:12px}h3{font-size:14px;font-weight:600;margin-bottom:8px}.check-item{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid var(--color-border)}.check-item:last-child{border-bottom:none}.check-icon{width:22px;height:22px;border-radius:50%;border:2px solid var(--color-border);flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:1px}.check-icon.ok{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success)}.check-icon.fail{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger)}.check-icon.idle{background:var(--color-canvas)}.check-label{font-weight:500;font-size:13px}.check-sub{font-size:12px;color:var(--color-text-muted);margin-top:2px}.video-preview{width:100%;max-width:400px;aspect-ratio:4/3;background:#111;border-radius:10px;overflow:hidden;display:block;margin:0 auto}.video-preview video{width:100%;height:100%;object-fit:cover}.btn{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;border:none;border-radius:8px;padding:10px 20px;cursor:pointer;transition:opacity .15s,transform .1s}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-primary{background:var(--color-brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-brand-dark)}.btn-secondary{background:var(--color-canvas);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-ghost{background:transparent;color:var(--color-brand)}.btn-ghost:hover:not(:disabled){background:var(--color-brand-light)}.btn-lg{padding:13px 28px;font-size:15px}.btn-sm{padding:6px 14px;font-size:12px}.btn-record{background:var(--color-danger);color:#fff;border-radius:50%;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:transform .1s,background .15s}.btn-record:hover{background:#b91c1c;transform:scale(1.05)}.btn-record.recording{background:#7f1d1d;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 10px #dc262600}}.q-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.q-dot{width:34px;height:34px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-surface);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;cursor:default;transition:all .15s;color:var(--color-text-muted)}.q-dot.active{border-color:var(--color-brand);background:var(--color-brand-light);color:var(--color-brand)}.q-dot.done{border-color:var(--color-success);background:var(--color-success-bg);color:var(--color-success)}.q-dot.uploaded{border-color:var(--color-success);background:var(--color-success);color:#fff}.progress-bar{height:6px;background:var(--color-border);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--color-brand);border-radius:3px;transition:width .3s}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.badge-blue{background:var(--color-brand-light);color:var(--color-brand)}.badge-green{background:var(--color-success-bg);color:var(--color-success)}.badge-amber{background:var(--color-warning-bg);color:var(--color-warning)}.rules-list{list-style:none;display:flex;flex-direction:column;gap:8px}.rules-list li{display:flex;gap:10px;font-size:13px;color:var(--color-text-muted)}.rules-list li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-brand);margin-top:6px;flex-shrink:0}.divider{border:none;border-top:1px solid var(--color-border);margin:20px 0}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:12px}.flex{display:flex}.gap-2{gap:8px}.gap-3{gap:12px}.items-center{align-items:center}.justify-between{justify-content:space-between}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.wizard-shell{max-width:960px;margin:0 auto;padding:32px 20px 64px}.wizard-steps{display:flex;align-items:center;gap:8px;margin-bottom:24px;justify-content:center}.wizard-step-dot{width:28px;height:28px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-surface);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--color-text-muted)}.wizard-step-dot.active{border-color:var(--color-brand);background:var(--color-brand-light);color:var(--color-brand)}.wizard-step-dot.done{border-color:var(--color-success);background:var(--color-success);color:#fff}.wizard-step-line{width:32px;height:2px;background:var(--color-border)}.wizard-grid{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start}@media(max-width:768px){.wizard-grid{grid-template-columns:1fr}}.wizard-instructions h2{font-size:15px}.wizard-instructions p{font-size:13px;color:var(--color-text-muted);line-height:1.6;margin-bottom:10px}.wizard-actions{display:flex;justify-content:space-between;gap:12px;padding-top:8px}.oa-layout{display:grid;grid-template-columns:1fr 340px;gap:20px;padding:20px;max-width:1100px;margin:0 auto}@media(max-width:768px){.oa-layout{grid-template-columns:1fr}}.spinner{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-brand);border-radius:50%;animation:spin .7s linear infinite;margin:40px auto}.error-box{background:var(--color-danger-bg);border:1px solid #fca5a5;border-radius:10px;padding:20px 24px;text-align:center;color:var(--color-danger)}.success-box{background:var(--color-success-bg);border:1px solid #6ee7b7;border-radius:10px;padding:20px 24px;text-align:center;color:var(--color-success)}.proj-root{display:flex;flex-direction:column;height:100vh;overflow:hidden;overscroll-behavior:none;font-family:inherit;color:var(--color-ide-fg);background:var(--color-ide-bg)}.proj-root.proj-light{--color-ide-bg: #ffffff;--color-ide-chrome: #f3f3f3;--color-ide-chrome-alt: #ececec;--color-ide-border: #e0e0e0;--color-ide-fg: #3b3b3b;--color-ide-fg-dim: #767676;--color-ide-terminal-bg: #f7f7f7;--color-ide-active-file: #e4e6f7;--color-ide-info: #1a73e8;--color-ide-cyan: #0891b2}.proj-topbar{position:relative;height:44px;flex-shrink:0;display:flex;align-items:center;gap:14px;padding:0 14px;background:var(--color-ide-chrome);border-bottom:1px solid var(--color-ide-border)}.proj-topbar-left{display:flex;align-items:center;gap:10px;min-width:0}.proj-topbar-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:min(480px,calc(100% - 40px))}.proj-logo{font-weight:700;font-size:13px;color:var(--color-ide-accent);letter-spacing:-.2px;flex-shrink:0}.proj-title{font-size:12.5px;color:var(--color-ide-fg-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-command-center-btn{height:26px;background:var(--color-ide-chrome-alt);border:1px solid var(--color-ide-border);border-radius:5px;padding:0 14px;font-size:12px;line-height:20px;color:var(--color-ide-fg);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center}.proj-command-center-btn:hover{background:var(--color-ide-active-file)}.proj-topbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}.proj-qcount{font-size:12px;color:var(--color-ide-fg-dim);white-space:nowrap}.proj-timer{font-variant-numeric:tabular-nums;font-weight:600;font-size:13.5px;color:var(--color-ide-fg);margin-left:4px}.proj-timer.warning{color:var(--color-warning)}.proj-timer.danger{color:var(--color-danger)}.proj-icon-btn,.proj-preview-btn{background:var(--color-ide-chrome-alt);color:var(--color-ide-fg);border:1px solid var(--color-ide-border);border-radius:6px;padding:5px 10px;font-size:12px;cursor:pointer;white-space:nowrap}.proj-icon-btn:hover,.proj-preview-btn:hover{background:var(--color-ide-active-file)}.proj-icon-btn:disabled,.proj-preview-btn:disabled{opacity:.5;cursor:not-allowed}.proj-icon-btn-sm{background:none;border:none;color:var(--color-ide-fg-dim);cursor:pointer;font-size:12px;padding:2px 4px}.proj-icon-btn-sm:hover{color:var(--color-ide-fg)}.proj-layout-group{display:flex;align-items:center;gap:2px;background:var(--color-ide-chrome-alt);border:1px solid var(--color-ide-border);border-radius:6px;padding:2px}.proj-layout-btn{display:flex;align-items:center;justify-content:center;width:26px;height:22px;border-radius:4px;background:none;border:none;color:var(--color-ide-fg-dim);cursor:pointer}.proj-layout-btn:hover{background:var(--color-ide-active-file);color:var(--color-ide-fg)}.proj-layout-btn.active{background:var(--color-ide-bg);color:var(--color-ide-fg)}.proj-save-state{font-size:12px;color:var(--color-ide-fg-dim);white-space:nowrap}.proj-save-state.ok{color:var(--color-success)}.proj-save-state.error{color:var(--color-danger)}.proj-body{display:flex;flex:1;min-height:0}.proj-activitybar{width:48px;height:100%;flex-shrink:0;background:var(--color-ide-chrome);border-right:1px solid var(--color-ide-border);display:flex;flex-direction:column;align-items:center;padding-top:8px;gap:4px;box-sizing:border-box}.proj-activitybar-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--color-ide-fg-dim);cursor:pointer;background:none;border:none}.proj-activitybar-icon:hover{color:var(--color-ide-fg)}.proj-activitybar-icon.active{color:var(--color-ide-fg);background:var(--color-ide-active-file)}.proj-activitybar-icon:disabled{opacity:.4;cursor:not-allowed}.proj-activitybar-spacer{flex:1}.proj-sidebar{width:220px;flex-shrink:0;background:var(--color-ide-chrome);color:var(--color-ide-fg);display:flex;flex-direction:column;overflow:hidden}.proj-sidebar>app-file-tree,.proj-sidebar>app-search-panel,.proj-sidebar>app-source-control-panel,.proj-sidebar>app-settings-panel{display:flex;flex-direction:column;flex:1;min-height:0}.proj-sidebar-right{border-left:1px solid var(--color-ide-border)}.proj-assistant-placeholder{padding:16px 12px;font-size:12.5px;color:var(--color-ide-fg-dim)}.proj-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:11px;font-weight:600;letter-spacing:.6px;color:var(--color-ide-fg-dim);border-bottom:1px solid var(--color-ide-border);flex-shrink:0}.proj-tree{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:4px}.proj-tree-row{display:flex;align-items:center;gap:3px;padding:4px 2px;font-size:12.5px;line-height:14px;cursor:pointer;white-space:nowrap}.proj-tree-row:hover{background:var(--color-ide-chrome-alt)}.proj-tree-folder{color:var(--color-ide-fg);font-weight:500}.proj-tree-chevron{width:9px;height:14px;flex-shrink:0;color:var(--color-ide-fg-dim);display:flex;align-items:center;justify-content:center;transition:transform .1s ease}.proj-tree-chevron.expanded{transform:rotate(90deg)}.proj-tree-node-icon{width:14px;height:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-ide-fg-dim)}.proj-tree-folder .proj-tree-node-icon,.proj-tree-file{color:var(--color-ide-fg)}.proj-tree-file.active{background:var(--color-ide-active-file);color:var(--color-ide-fg)}.proj-tree-file.active .proj-tree-node-icon,.proj-tree-file.readonly{color:var(--color-ide-fg)}.proj-tree-filename{overflow:hidden;text-overflow:ellipsis}.proj-tree-segment-sep{color:var(--color-ide-fg-dim)}.proj-tree-segment:hover{text-decoration:underline}.proj-tree-children{margin-left:20px;padding-left:2px;border-left:1px solid var(--color-ide-border)}.proj-ro-lock{margin-left:auto;flex-shrink:0;display:flex;align-items:center;color:var(--color-ide-fg-dim)}.proj-tree-badge{margin-left:auto;flex-shrink:0;font-size:9px;font-weight:700;padding:1px 4px;border-radius:3px;text-transform:uppercase;letter-spacing:.02em}.proj-tree-badge-added{color:var(--color-success);background:color-mix(in srgb,#059669 18%,transparent)}@supports (color: color-mix(in lab,red,red)){.proj-tree-badge-added{background:color-mix(in srgb,var(--color-success) 18%,transparent)}}.proj-tree-badge-modified{color:var(--color-warning);background:color-mix(in srgb,#d97706 18%,transparent)}@supports (color: color-mix(in lab,red,red)){.proj-tree-badge-modified{background:color-mix(in srgb,var(--color-warning) 18%,transparent)}}.proj-tree-badge-removed{color:var(--color-danger);background:color-mix(in srgb,#dc2626 18%,transparent)}@supports (color: color-mix(in lab,red,red)){.proj-tree-badge-removed{background:color-mix(in srgb,var(--color-danger) 18%,transparent)}}.proj-scm{display:flex;flex-direction:column;height:100%;overflow:hidden}.proj-scm-summary{padding:0 12px 6px;font-size:11px;color:var(--color-ide-fg-dim)}.proj-scm-list{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 8px}.proj-scm-row{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:4px;cursor:pointer;font-size:12.5px;color:var(--color-ide-fg-dim)}.proj-scm-row:hover{background:var(--color-ide-chrome-alt)}.proj-scm-row.active{background:var(--color-ide-active-file);color:var(--color-ide-fg)}.proj-scm-row-path{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-search{display:flex;flex-direction:column;height:100%;overflow:hidden}.proj-search-input{margin:8px;padding:5px 8px;font-size:12px;font-family:inherit;background:var(--color-ide-chrome-alt);border:1px solid var(--color-ide-border);border-radius:4px;color:var(--color-ide-fg);outline:none}.proj-search-input:focus{border-color:var(--color-ide-accent)}.proj-search-hint{padding:0 12px;font-size:12px;color:var(--color-ide-fg-dim)}.proj-search-results{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 8px}.proj-search-result{padding:5px 8px;border-radius:4px;cursor:pointer}.proj-search-result:hover{background:var(--color-ide-chrome-alt)}.proj-search-result-path{font-size:11px;color:var(--color-ide-accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-search-result-line{font-size:12px;color:var(--color-ide-fg-dim);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}.proj-search-hl{background:color-mix(in srgb,#6366f1 35%,transparent);color:var(--color-ide-fg);border-radius:2px}@supports (color: color-mix(in lab,red,red)){.proj-search-hl{background:color-mix(in srgb,var(--color-ide-accent) 35%,transparent)}}.proj-settings{padding:4px 12px 16px;overflow-y:auto;height:100%}.proj-settings-group-label{padding:14px 0 4px;font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--color-ide-fg-dim)}.proj-settings-group-label:first-child{padding-top:4px}.proj-settings-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;font-size:12.5px;color:var(--color-ide-fg)}.proj-settings-label{min-width:0}.proj-settings-select,.proj-settings-input-sm{background:var(--color-ide-chrome-alt);color:var(--color-ide-fg);border:1px solid var(--color-ide-border);border-radius:4px;padding:3px 6px;font-size:12px;outline:none}.proj-settings-select:focus,.proj-settings-input-sm:focus{border-color:var(--color-ide-accent)}.proj-settings-input-sm{width:60px}.proj-tree-inline-create{cursor:default}.proj-tree-inline-input{flex:1;min-width:0;background:var(--color-ide-chrome-alt);border:1px solid var(--color-ide-accent);border-radius:2px;outline:none;color:var(--color-ide-fg);padding:1px 4px;font-family:inherit;font-size:12.5px}.proj-tree-inline-input.proj-input-error{border-color:var(--color-danger)}.proj-context-menu{position:fixed;z-index:1000;background:var(--color-ide-chrome);border:1px solid var(--color-ide-border);border-radius:5px;padding:4px;min-width:160px;box-shadow:0 4px 16px #0006;font-size:12.5px;color:var(--color-ide-fg)}.proj-context-menu-item{padding:6px 10px;border-radius:3px;cursor:pointer}.proj-context-menu-item:hover{background:var(--color-ide-active-file)}.proj-context-menu-danger{color:var(--color-danger)}.proj-context-menu-divider{height:1px;background:var(--color-ide-border);margin:4px 2px}.proj-cc-backdrop{position:fixed;inset:0;z-index:2000}.proj-cc-panel{position:absolute;top:8px;left:50%;transform:translate(-50%);width:480px;max-height:60vh;display:flex;flex-direction:column;background:var(--color-ide-chrome);border:1px solid var(--color-ide-border);border-radius:7px;box-shadow:0 8px 24px #00000073;overflow:hidden}.proj-cc-input{flex-shrink:0;padding:12px 14px;font-size:14px;background:var(--color-ide-bg);color:var(--color-ide-fg);border:none;border-bottom:1px solid var(--color-ide-border);outline:none}.proj-cc-input::placeholder{color:var(--color-ide-fg-dim)}.proj-cc-list{overflow-y:auto;padding:4px}.proj-cc-item{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:4px;font-size:12.5px;color:var(--color-ide-fg);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-cc-item:hover,.proj-cc-item.active{background:var(--color-ide-active-file)}.proj-cc-item-icon{flex-shrink:0;display:flex}.proj-cc-action-prefix{flex-shrink:0;min-width:16px;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--color-ide-accent);background:var(--color-ide-chrome-alt);border-radius:3px;padding:0 3px}.proj-cc-empty,.proj-cc-hint{padding:14px;font-size:12.5px;color:var(--color-ide-fg-dim)}.proj-cc-section-label{padding:6px 10px 2px;font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--color-ide-fg-dim)}.proj-resizer,.proj-terminal-resizer,.proj-split-resizer{flex-shrink:0;background:transparent;box-sizing:border-box}.proj-resizer,.proj-split-resizer{width:8px;cursor:col-resize;border-right:1px solid var(--color-ide-border)}.proj-terminal-resizer{height:8px;cursor:row-resize;border-top:1px solid var(--color-ide-border)}.proj-resizer:hover,.proj-split-resizer:hover{border-right-width:2px;border-right-color:var(--color-ide-accent)}.proj-terminal-resizer:hover{border-top-width:2px;border-top-color:var(--color-ide-accent)}.proj-dragging iframe{pointer-events:none}.proj-dragging{-webkit-user-select:none;user-select:none}.proj-modal-overlay{position:fixed;inset:0;z-index:200;background:#0f172a99;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.proj-modal{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:12px;padding:22px 24px;width:min(420px,calc(100vw - 48px));box-shadow:0 20px 50px #00000059}.proj-modal-title{margin:0 0 8px;font-size:16px;font-weight:600}.proj-modal-msg{margin:0 0 18px;font-size:14px;color:var(--color-text-muted);line-height:1.5}.proj-modal-actions{display:flex;justify-content:flex-end;gap:10px}.proj-editor-col,.proj-editor-mode,.proj-editor-body{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0}.proj-tabs-bar{display:flex;align-items:stretch;background:var(--color-ide-chrome);flex-shrink:0}.proj-tabs{display:flex;background:var(--color-ide-chrome);overflow-x:auto;flex:1;min-width:0}.proj-tab{display:flex;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;color:var(--color-ide-fg-dim);background:var(--color-ide-chrome-alt);border-right:1px solid var(--color-ide-bg);cursor:pointer;white-space:nowrap}.proj-tab-icon{display:flex;flex-shrink:0}.proj-tab.active{background:var(--color-ide-bg);color:var(--color-ide-fg)}.proj-tab-diff{font-style:italic}.proj-tab-x{color:var(--color-ide-fg-dim);padding:0 2px;border-radius:3px}.proj-tab-x:hover{background:var(--color-ide-border);color:var(--color-ide-fg)}.proj-tab-split{color:var(--color-ide-fg-dim);padding:0 2px;border-radius:3px;font-size:11px;visibility:hidden}.proj-tab:hover .proj-tab-split{visibility:visible}.proj-tab-split:hover{background:var(--color-ide-border);color:var(--color-ide-fg)}.proj-tabs-split-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;background:none;border:none;border-left:1px solid var(--color-ide-border);color:var(--color-ide-fg-dim);cursor:pointer}.proj-tabs-split-btn:hover{background:var(--color-ide-chrome-alt);color:var(--color-ide-fg)}.proj-tabs-split-btn:disabled{opacity:.4;cursor:not-allowed}.proj-editor{flex:1;min-height:0;min-width:0}.proj-panes{display:flex;flex:1 1 auto;min-height:0;min-width:0}.proj-pane{display:flex;flex-direction:column;min-width:0;min-height:0}.proj-pane-a{flex:1 1 auto}.proj-panes-rest{min-height:0;min-width:0}.proj-panes-rest>.proj-pane{flex:1 1 0}.proj-panes-rest>.proj-pane+.proj-pane{border-left:1px solid var(--color-ide-border)}.cdk-drag-preview{background:var(--color-ide-chrome-alt);color:var(--color-ide-fg);border:1px solid var(--color-ide-accent);border-radius:4px;padding:7px 12px;font-size:12.5px;box-shadow:0 4px 12px #0006}.cdk-drag-placeholder{opacity:.3}.cdk-drop-list-dragging .proj-tab:not(.cdk-drag-placeholder){transition:transform .15s ease}.proj-preview-pane{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;background:var(--color-ide-bg)}.proj-preview-head{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;font-size:12px;color:var(--color-ide-fg-dim);background:var(--color-ide-chrome);border-bottom:1px solid var(--color-ide-border);flex-shrink:0}.proj-preview-frame{flex:1;border:none;width:100%;background:#fff}.proj-terminal{display:flex;flex-direction:column;height:200px;flex-shrink:0;background:var(--color-ide-terminal-bg);border-top:0px solid var(--color-ide-border)}.proj-terminal-head{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;font-size:11px;font-weight:600;letter-spacing:.6px;color:var(--color-ide-fg-dim);flex-shrink:0}.proj-terminal-head-actions{display:flex;align-items:center;gap:2px}.proj-terminal-head-btn{display:flex;align-items:center;justify-content:center;width:24px;height:22px;border-radius:4px;background:none;border:none;color:var(--color-ide-fg-dim);cursor:pointer}.proj-terminal-head-btn:hover{background:var(--color-ide-active-file);color:var(--color-ide-fg)}.proj-terminal-main{display:flex;flex:1;min-height:0}.proj-terminal-list{width:170px;flex-shrink:0;display:flex;flex-direction:column;padding:4px 0;border-left:1px solid var(--color-ide-border);background:var(--color-ide-terminal-bg);overflow-y:auto}.proj-terminal-list-item{display:flex;align-items:center;gap:6px;padding:5px 10px;font-size:12px;color:var(--color-ide-fg);cursor:pointer;border-left:2px solid transparent}.proj-terminal-list-item:hover{background:var(--color-ide-active-file)}.proj-terminal-list-item.active{color:var(--color-ide-fg);background:var(--color-ide-bg);border-left-color:var(--color-ide-accent)}.proj-terminal-list-icon{display:flex;flex-shrink:0}.proj-terminal-list-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-terminal-list-item .proj-tab-x{visibility:hidden}.proj-terminal-list-item:hover .proj-tab-x{visibility:visible}.proj-terminal-rename-input{flex:1 1 auto;min-width:0;background:var(--color-ide-bg);color:var(--color-ide-fg);border:1px solid var(--color-ide-accent);border-radius:3px;font-size:12px;padding:1px 4px}.proj-terminal-tab-busy{width:6px;height:6px;border-radius:50%;background:var(--color-ide-accent);flex-shrink:0}.proj-terminal-instances{display:flex;flex:1;min-height:0;min-width:0}.proj-terminal-instance{display:flex;flex-direction:column;flex:1 1 100%;min-width:0;min-height:0}.proj-terminal-instance-split{flex:1 1 50%}.proj-terminal-instance-split+.proj-terminal-instance-split{border-left:1px solid var(--color-ide-border)}.proj-terminal-instance app-terminal-panel{display:flex;flex-direction:column;flex:1;min-height:0}.proj-terminal-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:4px 14px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;cursor:text}.proj-term-line{padding:1px 0;white-space:pre-wrap;word-break:break-word;color:var(--color-ide-fg)}.proj-term-command{display:flex;align-items:center;gap:6px}.proj-term-output{margin:0;padding:1px 0;white-space:pre-wrap;word-break:break-word;color:var(--color-ide-fg);font-family:inherit;font-size:inherit}.proj-term-ok{color:var(--color-success)}.proj-term-fail,.proj-term-error{color:var(--color-danger)}.proj-term-blocked{color:var(--color-warning)}.ansi-red{color:var(--color-danger)}.ansi-green{color:var(--color-success)}.ansi-yellow{color:var(--color-warning)}.ansi-blue{color:var(--color-ide-info)}.ansi-cyan{color:var(--color-ide-cyan)}.ansi-magenta{color:var(--color-ide-accent)}.ansi-bold{font-weight:600}.proj-term-prompt-row{display:flex;align-items:center;gap:6px;padding:1px 0}.proj-prompt{color:var(--color-ide-fg);font-weight:600;flex-shrink:0}.proj-terminal-input{flex:1;background:none;border:none;outline:none;color:var(--color-ide-fg);padding:0;margin:0;font:inherit}.proj-terminal-input::placeholder{color:var(--color-ide-fg-dim)}.proj-terminal-input:disabled{opacity:.5}.proctor-block{position:fixed;inset:0;z-index:9000;background:#111827d1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px}.proctor-block-card{background:var(--color-surface);border-radius:16px;padding:32px;max-width:460px;text-align:center;box-shadow:0 24px 60px #00000059}.proctor-block-icon{width:48px;height:48px;border-radius:50%;background:var(--color-warning-bg);color:var(--color-warning);font-size:26px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.proctor-block-card h2{font-size:18px;margin-bottom:8px}.proctor-block-card p{font-size:14px;color:var(--color-text-muted);line-height:1.6;margin-bottom:20px}.proctor-block-note{font-size:12px!important;color:var(--color-text-muted);margin:16px 0 0!important}:root{--oa-ink: #0f172a;--oa-ink-soft: #475569;--oa-ink-faint: #94a3b8;--oa-line: #e2e8f0;--oa-brand: #0d9488;--oa-brand-deep: #0f766e;--oa-accent: #06b6d4;--oa-surface: #ffffff;--oa-radius: 20px;--oa-shadow-sm: 0 1px 2px rgba(8, 47, 55, .04), 0 1px 3px rgba(8, 47, 55, .06);--oa-shadow: 0 4px 6px -1px rgba(8, 47, 55, .05), 0 14px 32px -10px rgba(8, 47, 55, .14);--oa-shadow-lg: 0 28px 70px -14px rgba(8, 47, 55, .28);--oa-glow: 0 10px 26px -8px rgba(13, 148, 136, .55);--oa-font-display: "Plus Jakarta Sans", "Inter", system-ui, sans-serif}.oa-canvas{min-height:100vh;position:relative;isolation:isolate;background:#f7fbfb}.oa-canvas:before{content:"";position:fixed;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(720px 520px at 14% 8%,rgba(13,148,136,.2),transparent 62%),radial-gradient(680px 480px at 86% 12%,rgba(6,182,212,.17),transparent 64%),radial-gradient(560px 420px at 52% 96%,rgba(45,212,191,.13),transparent 66%);animation:oa-aurora 26s ease-in-out infinite alternate}@keyframes oa-aurora{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(2.5%,-2%,0) scale(1.06)}to{transform:translate3d(-2%,2.5%,0) scale(1.03)}}.oa-shell{max-width:1080px;margin:0 auto;padding:40px 24px 72px}.oa-shell-narrow{max-width:640px}.oa-display{font-family:var(--oa-font-display);font-weight:800;letter-spacing:-.025em;color:var(--oa-ink);line-height:1.15}.oa-h1{font-size:34px}.oa-h2{font-size:21px}.oa-h3{font-size:16px}.oa-lede{font-size:15px;line-height:1.65;color:var(--oa-ink-soft)}.oa-muted{font-size:13px;line-height:1.6;color:var(--oa-ink-faint)}.oa-gradient-text{background:linear-gradient(135deg,var(--oa-brand),var(--oa-accent));-webkit-background-clip:text;background-clip:text;color:transparent}.oa-brandmark{display:inline-flex;align-items:center;gap:10px}.oa-brandmark-badge{width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--oa-brand),var(--oa-accent));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--oa-font-display);font-weight:800;font-size:15px;box-shadow:var(--oa-glow)}.oa-brandmark-text{font-family:var(--oa-font-display);font-weight:700;font-size:15px;color:var(--oa-ink)}.oa-card{background:var(--oa-surface);border:1px solid rgba(226,232,240,.9);border-radius:var(--oa-radius);box-shadow:var(--oa-shadow)}.oa-card-pad{padding:28px}.oa-card-tight{padding:20px}.oa-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap;border-bottom:1px solid var(--oa-line);padding-bottom:18px}.oa-stats{display:flex;flex-shrink:0}.oa-stat{padding-right:34px;margin-right:34px;border-right:1px solid var(--oa-line)}.oa-stat:last-child{border-right:none;margin-right:0;padding-right:0}.oa-stat-value{font-family:var(--oa-font-display);font-size:30px;font-weight:800;letter-spacing:-.02em;color:var(--oa-ink);line-height:1}.oa-stat-label{font-size:11px;font-weight:600;color:var(--oa-ink-faint);letter-spacing:.07em;text-transform:uppercase;margin-top:6px}@media(max-width:560px){.oa-stat{padding-right:20px;margin-right:20px}.oa-stat-value{font-size:24px}.oa-page-head{gap:18px}}.oa-stepper{display:flex;align-items:flex-start;gap:0;margin-bottom:34px}.oa-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:0 0 auto;width:104px;text-align:center}.oa-step-dot{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;background:#fff;color:var(--oa-ink-faint);border:2px solid var(--oa-line);transition:all .25s ease}.oa-step.is-active .oa-step-dot{background:linear-gradient(135deg,var(--oa-brand),var(--oa-accent));border-color:transparent;color:#fff;box-shadow:0 0 0 5px #0d948829;transform:scale(1.08)}.oa-step.is-done .oa-step-dot{background:var(--oa-brand);border-color:transparent;color:#fff}.oa-step-label{font-size:11.5px;font-weight:600;color:var(--oa-ink-faint);letter-spacing:.01em}.oa-step.is-active .oa-step-label{color:var(--oa-brand)}.oa-step.is-done .oa-step-label{color:var(--oa-ink-soft)}.oa-step-line{flex:1 1 auto;height:2px;background:var(--oa-line);margin-top:16px;border-radius:2px}.oa-step-line.is-done{background:var(--oa-brand)}.oa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:14px;font-weight:600;border:none;border-radius:12px;padding:12px 22px;cursor:pointer;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,opacity .2s ease;white-space:nowrap}.oa-btn:disabled,.oa-btn:disabled:hover{cursor:not-allowed;background:#e8edf2!important;background-image:none!important;color:#9aa8b8!important;border-color:transparent!important;box-shadow:none!important;transform:none!important}.oa-btn:focus-visible{outline:3px solid rgba(13,148,136,.5);outline-offset:2px}.oa-btn-primary{background:linear-gradient(135deg,var(--oa-brand),var(--oa-accent));background-size:160% 160%;color:#fff;box-shadow:var(--oa-glow)}.oa-btn-primary:hover:not(:disabled){transform:translateY(-2px);background-position:100% 50%;box-shadow:0 16px 32px -8px #0d94889e}.oa-btn-ghost{background:#fff;color:var(--oa-ink-soft);border:1px solid var(--oa-line);box-shadow:var(--oa-shadow-sm)}.oa-btn-ghost:hover:not(:disabled){background:#f8fafc;color:var(--oa-ink)}.oa-btn-danger{background:#dc2626;color:#fff;box-shadow:0 8px 20px -6px #dc262680}.oa-btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px)}.oa-btn-lg{padding:15px 30px;font-size:15px;border-radius:14px}.oa-btn-sm{padding:8px 15px;font-size:12.5px;border-radius:10px}.oa-btn-block{width:100%}.oa-check{display:flex;align-items:flex-start;gap:13px;padding:15px 0;border-bottom:1px solid #f1f5f9}.oa-check:last-child{border-bottom:none}.oa-check-icon{width:26px;height:26px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:var(--oa-ink-faint);transition:all .2s ease}.oa-check-icon.is-ok{background:#ecfdf5;color:#0d9488}.oa-check-icon.is-fail{background:#fef2f2;color:#dc2626}.oa-check-title{font-size:14px;font-weight:600;color:var(--oa-ink)}.oa-check-sub{font-size:12.5px;color:var(--oa-ink-faint);margin-top:2px}.oa-rules{list-style:none;display:flex;flex-direction:column;gap:11px;margin:0;padding:0}.oa-rules li{position:relative;padding-left:17px;font-size:13.5px;line-height:1.6;color:var(--oa-ink-soft)}.oa-rules li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,var(--oa-brand),var(--oa-accent))}.oa-video{width:100%;aspect-ratio:4 / 3;background:#0f172a;border-radius:16px;overflow:hidden;position:relative;box-shadow:inset 0 0 0 1px #ffffff0f}.oa-video video{width:100%;height:100%;object-fit:cover;display:block}.oa-video-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#64748b;font-size:13px}.oa-meter{height:8px;background:#f1f5f9;border-radius:99px;overflow:hidden}.oa-meter-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#10b981,#34d399);transition:width .06s linear}.oa-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:99px;font-size:11.5px;font-weight:700;letter-spacing:.02em}.oa-chip-brand{background:#0d94881f;color:var(--oa-brand-deep)}.oa-chip-light{background:#ffffff2e;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.oa-notice{border-radius:14px;padding:14px 16px;font-size:13.5px;line-height:1.6;display:flex;gap:11px;align-items:flex-start}.oa-notice-warn{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.oa-notice-danger{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.oa-notice-info{background:#ecfeff;color:#155e75;border:1px solid #a5f3fc}.oa-notice svg{flex-shrink:0;margin-top:1px}.oa-split{display:grid;grid-template-columns:320px 1fr;gap:32px;align-items:start}.oa-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px}@media(max-width:860px){.oa-split{grid-template-columns:1fr;gap:22px}.oa-shell{padding:28px 18px 56px}.oa-h1{font-size:27px}.oa-step{width:74px}.oa-step-label{font-size:10.5px}}.oa-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:16px;padding:0 22px;height:64px;background:#ffffffd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(226,232,240,.8)}.oa-topbar-title{font-family:var(--oa-font-display);font-weight:700;font-size:14.5px;color:var(--oa-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oa-clock{display:inline-flex;align-items:baseline;gap:7px;padding:7px 14px;border-radius:12px;background:#f1f5f9;font-variant-numeric:tabular-nums;font-weight:700;font-size:16px;color:var(--oa-ink)}.oa-clock small{font-size:10.5px;font-weight:600;color:var(--oa-ink-faint);text-transform:uppercase;letter-spacing:.06em}.oa-clock.is-warning{background:#fffbeb;color:#b45309}.oa-clock.is-danger{background:#fef2f2;color:#b91c1c;animation:oa-pulse 2s ease-in-out infinite}@keyframes oa-pulse{0%,to{opacity:1}50%{opacity:.68}}.oa-rail{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.oa-pip{height:5px;width:30px;border-radius:99px;background:var(--oa-line);transition:all .3s ease}.oa-pip.is-done{background:#10b981}.oa-pip.is-current{background:linear-gradient(90deg,var(--oa-brand),var(--oa-accent));width:46px;box-shadow:0 0 0 3px #0d948824}.oa-rec-dot{width:9px;height:9px;border-radius:50%;background:#dc2626;box-shadow:0 0 #dc262699;animation:oa-rec 1.6s infinite}@keyframes oa-rec{0%{box-shadow:0 0 #dc26268c}70%{box-shadow:0 0 0 11px #dc262600}to{box-shadow:0 0 #dc262600}}.oa-qclock{font-family:var(--oa-font-display);font-variant-numeric:tabular-nums;font-size:40px;font-weight:800;letter-spacing:-.02em;color:var(--oa-ink);line-height:1}.oa-qclock.is-low{color:#dc2626}@media(max-width:960px){.oa-room-grid{grid-template-columns:1fr!important}}.oa-dialog-veil{position:fixed;inset:0;z-index:9500;background:#0f172a8c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px;animation:oa-fade .16s ease}.oa-dialog{background:#fff;border-radius:var(--oa-radius);box-shadow:var(--oa-shadow-lg);max-width:440px;width:100%;padding:28px;animation:oa-rise .2s cubic-bezier(.16,1,.3,1)}.oa-dialog-icon{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}@keyframes oa-fade{0%{opacity:0}to{opacity:1}}@keyframes oa-rise{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}@keyframes oa-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes oa-fade-in{0%{opacity:0}to{opacity:1}}@keyframes oa-scale-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.oa-anim{animation:oa-fade-up .55s cubic-bezier(.16,1,.3,1) both}.oa-anim-in{animation:oa-fade-in .5s ease both}.oa-anim-pop{animation:oa-scale-in .45s cubic-bezier(.16,1,.3,1) both}.oa-d1{animation-delay:.06s}.oa-d2{animation-delay:.12s}.oa-d3{animation-delay:.18s}.oa-d4{animation-delay:.24s}.oa-d5{animation-delay:.3s}.oa-d6{animation-delay:.36s}.oa-card{transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease}.oa-lift:hover{transform:translateY(-2px);box-shadow:var(--oa-shadow-lg);border-color:#0d94884d}@keyframes oa-shimmer{to{transform:translate(100%)}}.oa-shimmer{position:relative;overflow:hidden}.oa-shimmer:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:oa-shimmer 1.5s infinite}@media(prefers-reduced-motion:reduce){.oa-canvas:before,.oa-anim,.oa-anim-in,.oa-anim-pop,.oa-shimmer:after,.oa-clock.is-danger,.oa-rec-dot{animation:none!important}.oa-btn,.oa-card,.oa-lift,.oa-step-dot{transition:none!important}.oa-btn-primary:hover:not(:disabled),.oa-lift:hover{transform:none}}@keyframes oa-indeterminate{0%{transform:translate(-100%)}to{transform:translate(320%)}}.oa-meter-indeterminate{width:32%;animation:oa-indeterminate 1.3s ease-in-out infinite}.oa-spin{animation:oa-rotate 1s linear infinite}@keyframes oa-rotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.oa-meter-indeterminate{animation:none;width:100%;opacity:.5}.oa-spin{animation:none}}.oa-room{height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column}.oa-room-body{flex:1;min-height:0;display:flex;flex-direction:column}.oa-room-grid{flex:1;min-height:0}.oa-room-question{display:flex;flex-direction:column;min-height:0}.oa-room-question-text{overflow-y:auto;min-height:0;flex:1}.oa-room-answer{overflow-y:auto;min-height:0}@media(max-width:960px){.oa-room{height:auto;overflow:visible}.oa-room-question-text,.oa-room-answer{overflow:visible}}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-ordinal{syntax: "*"; inherits: false;}@property --tw-slashed-zero{syntax: "*"; inherits: false;}@property --tw-numeric-figure{syntax: "*"; inherits: false;}@property --tw-numeric-spacing{syntax: "*"; inherits: false;}@property --tw-numeric-fraction{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-outline-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@property --tw-backdrop-blur{syntax: "*"; inherits: false;}@property --tw-backdrop-brightness{syntax: "*"; inherits: false;}@property --tw-backdrop-contrast{syntax: "*"; inherits: false;}@property --tw-backdrop-grayscale{syntax: "*"; inherits: false;}@property --tw-backdrop-hue-rotate{syntax: "*"; inherits: false;}@property --tw-backdrop-invert{syntax: "*"; inherits: false;}@property --tw-backdrop-opacity{syntax: "*"; inherits: false;}@property --tw-backdrop-saturate{syntax: "*"; inherits: false;}@property --tw-backdrop-sepia{syntax: "*"; inherits: false;}@property --tw-ease{syntax: "*"; inherits: false;}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-border-style: solid;--tw-ordinal: initial;--tw-slashed-zero: initial;--tw-numeric-figure: initial;--tw-numeric-spacing: initial;--tw-numeric-fraction: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-outline-style: solid;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial;--tw-backdrop-blur: initial;--tw-backdrop-brightness: initial;--tw-backdrop-contrast: initial;--tw-backdrop-grayscale: initial;--tw-backdrop-hue-rotate: initial;--tw-backdrop-invert: initial;--tw-backdrop-opacity: initial;--tw-backdrop-saturate: initial;--tw-backdrop-sepia: initial;--tw-ease: initial}}}
