.cv-app{--color-bg: var(--color-bg-primary, #f6f1e7);--color-surface: var(--color-bg-secondary, #fffdf8);--color-surface-2: var(--color-bg-tertiary, #f2ecdf);--color-primary: var(--color-accent-primary, #12695b);--color-primary-rgb: 18, 105, 91;--color-text: var(--color-text-primary, #1c2a24);--color-success-rgb: 31, 122, 77;--cv-space-1: .25rem;--cv-space-2: .5rem;--cv-space-3: .75rem;--cv-space-4: 1rem;--cv-space-5: 1.5rem;--cv-space-6: 2rem;--cv-radius: .75rem;--cv-radius-sm: .5rem;--cv-card-shadow: 0 1px 2px rgba(28, 42, 36, .05), 0 1px 3px rgba(28, 42, 36, .06)}html:has(.cv-app),body:has(.cv-app){height:auto;overflow-x:hidden;overflow-y:auto}.cv-app{min-height:100vh;background:var(--color-bg);color:var(--color-text)}.cv-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.cv-header-left{flex:1}.cv-header-center{flex:2;text-align:center}.cv-header-center h1{font-size:1.25rem;font-weight:600;margin:0}.cv-header-right{flex:1;display:flex;justify-content:flex-end;gap:.75rem}.back-link{display:flex;align-items:center;gap:.5rem;color:var(--color-text-muted);text-decoration:none;font-size:.875rem;transition:color .2s}.back-link:hover{color:var(--color-primary)}.cv-main{display:flex;min-height:calc(100vh - 65px)}.cv-sidebar{width:220px;background:var(--color-surface);border-right:1px solid var(--color-border);padding:1.5rem 0;position:sticky;top:65px;height:calc(100vh - 65px);overflow-y:auto}.cv-nav{list-style:none;margin:0;padding:0}.cv-nav li{margin:0}.cv-nav-link{display:block;padding:.75rem 1.5rem;color:var(--color-text-muted);text-decoration:none;font-size:.875rem;border-left:3px solid transparent;transition:all .2s}.cv-nav-link:hover{color:var(--color-text);background:var(--color-bg)}.cv-nav-link.active{color:var(--color-primary);background:rgba(var(--color-primary-rgb),.1);border-left-color:var(--color-primary);font-weight:500}.cv-content{flex:1;padding:2rem;max-width:800px}.cv-section{display:none}.cv-section.active{display:block}.cv-section h2{font-family:var(--font-display, "Fraunces", Georgia, serif);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;color:var(--color-text)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin:0}.cv-form{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:flex;gap:1rem}.form-row.two-col>.form-group{flex:1}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text)}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);color:var(--color-text);font-size:.875rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-muted)}.form-hint{font-size:.75rem;color:var(--color-text-muted)}.profile-photo-upload{display:flex;align-items:center;gap:1rem}.photo-preview{width:100px;height:100px;border-radius:50%;background:var(--color-bg);border:2px dashed var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden}.photo-preview img{width:100%;height:100%;object-fit:cover}.photo-preview svg{color:var(--color-text-muted)}.toggle-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:400!important}.toggle-label input{display:none}.toggle-switch{width:44px;height:24px;background:var(--color-border);border-radius:12px;position:relative;transition:background .2s}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s}.toggle-label input:checked+.toggle-switch{background:var(--color-primary)}.toggle-label input:checked+.toggle-switch:after{transform:translate(20px)}.url-input-group{display:flex;align-items:center;gap:0}.url-prefix{padding:.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-right:none;border-radius:.5rem 0 0 .5rem;font-size:.875rem;color:var(--color-text-muted)}.url-input-group input{border-radius:0;flex:1}.url-input-group .btn-secondary{border-radius:0 .5rem .5rem 0;white-space:nowrap}.url-status{font-size:.75rem;margin-top:.25rem}.url-status.success{color:var(--color-success, #10b981)}.url-status.error{color:var(--color-error, #ef4444)}.profile-link-display{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:.5rem}.profile-link-display span{flex:1;font-size:.875rem;color:var(--color-text-muted);word-break:break-all}.export-buttons{display:flex;gap:.75rem}.cv-items-list{display:flex;flex-direction:column;gap:1rem}.cv-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;transition:border-color .2s}.cv-item:hover{border-color:var(--color-primary)}.cv-item-content{flex:1}.cv-item-content h4{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--color-text)}.cv-item-subtitle{font-size:.875rem;color:var(--color-text);margin:0 0 .25rem}.cv-item-date,.cv-item-authors,.cv-item-credential{font-size:.75rem;color:var(--color-text-muted);margin:0 0 .5rem}.cv-item-description{font-size:.875rem;color:var(--color-text-muted);margin:.5rem 0 0;line-height:1.5}.cv-item-link{font-size:.75rem;color:var(--color-primary);text-decoration:none}.cv-item-link:hover{text-decoration:underline}.cv-item-actions{display:flex;gap:.5rem;margin-left:1rem}.cv-skills-grid{display:flex;flex-wrap:wrap;gap:.75rem}.cv-skill-tag{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:2rem;font-size:.875rem}.skill-name{color:var(--color-text)}.skill-level{font-size:.75rem;color:var(--color-text-muted);text-transform:capitalize}.btn-icon-sm{width:18px;height:18px;padding:0;background:none;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s}.btn-icon-sm:hover{color:var(--color-error, #ef4444)}.empty-state{text-align:center;padding:2rem;color:var(--color-text-muted);font-size:.875rem}.cv-loading{position:fixed;inset:0;background:var(--color-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:1000}.cv-loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.cv-error,.cv-upgrade-required{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;padding:2rem}.cv-upgrade-required .upgrade-icon{color:var(--color-primary)}.cv-upgrade-required h2{font-size:1.5rem;margin:0}.cv-upgrade-required p{color:var(--color-text-muted);max-width:400px;margin:0}.upgrade-actions{display:flex;gap:1rem;margin-top:1rem}.cv-item-modal{max-width:500px;width:90%}.cv-item-modal .cv-form{max-height:60vh;overflow-y:auto;padding-right:.5rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.btn-icon{width:32px;height:32px;padding:0;background:var(--color-bg);border:1px solid var(--color-border);border-radius:.375rem;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon:hover{background:var(--color-surface);color:var(--color-text);border-color:var(--color-text-muted)}.btn-icon.btn-danger:hover{color:var(--color-error, #ef4444);border-color:var(--color-error, #ef4444)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.spin{animation:spin 1s linear infinite}@media(max-width:768px){.cv-header{flex-direction:column;gap:1rem;padding:1rem}.cv-header-left,.cv-header-center,.cv-header-right{flex:none;width:100%;justify-content:center}.cv-main{flex-direction:column}.cv-sidebar{width:100%;height:auto;position:static;padding:1rem 0;border-right:none;border-bottom:1px solid var(--color-border)}.cv-nav{display:flex;overflow-x:auto;padding:0 1rem;gap:.5rem}.cv-nav-link{padding:.5rem 1rem;border-left:none;border-bottom:2px solid transparent;white-space:nowrap}.cv-nav-link.active{border-left-color:transparent;border-bottom-color:var(--color-primary)}.cv-content{padding:1.5rem}.form-row.two-col{flex-direction:column}}.cv-nav-divider{padding:1.25rem 1.5rem .5rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-top:.5rem;border-top:1px solid var(--color-border)}.section-eyebrow{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary);margin:0 0 .5rem}.section-desc{font-size:.875rem;color:var(--color-text-muted);margin:-.75rem 0 1.25rem;line-height:1.5}.section-save{display:flex;justify-content:flex-end;margin-top:.5rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.char-counter{align-self:flex-end}.chip-input{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);transition:border-color .2s}.chip-input:focus-within{border-color:var(--color-primary)}.chip-list{display:contents}.chip-entry{flex:1;min-width:160px;border:none!important;background:transparent!important;padding:.35rem .25rem!important;color:var(--color-text);font-size:.875rem}.chip-entry:focus{outline:none}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .35rem .3rem .65rem;background:rgba(var(--color-primary-rgb),.12);border:1px solid rgba(var(--color-primary-rgb),.3);border-radius:2rem;font-size:.8125rem;color:var(--color-text)}.chip-label{line-height:1}.chip-remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.chip-remove:hover,.chip-remove:focus-visible{background:rgba(var(--color-primary-rgb),.25);color:var(--color-text);outline:none}.insurance-selected-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.empty-state.small{padding:1rem;text-align:left}.checkbox-list{display:flex;flex-direction:column;gap:.25rem;max-height:340px;overflow-y:auto;border:1px solid var(--color-border);border-radius:.5rem;padding:.5rem;background:var(--color-surface)}.checkbox-row{display:flex;align-items:center;gap:.65rem;padding:.5rem .65rem;border-radius:.375rem;font-size:.875rem;color:var(--color-text);cursor:pointer;transition:background .15s}.checkbox-row:hover{background:var(--color-bg)}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.checkbox-row input[type=checkbox]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.service-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.375rem;transition:background .15s}.service-row.is-selected{background:rgba(var(--color-primary-rgb),.06)}.service-row .checkbox-row{flex:1}.star-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-right:.35rem;padding:0;border:1px solid var(--color-border);border-radius:.375rem;background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;transition:all .2s}.star-toggle svg{fill:none}.star-toggle:not(:disabled):hover,.star-toggle:focus-visible{color:var(--color-primary);border-color:var(--color-primary);outline:none}.star-toggle.is-featured{color:var(--color-gold, #bf8b3f);border-color:var(--color-gold, #bf8b3f)}.star-toggle.is-featured svg{fill:var(--color-gold, #bf8b3f)}.star-toggle:disabled{opacity:.4;cursor:not-allowed}.showcase-list{display:flex;flex-direction:column;gap:1rem}.showcase-card{display:flex;gap:1rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;transition:border-color .2s}.showcase-card:hover{border-color:var(--color-primary)}.showcase-thumbs{display:flex;gap:.25rem;flex-shrink:0}.showcase-thumbs img,.showcase-thumb-empty{width:64px;height:64px;border-radius:.375rem;object-fit:cover;background:var(--color-bg)}.showcase-thumb-empty{display:flex;align-items:center;justify-content:center;font-size:.625rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);border:1px dashed var(--color-border)}.showcase-info{flex:1;min-width:0}.showcase-title-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.showcase-title-row h4{font-size:1rem;font-weight:600;margin:0;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{flex-shrink:0;padding:.15rem .5rem;border-radius:1rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.badge-published{background:#1f7a4d24;color:var(--color-success, #1f7a4d)}.badge-draft{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border)}.showcase-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.showcase-reorder{display:flex;flex-direction:column;gap:.25rem}.showcase-reorder .btn-icon{width:28px;height:24px}.showcase-modal{max-width:560px}.photo-slot{display:flex;flex-direction:column;gap:.5rem}.photo-slot-preview{width:100%;aspect-ratio:4 / 3;border:1px dashed var(--color-border);border-radius:.5rem;background:var(--color-bg);display:flex;align-items:center;justify-content:center;overflow:hidden}.photo-slot-preview img{width:100%;height:100%;object-fit:cover}.photo-slot-placeholder{font-size:.75rem;color:var(--color-text-muted)}.photo-slot-actions{display:flex;align-items:center;gap:.5rem}.hours-grid{display:flex;flex-direction:column;gap:.4rem}.hours-row{display:flex;align-items:center;gap:.75rem}.hours-day{flex-shrink:0;width:3rem;font-size:.8125rem;font-weight:500;color:var(--color-text-muted)}.hours-row input{flex:1}.publish-modal{max-width:480px}.publish-modal-body{display:flex;flex-direction:column;gap:1rem}.publish-intro{font-size:.875rem;color:var(--color-text);margin:0;line-height:1.5}.attestation-options{display:flex;flex-direction:column;gap:.75rem;border:none;margin:0;padding:0}.attestation-option{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem;border:1px solid var(--color-border);border-radius:.5rem;cursor:pointer;transition:border-color .2s,background .2s}.attestation-option:hover{border-color:var(--color-primary)}.attestation-option:focus-within{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.06)}.attestation-option input[type=radio]{margin-top:.15rem;width:16px;height:16px;accent-color:var(--color-primary);flex-shrink:0;cursor:pointer}.attestation-text{font-size:.875rem;color:var(--color-text);line-height:1.45}.attestation-template-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--color-primary);text-decoration:none}.attestation-template-link:hover{text-decoration:underline}@media(max-width:768px){.showcase-card{flex-wrap:wrap}.showcase-actions{width:100%;justify-content:flex-end}.showcase-reorder{flex-direction:row}}.btn-sm{padding:.45rem .85rem;font-size:.8125rem;border-radius:var(--cv-radius-sm)}.btn-text-sm{padding:.25rem 0;background:none;border:none;color:var(--color-text-muted);font-size:.8125rem;cursor:pointer;transition:color .15s}.btn-text-sm:hover{color:var(--color-error, #ef4444)}.back-link .back-link-label{white-space:nowrap}.progress-ring{position:relative;display:inline-flex;width:34px;height:34px;flex-shrink:0}.progress-ring svg{transform:rotate(-90deg)}.progress-ring-track{fill:none;stroke:#1c2a241a;stroke-width:3}.progress-ring-fill{fill:none;stroke:var(--color-primary);stroke-width:3;stroke-linecap:round;stroke-dasharray:97.39;stroke-dashoffset:97.39;transition:stroke-dashoffset .55s cubic-bezier(.4,0,.2,1),stroke .3s ease}.progress-ring.is-complete .progress-ring-fill{stroke:var(--color-success, #22c55e)}.progress-ring-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em}.completeness-pill{display:inline-flex;align-items:center;gap:.65rem;padding:.4rem .75rem .4rem .4rem;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-full, 9999px);cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s;max-width:100%}.completeness-pill:hover{border-color:rgba(var(--color-primary-rgb),.5);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.08)}.completeness-pill-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;min-width:0}.completeness-pill-title{font-size:.8125rem;font-weight:600;color:var(--color-text);white-space:nowrap}.completeness-pill-sub{font-size:.6875rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:12rem}.completeness-pill-caret{color:var(--color-text-muted);flex-shrink:0;transition:transform .2s}.completeness-pill[aria-expanded=true] .completeness-pill-caret{transform:rotate(180deg)}.checklist-popover{position:fixed;top:72px;left:50%;transform:translate(-50%);width:min(440px,calc(100vw - 1.5rem));max-height:calc(100vh - 96px);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border-hover, rgba(28, 42, 36, .15));border-radius:var(--cv-radius);box-shadow:var(--shadow-xl, 0 26px 60px rgba(20, 40, 33, .16));z-index:200;padding:1rem 1.1rem 1.1rem;animation:checklistIn .18s ease}.checklist-popover.hidden{display:none}@keyframes checklistIn{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.checklist-popover-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.85rem}.checklist-popover-title{font-family:var(--font-display, "Fraunces", Georgia, serif);font-size:1.1rem;font-weight:600;letter-spacing:-.01em;margin:0}.checklist-popover-sub{font-size:.8125rem;color:var(--color-text-muted);margin:.15rem 0 0}.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.checklist-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.6rem .7rem;background:transparent;border:1px solid transparent;border-radius:var(--cv-radius-sm);text-align:left;cursor:pointer;color:var(--color-text);transition:background .15s,border-color .15s}.checklist-item:hover{background:var(--color-bg);border-color:var(--color-border)}.checklist-item.is-done{cursor:default}.checklist-item.is-done:hover{background:transparent;border-color:transparent}.checklist-mark{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:2px solid var(--color-border-hover, rgba(28, 42, 36, .2));display:flex;align-items:center;justify-content:center;color:transparent;transition:all .2s}.checklist-item.is-done .checklist-mark{background:var(--color-success, #1f7a4d);border-color:var(--color-success, #1f7a4d);color:#fff}.checklist-label{flex:1;font-size:.875rem;font-weight:500}.checklist-item.is-done .checklist-label{color:var(--color-text-muted);text-decoration:line-through;text-decoration-color:#1c2a2440}.checklist-go{flex-shrink:0;color:var(--color-primary);opacity:0;transition:opacity .15s}.checklist-item:not(.is-done):hover .checklist-go{opacity:1}.sidebar-progress{padding:0 1.5rem 1.25rem;margin-bottom:.5rem;border-bottom:1px solid var(--color-border)}.sidebar-progress-head{display:flex;align-items:baseline;gap:.4rem;margin-bottom:.5rem}.sidebar-progress-pct{font-family:var(--font-display, "Fraunces", Georgia, serif);font-size:1.5rem;font-weight:600;color:var(--color-primary);letter-spacing:-.02em}.sidebar-progress-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}.progress-bar-track{height:7px;background:#1c2a241a;border-radius:999px;overflow:hidden}.progress-bar-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent-secondary, #0d5548));transition:width .55s cubic-bezier(.4,0,.2,1),background .3s}.progress-bar-fill.is-complete{background:linear-gradient(90deg,var(--color-success, #1f7a4d),#2f9e63)}.cv-nav-group{padding:.5rem 0}.cv-nav-group+.cv-nav-group{border-top:1px solid var(--color-border);margin-top:.25rem}.cv-nav-group-title{padding:.5rem 1.5rem .4rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);margin:0}.cv-nav-link{display:flex;align-items:center;gap:.6rem}.nav-check{flex-shrink:0;width:16px;height:16px;border-radius:50%;border:1.5px solid var(--color-border-hover, rgba(28, 42, 36, .2));display:flex;align-items:center;justify-content:center;transition:all .2s}.nav-check.is-done{background:var(--color-success, #1f7a4d);border-color:var(--color-success, #1f7a4d)}.nav-check.is-done:after{content:"";width:8px;height:5px;border-left:2px solid #ffffff;border-bottom:2px solid #ffffff;transform:rotate(-45deg) translateY(-1px)}.nav-label{flex:1;min-width:0}.setup-banner-slot:empty{display:none}.setup-card{position:relative;padding:1.5rem 1.6rem;border-radius:var(--cv-radius);margin-bottom:1.75rem;border:1px solid var(--color-border);overflow:hidden}.setup-card h2{font-family:var(--font-display, "Fraunces", Georgia, serif);font-size:1.4rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .4rem}.setup-card p{margin:0;color:var(--color-text-secondary, #4c5a52);line-height:1.55;font-size:.9375rem}.setup-welcome{background:radial-gradient(120% 140% at 0% 0%,rgba(var(--color-primary-rgb),.18),transparent 55%),var(--color-surface);border-color:rgba(var(--color-primary-rgb),.3)}.setup-welcome-emoji{font-size:2rem;display:block;margin-bottom:.5rem}.setup-welcome-actions{display:flex;align-items:center;gap:.9rem;margin-top:1.15rem;flex-wrap:wrap}.setup-welcome-time{font-size:.8125rem;color:var(--color-text-muted);display:inline-flex;align-items:center;gap:.4rem}.setup-live{background:radial-gradient(120% 140% at 100% 0%,rgba(var(--color-success-rgb),.16),transparent 55%),var(--color-surface);border-color:rgba(var(--color-success-rgb),.35)}.setup-live-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-success, #22c55e);margin-bottom:.6rem}.setup-live-badge .live-dot{width:8px;height:8px;border-radius:50%;background:var(--color-success, #22c55e);box-shadow:0 0 rgba(var(--color-success-rgb),.6);animation:livePulse 2s infinite}@keyframes livePulse{0%{box-shadow:0 0 rgba(var(--color-success-rgb),.5)}70%{box-shadow:0 0 0 7px rgba(var(--color-success-rgb),0)}to{box-shadow:0 0 rgba(var(--color-success-rgb),0)}}.setup-live-url{display:flex;align-items:center;gap:.5rem;margin:.9rem 0 1rem;padding:.6rem .5rem .6rem .9rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--cv-radius-sm)}.setup-live-url code{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;color:var(--color-text);word-break:break-all}.setup-live-actions{display:flex;gap:.5rem;flex-wrap:wrap}.setup-publish{background:radial-gradient(120% 140% at 0% 0%,rgba(var(--color-primary-rgb),.14),transparent 55%),var(--color-surface);border-color:rgba(var(--color-primary-rgb),.28)}.setup-missing{list-style:none;margin:1rem 0 1.15rem;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.setup-missing li{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;font-size:.8125rem;color:var(--color-text-secondary, #4c5a52);cursor:pointer;transition:border-color .15s,color .15s}.setup-missing li:hover{border-color:rgba(var(--color-primary-rgb),.5);color:var(--color-text)}.setup-missing li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-warning, #f59e0b)}.setup-card-actions{display:flex;gap:.6rem;flex-wrap:wrap}.cv-section.section-flash>h2,.cv-section.section-flash>.section-header>h2,.cv-section.section-flash>.section-title-row>h2{animation:sectionFlash 1.4s ease}@keyframes sectionFlash{0%,to{color:var(--color-text)}25%{color:var(--color-primary)}}.cv-section.section-flash{position:relative}.cv-section.section-flash:before{content:"";position:absolute;left:-1rem;top:-.5rem;bottom:-.5rem;width:3px;border-radius:3px;background:var(--color-primary);animation:flashBar 1.4s ease forwards}@keyframes flashBar{0%{opacity:0}15%{opacity:1}to{opacity:0}}.autosave-indicator{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--color-text-muted);opacity:0;transition:opacity .25s;margin-left:.5rem}.autosave-indicator.is-visible{opacity:1}.autosave-indicator.is-saving{color:var(--color-text-muted)}.autosave-indicator.is-saved{color:var(--color-success, #22c55e)}.section-title-row{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}.section-title-row h2{margin:0}.field-error{font-size:.75rem;color:var(--color-error, #ef4444);margin:.15rem 0 0}.form-group input.has-error,.form-group textarea.has-error{border-color:var(--color-error, #ef4444)}.photo-upload-actions{display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}.photo-upload-actions .form-hint{margin:.1rem 0 0}.photo-preview{cursor:pointer;transition:border-color .2s,background .2s}.photo-preview:hover,.photo-preview:focus-visible,.photo-preview.is-dragover{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.06);outline:none}.photo-preview.is-uploading{opacity:.6;pointer-events:none}.showcase-photos-desc{margin-top:.25rem}.showcase-photo-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem}.showcase-photo-arrow{color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;padding-top:1.5rem}.photo-slot-label{margin-bottom:.4rem}.photo-slot-tag{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.photo-slot-tag-before{background:#1c2a2414;color:var(--color-text-secondary, #4c5a52)}.photo-slot-tag-after{background:rgba(var(--color-primary-rgb),.18);color:var(--color-primary)}.photo-dropzone{cursor:pointer;transition:border-color .2s,background .2s}.photo-dropzone:hover,.photo-dropzone:focus-visible,.photo-dropzone.is-dragover{border-color:var(--color-primary);border-style:solid;background:rgba(var(--color-primary-rgb),.06);outline:none}.photo-dropzone.is-dragover{box-shadow:inset 0 0 0 2px rgba(var(--color-primary-rgb),.4)}.photo-slot-placeholder{display:flex;flex-direction:column;align-items:center;gap:.4rem;color:var(--color-text-muted);font-size:.75rem;text-align:center;line-height:1.3}.photo-slot-preview.is-uploading:after{content:"";position:absolute;inset:0;background:#f6f1e799;background-image:linear-gradient(90deg,transparent,rgba(var(--color-primary-rgb),.3),transparent);background-size:200% 100%;animation:uploadShimmer 1.1s infinite}.photo-slot-preview{position:relative}@keyframes uploadShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.showcase-card.is-published{border-color:rgba(var(--color-success-rgb),.4);box-shadow:inset 3px 0 0 0 var(--color-success, #22c55e)}.showcase-card.is-draft{border-style:dashed}.badge-published:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-success, #22c55e);margin-right:.35rem;vertical-align:middle}.qr-modal{max-width:340px;text-align:center}.qr-canvas-wrap{display:flex;justify-content:center;padding:1rem;background:#fff;border-radius:var(--cv-radius-sm);margin:.5rem auto 1rem;width:fit-content}.qr-canvas-wrap img,.qr-canvas-wrap canvas{display:block;width:220px;height:220px}.qr-modal .qr-url{font-size:.8125rem;color:var(--color-text-muted);word-break:break-all;margin:0 0 .5rem}.cv-content{max-width:860px;margin:0 auto;width:100%;padding:2.25rem 2rem 4rem}.cv-section h2{letter-spacing:-.01em}.cv-item,.showcase-card{box-shadow:var(--cv-card-shadow)}.form-group input,.form-group textarea,.form-group select{background:#fff}.form-group input:hover,.form-group textarea:hover,.form-group select:hover{border-color:var(--color-border-hover, rgba(28, 42, 36, .22))}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.12)}.section-save .btn-primary{min-width:9rem}@media(max-width:768px){.cv-header{flex-direction:row;flex-wrap:wrap;gap:.6rem;padding:.65rem .85rem}.cv-header-left,.cv-header-center,.cv-header-right{flex:none;width:auto}.cv-header-left{order:1}.cv-header-right{order:2;margin-left:auto}.cv-header-center{order:3;width:100%}.back-link .back-link-label,.btn-label{display:none}.cv-header-right .btn-primary,.cv-header-right .btn-secondary{padding:.5rem .7rem}.completeness-pill{width:100%;justify-content:flex-start}.completeness-pill-sub{max-width:55vw}.checklist-popover{inset:auto 0 0;transform:none;width:100%;max-height:70vh;border-radius:var(--cv-radius) var(--cv-radius) 0 0;animation:checklistUp .2s ease}@keyframes checklistUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.cv-sidebar{position:sticky;top:0;z-index:90;width:100%;height:auto;padding:.75rem 0 .5rem;background:var(--color-surface);border-right:none;border-bottom:1px solid var(--color-border)}.sidebar-progress{padding:0 .85rem .6rem;margin-bottom:.35rem}.sidebar-progress-head{margin-bottom:.35rem}.sidebar-progress-pct{font-size:1.05rem}.cv-nav-group{padding:0}.cv-nav-group+.cv-nav-group{border-top:none;margin-top:0}.cv-nav-group-title{display:none}.cv-nav{display:flex;gap:.4rem;overflow-x:auto;padding:.35rem .85rem;scrollbar-width:none}.cv-nav::-webkit-scrollbar{display:none}.cv-nav-link{padding:.45rem .85rem;border-left:none;border:1px solid var(--color-border);border-radius:999px;white-space:nowrap;font-size:.8125rem}.cv-nav-link.active{border-left:1px solid var(--color-primary);border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.12)}.nav-check{width:14px;height:14px}.nav-check:not(.is-done){display:none}.cv-content{padding:1.5rem 1.1rem 3rem}.showcase-photo-grid{grid-template-columns:1fr}.showcase-photo-arrow{transform:rotate(90deg);padding:0;justify-self:center}}.attestation-truthfulness{margin-top:.75rem;border-top:1px dashed var(--color-border, rgba(28, 42, 36, .12));padding-top:.9rem}@media(prefers-reduced-motion:reduce){.setup-live-badge .live-dot{animation:none}.photo-slot-preview.is-uploading:after{animation:none}.cv-section.section-flash>h2,.cv-section.section-flash>.section-header>h2,.cv-section.section-flash>.section-title-row>h2,.cv-section.section-flash:before{animation:none}.progress-bar-fill,.progress-ring-fill{transition:none}.cv-item:hover,.showcase-card:hover{transform:none}}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%) translateY(12px);z-index:1100;max-width:min(92vw,480px);background:var(--color-surface, #fffdf8);color:var(--color-text, #1c2a24);border:1px solid var(--color-border-hover, rgba(28, 42, 36, .18));border-left:4px solid var(--color-success, #1f7a4d);border-radius:10px;box-shadow:0 12px 32px #1428212e;padding:.8rem 1.1rem;font-size:.92rem;line-height:1.45;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.toast.toast-error{border-left-color:var(--color-error, #c0392b)}.nav-icon-ai{flex-shrink:0;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-primary)}.ai-chat{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--cv-radius);background:var(--color-surface);overflow:hidden;box-shadow:var(--cv-card-shadow)}.ai-thread{flex:1;min-height:320px;max-height:56vh;overflow-y:auto;padding:var(--cv-space-5);display:flex;flex-direction:column;gap:var(--cv-space-4);scroll-behavior:smooth}.ai-greeting{margin:auto;max-width:30rem;text-align:center;padding:var(--cv-space-5) var(--cv-space-4)}.ai-greeting-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:var(--color-primary);background:rgba(var(--color-primary-rgb),.12);margin-bottom:var(--cv-space-3)}.ai-greeting-icon svg{width:24px;height:24px}.ai-greeting h3{font-family:var(--font-display, "Fraunces", Georgia, serif);font-size:1.3rem;font-weight:600;margin:0 0 .5rem;color:var(--color-text)}.ai-greeting p{color:var(--color-text-muted);line-height:1.55;font-size:.9375rem;margin:0 0 1.15rem}.ai-msg{display:flex}.ai-msg-assistant{justify-content:flex-start}.ai-msg-user{justify-content:flex-end}.ai-msg-bubble{max-width:80%;padding:.7rem .95rem;border-radius:1rem;font-size:.9375rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.ai-msg-assistant .ai-msg-bubble{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);border-bottom-left-radius:.35rem}.ai-msg-user .ai-msg-bubble{background:rgba(var(--color-primary-rgb),.12);border:1px solid rgba(var(--color-primary-rgb),.28);color:var(--color-text);border-bottom-right-radius:.35rem}.ai-typing{display:inline-flex;align-items:center;gap:.28rem}.ai-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--color-text-muted);opacity:.5;animation:aiTyping 1.2s infinite ease-in-out}.ai-typing-dot:nth-child(2){animation-delay:.15s}.ai-typing-dot:nth-child(3){animation-delay:.3s}@keyframes aiTyping{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-3px);opacity:.9}}.ai-patch-card{align-self:stretch;margin-top:-.25rem;padding:var(--cv-space-4);border:1px solid rgba(var(--color-primary-rgb),.3);background:rgba(var(--color-primary-rgb),.05);border-radius:var(--cv-radius-sm)}.ai-patch-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.ai-patch-head h4{font-family:var(--font-display, "Fraunces", Georgia, serif);margin:0;font-size:1rem;font-weight:600;color:var(--color-text)}.ai-patch-mark{display:inline-flex;color:var(--color-primary)}.ai-patch-rows{display:flex;flex-direction:column;gap:.5rem}.ai-patch-row{display:grid;grid-template-columns:minmax(6.5rem,34%) 1fr;gap:.75rem;font-size:.875rem;padding-bottom:.5rem;border-bottom:1px solid rgba(var(--color-primary-rgb),.12)}.ai-patch-row:last-child{padding-bottom:0;border-bottom:none}.ai-patch-label{color:var(--color-text-muted);font-weight:500}.ai-patch-value{color:var(--color-text);word-break:break-word}.ai-patch-actions{display:flex;gap:.6rem;margin-top:var(--cv-space-4)}.ai-patch-card.is-applied{border-color:rgba(var(--color-success-rgb),.4);background:rgba(var(--color-success-rgb),.07)}.ai-patch-card.is-applied .ai-patch-mark{color:var(--color-success, #1f7a4d)}.ai-patch-note{margin:-.25rem 0 0;font-size:.8125rem;font-style:italic;color:var(--color-text-muted)}.ai-error{align-self:stretch;display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.75rem .95rem;border:1px solid var(--color-error, #c0392b);background:#c0392b14;border-radius:var(--cv-radius-sm);font-size:.875rem}.ai-error-text{color:var(--color-text)}.ai-error-retry{color:var(--color-primary)}.ai-error-retry:hover{color:var(--color-primary);text-decoration:underline}.ai-composer{display:flex;align-items:flex-end;gap:.6rem;padding:var(--cv-space-3) var(--cv-space-4);border-top:1px solid var(--color-border);background:var(--color-surface)}.ai-input{flex:1;resize:none;min-height:42px;max-height:160px;padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:var(--cv-radius-sm);background:var(--color-bg);color:var(--color-text);font-family:inherit;font-size:.9375rem;line-height:1.4;transition:border-color .2s}.ai-input:focus{outline:none;border-color:var(--color-primary)}.ai-send-btn{flex-shrink:0;width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center}.ai-send-btn:disabled{opacity:.5;cursor:not-allowed}.ai-composer-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 var(--cv-space-4) var(--cv-space-3)}.ai-composer-hint{font-size:.75rem;color:var(--color-text-muted)}.ai-restart-btn:hover{color:var(--color-primary)}@media(max-width:768px){.ai-thread{min-height:50vh;max-height:none;padding:var(--cv-space-4)}.ai-msg-bubble{max-width:88%}.ai-patch-row{grid-template-columns:1fr;gap:.15rem}.ai-patch-label{font-size:.8125rem}}@media(prefers-reduced-motion:reduce){.ai-typing-dot{animation:none}.ai-thread{scroll-behavior:auto}}
