.qr-page{max-width:100%;width:100%;margin:0 auto;padding:0 var(--page-pad-x) var(--space-16)}.qr-centered{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);min-height:60vh;text-align:center;color:var(--text-secondary);font-size:.9rem}.qr-centered--prompt h1{font-size:1.6rem;font-weight:700;color:var(--text-primary);margin:0}.qr-centered--prompt p{margin:0 0 var(--space-2);max-width:34ch}.qr-header{position:-webkit-sticky;position:sticky;top:var(--navbar-h,64px);z-index:20;background:var(--bg-primary);border-bottom:1px solid var(--border-primary);padding:var(--space-3) 0 var(--space-3);margin-bottom:var(--space-4)}.qr-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:.75rem;color:var(--text-muted);margin-bottom:var(--space-2)}.qr-breadcrumb a{color:var(--text-secondary);text-decoration:none}.qr-breadcrumb a:hover{color:var(--accent-primary);text-decoration:underline}.qr-header-row{justify-content:space-between;gap:var(--space-4)}.qr-header-left,.qr-header-row{display:flex;align-items:center;flex-wrap:wrap}.qr-header-left{gap:var(--space-3);min-width:0}.qr-title{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.03em;line-height:1.1}.qr-dirty-badge{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:3px 9px;border-radius:var(--radius-full);color:var(--accent-warning);background:color-mix(in srgb,var(--accent-warning) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-warning) 30%,transparent);white-space:nowrap}.qr-header-actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.qr-status-slot{display:inline-flex;align-items:center;min-height:1em}.qr-status{font-size:.78rem;font-weight:500}.qr-status.success{color:var(--accent-success)}.qr-status.error{color:var(--accent-danger)}.qr-tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border-primary);margin-bottom:var(--space-5);overflow-x:auto;scrollbar-width:none}.qr-tabs::-webkit-scrollbar{display:none}.qr-tab{padding:var(--space-3) var(--space-4);font-size:.88rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap;transition:color .2s ease,border-color .2s ease}.qr-tab:hover{color:var(--text-primary)}.qr-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary);font-weight:600}.qr-body{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--page-pad-x);gap:var(--page-pad-x);align-items:start}.qr-body.is-narrow{grid-template-columns:minmax(0,1fr)}.qr-main{min-width:0}.qr-resize-wrap{display:flex;align-items:stretch}.qr-resize-handle{width:6px;cursor:col-resize;background:transparent;border:none;padding:0;flex:0 0 6px;position:relative;z-index:2;transition:background .15s ease}.qr-resize-handle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:32px;border-radius:1px;background:var(--accent-primary);opacity:.5;transition:opacity .15s ease,height .15s ease}.qr-resize-handle.is-dragging:after,.qr-resize-handle:hover:after{opacity:1;height:48px;background:var(--accent-primary)}.qr-resize-handle.is-dragging,.qr-resize-handle:hover{background:color-mix(in srgb,var(--accent-primary) 12%,transparent)}.qr-content-layout{display:grid;grid-template-columns:210px minmax(0,1fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:start}.qr-body.is-narrow .qr-content-layout{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.qr-rail{display:flex;flex-direction:column;gap:2px;position:-webkit-sticky;position:sticky;top:calc(var(--navbar-h, 64px) + 108px)}.qr-rail-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:.82rem;text-align:left;cursor:pointer;transition:all .18s ease}.qr-rail-item:hover{background:var(--bg-secondary);color:var(--text-primary)}.qr-rail-item.active{background:var(--accent-primary-light);border-color:var(--border-accent);color:var(--text-primary);font-weight:600}.qr-rail-tick{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;flex-shrink:0;border-radius:var(--radius-full);border:1.5px solid var(--border-secondary);color:var(--text-on-primary)}.qr-rail-tick.done{background:var(--accent-success);border-color:var(--accent-success);color:var(--bg-primary)}.qr-rail-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-rail-count{font-size:.7rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-muted);background:var(--bg-tertiary);border-radius:var(--radius-full);padding:1px 7px;flex-shrink:0}.qr-step-select{display:flex;flex-direction:column;gap:var(--space-1)}.qr-step-select label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.qr-step-select select{padding:var(--space-3);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);font-size:.9rem;width:100%}.qr-panel{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-6);min-width:0}.qr-panel-title{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0 0 var(--space-4)}.qr-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.qr-panel-head .qr-panel-title{margin:0}.qr-panel-head--spaced{margin-top:var(--space-8)}.qr-hint{font-size:.82rem;color:var(--text-secondary);margin:0 0 var(--space-4);line-height:1.55}.qr-hint code{background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:1px 5px;font-size:.92em}.qr-empty{font-size:.85rem;font-style:italic;color:var(--text-muted);margin:0 0 var(--space-4)}.qr-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-3)}.qr-field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.qr-field--full{grid-column:1/-1}.qr-field label{font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.35px;color:var(--text-secondary)}.qr-field input,.qr-field select,.qr-field textarea,.qr-skill-add input{padding:var(--space-3);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);font-size:.9rem;font-family:inherit;width:100%;transition:border-color .18s ease}.qr-field input:focus,.qr-field select:focus,.qr-field textarea:focus,.qr-skill-add input:focus{outline:none;border-color:var(--accent-primary)}.qr-field input[aria-invalid=true],.qr-field textarea[aria-invalid=true]{border-color:var(--accent-danger)}.qr-field input:disabled{opacity:.5;cursor:not-allowed}.qr-error{font-size:.72rem;font-weight:500;color:var(--accent-danger)}.qr-check{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:.78rem;font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-secondary);cursor:pointer}.qr-check input{width:14px;height:14px;accent-color:var(--accent-primary);cursor:pointer}.qr-card{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);padding:var(--space-4)}.qr-card,.qr-card-header{margin-bottom:var(--space-3)}.qr-card-header{display:flex;align-items:center;justify-content:space-between}.qr-card-num{font-size:.72rem;font-weight:600;color:var(--text-muted)}.qr-card-tools{display:flex;align-items:center;gap:2px}.qr-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2);min-width:30px;min-height:30px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.9rem;line-height:1;transition:all .18s ease}.qr-icon-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.qr-icon-btn:disabled{opacity:.35;cursor:not-allowed}.qr-icon-btn--xs{min-width:26px;min-height:26px;padding:var(--space-1) 6px}.qr-icon-btn.is-danger:hover:not(:disabled){color:var(--accent-danger);background:color-mix(in srgb,var(--accent-danger) 12%,transparent)}.qr-overflow{position:relative}.qr-overflow-menu{position:absolute;right:0;top:calc(100% + var(--space-1));min-width:190px;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:40}.qr-overflow-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:.84rem;text-align:left;cursor:pointer}.qr-overflow-item:hover:not(:disabled){background:var(--bg-tertiary)}.qr-overflow-item:disabled{opacity:.4;cursor:not-allowed}.qr-overflow-item.is-danger{color:var(--accent-danger)}.qr-overflow-item.is-danger:hover:not(:disabled){background:color-mix(in srgb,var(--accent-danger) 12%,transparent)}.qr-skill-add{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.qr-skill-add input{flex:1 1}.qr-skill-rows{display:flex;flex-direction:column;gap:var(--space-1)}.qr-skill-row{display:grid;grid-template-columns:minmax(90px,1fr) 2fr auto auto;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.qr-skill-name{font-size:.85rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-skill-row input[type=range]{width:100%;accent-color:var(--accent-primary);cursor:pointer}.qr-skill-row input[type=range]:disabled{cursor:not-allowed;opacity:.4}.qr-skill-val{min-width:40px;text-align:right;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qr-skill-meter,.qr-skill-val{font-size:.74rem;color:var(--text-muted)}.qr-skill-meter{margin:0 0 var(--space-2);font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qr-optional{margin-left:var(--space-2);padding:1px 6px;border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);vertical-align:middle}.qr-hint--inline{display:block;margin-top:var(--space-1)}.qr-step-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-primary)}.qr-fieldset{border:none;padding:0;margin:0 0 var(--space-6)}.qr-fieldset legend{font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.35px;color:var(--text-secondary);padding:0;margin-bottom:var(--space-2)}.qr-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.qr-template-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-3);border:2px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);cursor:pointer;text-align:left;transition:all .18s ease}.qr-template-card:hover{border-color:var(--border-accent)}.qr-template-card.active{border-color:var(--accent-primary);background:var(--accent-primary-light)}.qr-template-name{font-size:.86rem;font-weight:600;color:var(--text-primary)}.qr-template-blurb{font-size:.72rem;color:var(--text-muted);line-height:1.4}.qr-tmpl-mock{display:block;width:100%;aspect-ratio:1/1.414;max-height:96px;background:var(--violet-50);border:1px solid var(--border-primary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-2)}.qr-tmpl-band{display:block;height:26%;background:linear-gradient(135deg,var(--violet-700),var(--violet-500))}.qr-tmpl-cols{display:flex;gap:3px;padding:4px;height:74%}.qr-tmpl-col{flex:1 1;background:repeating-linear-gradient(to bottom,var(--violet-200) 0 2px,transparent 2px 5px)}.qr-tmpl-col--narrow{flex:0.55 1}.qr-tmpl-mock--latex .qr-tmpl-band{height:16%;margin:6px 18% 4px;background:var(--violet-700)}.qr-tmpl-mock--latex .qr-tmpl-cols{height:70%}.qr-tmpl-mock--latex .qr-tmpl-col--narrow{display:none}.qr-segmented{display:inline-flex;gap:2px;padding:3px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.qr-seg-btn{padding:var(--space-2) var(--space-4);font-size:.8rem;font-weight:500;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.qr-seg-btn:hover{color:var(--text-primary)}.qr-seg-btn.active{background:var(--accent-primary);color:var(--text-on-primary);font-weight:600}.qr-slug{display:flex;align-items:center;border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-input);overflow:hidden}.qr-slug-prefix{padding:var(--space-3) var(--space-1) var(--space-3) var(--space-3);font-size:.85rem;color:var(--text-muted);white-space:nowrap}.qr-slug input{border:none;border-radius:0;padding-left:0;background:transparent}.qr-slug-status{font-size:.74rem;font-weight:500;color:var(--text-muted)}.qr-slug-status.ok{color:var(--accent-success)}.qr-slug-status.bad{color:var(--accent-danger)}.qr-visibility{margin:var(--space-5) 0;padding:var(--space-4);border:1px solid var(--border-accent);border-radius:var(--radius-md);background:var(--accent-primary-light)}.qr-visibility-label{display:flex;align-items:center;gap:var(--space-3);cursor:pointer}.qr-visibility-label input{display:none}.qr-switch{position:relative;width:40px;height:22px;flex-shrink:0;background:var(--border-secondary);transition:background .2s ease}.qr-switch,.qr-switch:after{border-radius:var(--radius-full)}.qr-switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--text-primary);transition:transform .2s ease}.qr-visibility-label input:checked+.qr-switch{background:var(--accent-primary)}.qr-visibility-label input:checked+.qr-switch:after{transform:translateX(18px)}.qr-visibility-text{display:flex;flex-direction:column;gap:2px}.qr-visibility-text strong{font-size:.86rem;color:var(--text-primary)}.qr-visibility-text small{font-size:.76rem;color:var(--text-secondary)}.qr-source-note{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:1px dashed var(--border-secondary);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-secondary);font-size:.8rem;line-height:1.5}.qr-source-note strong{color:var(--text-primary)}.qr-output{padding:var(--space-5);border:1px solid var(--border-primary);border-radius:var(--radius-lg);background:var(--bg-card);margin-bottom:var(--space-4)}.qr-output:last-child{margin-bottom:0}.qr-output.is-disabled{opacity:.65}.qr-output-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.qr-output-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-md)}.qr-output-icon--file{background:color-mix(in srgb,var(--accent-info) 14%,transparent);color:var(--accent-info)}.qr-output-icon--link{background:var(--accent-primary-light);color:var(--accent-primary)}.qr-output-heading{display:flex;flex-direction:column;gap:1px;min-width:0}.qr-output-heading h2{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.qr-output-kind{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.qr-premium-tag{margin-left:auto;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:3px 8px;border-radius:var(--radius-sm);background:var(--violet-500);color:var(--violet-50);flex-shrink:0}.qr-output-desc{font-size:.83rem;color:var(--text-secondary);line-height:1.6;margin:0 0 var(--space-4)}.qr-output-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-secondary)}.qr-output-facts dt{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin-bottom:2px}.qr-output-facts dd{font-size:.82rem;font-weight:500;color:var(--text-primary);margin:0}.qr-output-foot{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-4)}.qr-output-blocked{font-size:.78rem;color:var(--text-muted);font-style:italic}.qr-link-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-tertiary);flex-wrap:wrap}.qr-link-row code{flex:1 1;min-width:0;font-size:.78rem;color:var(--accent-primary);word-break:break-all}.qr-preview-panel{position:-webkit-sticky;position:sticky;top:calc(var(--navbar-h, 64px) + 108px);display:flex;flex-direction:column;height:calc(100vh - var(--navbar-h, 64px) - 128px);min-height:520px;border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-tertiary);min-width:0;width:100%;flex:1 1}.qr-preview-panel.is-tab{position:static;height:auto;min-height:60vh}.qr-preview-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);flex-shrink:0;flex-wrap:wrap}.qr-preview-title{font-size:.78rem;font-weight:600;color:var(--text-primary)}.qr-preview-meta{font-size:.72rem;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qr-preview-actions{display:flex;margin-left:auto}.qr-download-btn,.qr-preview-actions{align-items:center;gap:var(--space-2)}.qr-download-btn{display:inline-flex;position:relative}.qr-download-btn.is-stale{padding-right:var(--space-5)}.qr-stale-dot{position:absolute;right:var(--space-2);width:7px;height:7px;border-radius:var(--radius-full);background:var(--accent-warning)}.qr-preview-scroll{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;justify-content:center;padding:var(--space-4);background:var(--bg-tertiary);box-shadow:inset 0 1px 4px color-mix(in srgb,var(--bg-primary) 60%,transparent)}.qr-preview-stage{position:relative;flex-shrink:0;background:var(--white,#fff);box-shadow:var(--shadow-lg);overflow:hidden}.qr-preview-iframe{position:absolute;top:0;left:0;border:none;background:var(--white,#fff);transform-origin:top left}.qr-page-break{position:absolute;left:0;right:0;height:0;border-top:1px dashed color-mix(in srgb,var(--accent-danger) 55%,transparent);pointer-events:none;z-index:2}.qr-preview-empty{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6);text-align:center;color:var(--text-muted);font-size:.85rem}.qr-fullscreen-overlay{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;background:var(--bg-primary)}.qr-fullscreen-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-5);background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);color:var(--text-primary);font-size:.9rem;font-weight:600;flex-shrink:0}.qr-fullscreen-actions{display:flex;align-items:center;gap:var(--space-3)}.qr-fullscreen-iframe{flex:1 1;width:100%;max-width:900px;margin:0 auto;border:none;background:var(--white,#fff);box-shadow:var(--shadow-xl)}.qr-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spin{animation:qr-spin 1s linear infinite}@keyframes qr-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:899px){.qr-page{padding:0 var(--page-pad-x) var(--space-12)}.qr-header{position:static}.qr-header-actions{width:100%;margin-left:0}.qr-header-actions .btn{flex:1 1}.qr-status-slot{order:-1;width:100%}.qr-panel{padding:var(--space-4)}.qr-grid{grid-template-columns:minmax(0,1fr)}.qr-output{padding:var(--space-4)}.qr-output-foot{flex-direction:column;align-items:stretch}.qr-output-foot .btn{width:100%;justify-content:center}}@media (max-width:600px){.qr-skill-row{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"name name remove" "range val val"}.qr-skill-name{grid-area:name}.qr-skill-row input[type=range]{grid-area:range}.qr-skill-val{grid-area:val}.qr-skill-row .qr-icon-btn{grid-area:remove}.qr-segmented{width:100%}.qr-seg-btn{flex:1 1}}@media (prefers-reduced-motion:reduce){.qr-icon-btn,.qr-rail-item,.qr-seg-btn,.qr-switch,.qr-switch:after,.qr-tab,.qr-template-card{transition:none}.spin{animation:none}}