@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{font-family:Inter,system-ui,sans-serif;color:#0f172a;background:#f8fafc;font-synthesis:none;--primary: #1d4ed8;--navy: #172554;--teal: #0d9488;--border: #e2e8f0;--muted: #64748b}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}.skip-link{position:fixed;top:-60px;left:16px;z-index:100;padding:10px 16px;background:#fff;border-radius:8px}.skip-link:focus{top:12px}.app-shell{min-height:100vh}.topbar{height:68px;display:grid;grid-template-columns:280px 1fr auto;align-items:center;padding:0 32px;background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;color:var(--navy);letter-spacing:-.02em}.brand-mark{width:36px;height:36px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#0d9488);border-radius:10px}.topbar nav{display:flex;gap:6px;height:100%}.topbar nav a{display:flex;align-items:center;gap:8px;padding:0 16px;color:#475569;text-decoration:none;font-size:14px;font-weight:600;border-bottom:2px solid transparent}.topbar nav a.active{color:var(--primary);border-color:var(--primary)}.user-menu{display:flex;align-items:center;gap:10px;color:#475569;font-size:14px}.page{width:min(100% - 48px,1280px);margin:0 auto;padding:46px 0 70px}.narrow-page{max-width:980px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.page-heading h1{display:flex;align-items:center;gap:10px;margin:6px 0 8px;font-size:clamp(28px,4vw,38px);letter-spacing:-.04em}.page-heading p{margin:0;color:var(--muted);max-width:680px;line-height:1.6}.eyebrow{color:var(--teal);text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.12em}.button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border-radius:8px;border:1px solid transparent;font-weight:700;font-size:14px;text-decoration:none;transition:.16s ease}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.button.primary{color:#fff;background:var(--primary);box-shadow:0 6px 16px #1d4ed82e}.button.primary:hover{background:#1e40af}.button.secondary{color:#1e3a8a;background:#fff;border-color:#cbd5e1}.button.ghost{color:#334155;background:transparent}.button.full{width:100%}.icon-button{width:38px;height:38px;display:inline-grid;place-items:center;padding:0;border:0;border-radius:8px;color:#475569;background:transparent}.icon-button:hover{background:#f1f5f9;color:#0f172a}.icon-button.danger:hover{color:#b91c1c;background:#fef2f2}.icon-button:disabled{opacity:.35;cursor:not-allowed}.page-loader{min-height:220px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.spinner{width:22px;height:22px;border:2px solid #cbd5e1;border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.spinner.small{width:16px;height:16px;border-color:#fff6;border-top-color:#fff}.spinner.tiny{width:13px;height:13px}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:12px 14px;border-radius:8px;font-size:14px;margin:12px 0}.alert.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert.success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(420px,.95fr);background:#fff}.auth-hero{padding:44px clamp(40px,7vw,100px);display:flex;flex-direction:column;color:#fff;background:radial-gradient(circle at 10% 10%,rgb(13 148 136 / .35),transparent 34%),linear-gradient(145deg,#172554 5%,#1e3a8a 58%,#0f766e 150%);overflow:hidden}.brand-light{color:#fff}.hero-copy{margin:auto 0;max-width:630px}.hero-copy .eyebrow{color:#99f6e4}.hero-copy h1{margin:14px 0 20px;max-width:560px;font-size:clamp(44px,5vw,68px);line-height:1.02;letter-spacing:-.055em}.hero-copy p{color:#dbeafe;font-size:18px;line-height:1.7}.hero-copy ul{list-style:none;margin:36px 0 0;padding:0;display:grid;gap:14px}.hero-copy li{display:flex;align-items:center;gap:10px;color:#e0f2fe}.auth-panel{display:grid;place-items:center;padding:40px}.auth-card{width:min(100%,430px)}.auth-card h2{margin:8px 0;font-size:32px;letter-spacing:-.035em}.auth-card>p{color:var(--muted);line-height:1.5}label{display:grid;gap:7px;margin:16px 0;color:#334155;font-size:13px;font-weight:700}input,textarea,select{width:100%;min-height:42px;padding:10px 12px;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;line-height:1.5}input:focus,textarea:focus,select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #dbeafe;outline:0}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;left:12px;top:12px;color:#94a3b8}.input-with-icon input{padding-left:40px}.field-help,.label-hint{color:var(--muted);font-size:12px;font-weight:400}.check-row{display:flex;align-items:center;gap:9px;font-weight:500}.check-row input{width:17px;min-height:17px}.auth-switch{text-align:center;font-size:14px}.auth-switch a{color:var(--primary);font-weight:700}.mobile-brand{display:none}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px}.resume-card{min-height:230px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 4px 16px #0f172a0a;overflow:hidden;transition:transform .15s,box-shadow .15s}.resume-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #0f172a17}.card-main{flex:1;display:flex;gap:18px;padding:22px;text-align:left;border:0;background:#fff}.resume-thumbnail{--accent: #1d4ed8;width:92px;height:126px;flex:none;padding:15px 12px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 3px 10px #0f172a14}.resume-thumbnail:before{content:"";display:block;width:48px;height:5px;background:var(--accent);margin-bottom:13px}.resume-thumbnail span{display:block;height:3px;margin:7px 0;background:#cbd5e1}.resume-thumbnail span.short{width:65%}.card-copy h2{margin:5px 0 8px;font-size:17px}.card-copy p{margin:0 0 24px;color:#475569;font-size:14px}.card-copy small{color:#94a3b8;font-size:11px;line-height:1.5}.card-actions{display:flex;justify-content:flex-end;gap:2px;padding:8px 12px;border-top:1px solid #f1f5f9}.skeleton-card{background:linear-gradient(90deg,#f8fafc,#f1f5f9,#f8fafc);background-size:200%;animation:shimmer 1.2s infinite}@keyframes shimmer{to{background-position:-200% 0}}.empty-state{min-height:390px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:48px;background:#fff;border:1px dashed #cbd5e1;border-radius:16px}.empty-state h2{margin:18px 0 8px}.empty-state p{color:var(--muted);max-width:500px}.empty-icon{width:62px;height:62px;display:grid;place-items:center;color:var(--primary);background:#eff6ff;border-radius:18px}.modal-backdrop,.drawer-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;background:#0f172a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{position:relative;width:min(100%,540px);max-height:calc(100vh - 40px);overflow:auto;padding:30px;background:#fff;border-radius:16px;box-shadow:0 24px 70px #0f172a3d}.modal h2{margin:7px 0;font-size:27px}.modal>p{color:var(--muted)}.modal-close{position:absolute;top:16px;right:16px}fieldset{margin:18px 0;padding:0;border:0}legend{margin-bottom:10px;font-size:13px;font-weight:700;color:#334155}.choice-card{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:12px;margin:10px 0;padding:15px;border:1px solid var(--border);border-radius:10px;cursor:pointer}.choice-card.selected{border-color:#60a5fa;background:#eff6ff}.choice-card input{width:16px;min-height:16px}.choice-card strong,.choice-card small{display:block}.choice-card small{margin-top:3px;color:var(--muted);font-weight:400}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.form-card{padding:28px;background:#fff;border:1px solid var(--border);border-radius:14px}.form-card h2{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}.form-note{padding:12px;color:#475569;background:#f8fafc;border-radius:8px;font-size:13px}.profile-photo-field{display:flex;align-items:center;gap:20px;margin:4px 0 24px;padding:18px;border:1px solid var(--border);border-radius:12px;background:#f8fafc}.profile-photo-preview{width:96px;height:96px;flex:0 0 96px;display:grid;place-items:center;overflow:hidden;border:3px solid white;border-radius:50%;background:#e2e8f0;color:#64748b;box-shadow:0 2px 10px #0f172a1a}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.profile-photo-actions{min-width:0}.profile-photo-actions>p{margin:4px 0 12px;color:var(--muted);font-size:13px}.photo-buttons{display:flex;flex-wrap:wrap;gap:8px}.photo-buttons input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.danger-text,.field-error{color:#b91c1c!important}.field-error{font-weight:600}.editor-page{height:100vh;display:flex;flex-direction:column;background:#e9eef5}.editor-toolbar{height:66px;flex:none;display:flex;align-items:center;gap:10px;padding:0 18px;background:#fff;border-bottom:1px solid var(--border);z-index:10}.resume-name-input{width:min(320px,32vw);border-color:transparent;font-weight:700}.resume-name-input:hover{border-color:var(--border)}.save-status{min-width:90px;display:flex;align-items:center;gap:6px;color:#15803d;font-size:12px}.save-status.saving{color:#64748b}.save-status.error{color:#b91c1c}.toolbar-spacer{flex:1}.editor-layout{min-height:0;flex:1;display:grid;grid-template-columns:minmax(400px,44%) 1fr}.editor-panel{overflow-y:auto;padding:20px;background:#f8fafc;border-right:1px solid #cbd5e1}.preview-panel{min-width:0;overflow:auto;padding:0 24px 50px;background:#e9eef5}.preview-toolbar{height:50px;position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;color:#64748b;background:#e9eef5eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:12px}.editor-section{margin-bottom:11px;background:#fff;border:1px solid var(--border);border-radius:11px;overflow:hidden}.editor-section.active{border-color:#bfdbfe;box-shadow:0 4px 14px #2563eb0f}.editor-section>header{min-height:54px;display:flex;align-items:center;padding:0 8px 0 4px}.section-toggle{flex:1;min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;text-align:left;font-weight:700;color:#1e293b;background:transparent;border:0}.editor-section.active .section-toggle svg{transform:rotate(180deg)}.section-body{padding:4px 16px 20px;border-top:1px solid #f1f5f9}.compact-grid{gap:0 12px}.item-card{position:relative;margin:13px 0;padding:14px;background:#f8fafc;border:1px solid var(--border);border-radius:9px}.item-actions{display:flex;justify-content:flex-end;height:30px}.stack-list{display:grid;gap:2px}.appearance-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.appearance-row input[type=color]{padding:5px}.order-list{display:grid;gap:6px}.order-list>div{display:flex;align-items:center;padding:7px 9px;background:#f8fafc;border-radius:7px}.order-list span{flex:1;font-size:13px}.preview-wrap{max-width:800px;margin:10px auto}.resume-paper{--accent: #1d4ed8;width:794px;min-height:1123px;padding:60px 62px;background:#fff;box-shadow:0 12px 38px #0f172a24;color:#0f172a;font-family:Arial,sans-serif;font-size:14px;line-height:1.38;transform-origin:top center}.resume-paper.compact{padding-top:50px;font-size:13px;line-height:1.28}.resume-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding-bottom:14px;border-bottom:2px solid var(--accent)}.resume-header-copy{min-width:0;flex:1}.resume-profile-photo{width:92px;height:92px;flex:0 0 92px;object-fit:cover;border:3px solid color-mix(in srgb,var(--accent) 22%,white);border-radius:50%}.resume-header h1{margin:0;font-size:29px;line-height:1.1;letter-spacing:-.025em}.professional-title{margin:6px 0;color:var(--accent);font-size:15px}.contact-line{margin:5px 0 0;color:#475569;font-size:11px}.resume-section{margin-top:21px;break-inside:avoid}.compact .resume-section{margin-top:15px}.resume-section h2{margin:0 0 9px;padding-bottom:5px;color:var(--accent);border-bottom:1px solid var(--accent);font-size:14px;text-transform:uppercase;letter-spacing:.06em}.resume-section p{margin:5px 0;white-space:pre-wrap}.preview-item{margin:0 0 13px;break-inside:avoid}.preview-item-heading{display:flex;justify-content:space-between;gap:20px}.preview-item-heading span{flex:none;color:#475569;font-size:11px}.preview-subtitle{margin-top:2px;color:#334155;font-size:13px}.preview-item ul{margin:7px 0;padding-left:20px}.preview-item li{margin:3px 0}.inline-list{word-spacing:2px}.version-banner{padding:10px 14px;margin-bottom:10px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:13px;font-weight:700}.mobile-tabs{display:none}.drawer-backdrop{place-items:stretch end;padding:0}.history-drawer{width:min(430px,100vw);height:100%;overflow:auto;padding:24px;background:#fff;box-shadow:-15px 0 45px #0f172a2e}.history-drawer>header{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--border)}.history-drawer h2{margin:6px 0 0}.selected-version{margin:16px 0;padding:13px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px}.selected-version p{margin:0 0 10px;font-size:13px}.version-list{position:relative;padding:9px 0}.version-list:before{content:"";position:absolute;left:18px;top:24px;bottom:24px;width:1px;background:#cbd5e1}.version-item{width:100%;position:relative;display:grid;grid-template-columns:37px 1fr;gap:10px;padding:13px 8px;text-align:left;background:transparent;border:0;border-radius:9px}.version-item:hover,.version-item.selected{background:#f1f5f9}.version-dot{width:28px;height:28px;z-index:1;display:grid;place-items:center;color:var(--primary);background:#eff6ff;border-radius:50%}.version-item strong,.version-item small{display:block}.version-item small{margin-top:3px;color:var(--muted)}@media(max-width:980px){.topbar{grid-template-columns:auto 1fr auto;padding:0 18px}.topbar nav a{font-size:0;padding:0 12px}.topbar nav a svg{width:20px;height:20px}.auth-page{grid-template-columns:1fr}.auth-hero{display:none}.mobile-brand{display:flex;align-items:center;gap:8px;margin-bottom:38px;color:var(--navy);font-weight:800}.editor-layout{display:block}.editor-panel,.preview-panel{display:none;height:calc(100vh - 112px)}.editor-panel.mobile-active,.preview-panel.mobile-active{display:block}.mobile-tabs{height:46px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-bottom:1px solid var(--border)}.mobile-tabs button{color:#64748b;background:#fff;border:0;border-bottom:2px solid transparent;font-weight:700}.mobile-tabs button.active{color:var(--primary);border-color:var(--primary)}.resume-paper{transform:scale(.82);margin-bottom:-190px}.editor-toolbar .button.ghost{font-size:0;width:42px;padding:0}}@media(max-width:640px){.topbar{height:60px;grid-template-columns:1fr auto}.topbar .brand span:last-child{display:none}.topbar nav{position:fixed;left:0;right:0;bottom:0;z-index:30;height:62px;justify-content:space-around;background:#fff;border-top:1px solid var(--border)}.topbar nav a{flex:1;justify-content:center;font-size:11px;flex-direction:column;gap:3px;border:0}.user-menu>span{display:none}.page{width:min(100% - 28px,1280px);padding:30px 0 90px}.page-heading{align-items:stretch;flex-direction:column}.page-heading .button{width:100%}.form-grid,.appearance-row{grid-template-columns:1fr}.profile-photo-field{align-items:flex-start;gap:14px;padding:14px}.profile-photo-preview{width:76px;height:76px;flex-basis:76px}.auth-panel{padding:24px}.auth-card h2{font-size:28px}.card-main{gap:14px}.resume-thumbnail{width:78px;height:108px}.modal{padding:24px 18px}.editor-toolbar{padding:0 8px}.resume-name-input{width:130px}.editor-toolbar .save-status{min-width:25px;font-size:0}.editor-toolbar .button.primary{width:42px;padding:0;font-size:0}.editor-panel{padding:12px}.preview-panel{padding-left:8px;padding-right:8px}.resume-paper{transform:scale(.43);margin-top:-310px;margin-bottom:-640px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
