:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#26352f;background:#f8f9f7;font-synthesis:none;font-size:13px;--green:#205c52;--muted:#88918b;--border:#e4e8e2}*{box-sizing:border-box}body{margin:0}.app-shell{display:flex;min-height:100vh}.rail{width:80px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--border);display:flex;align-items:center;flex-direction:column;z-index:5}.brand{font:bold italic 43px Georgia,serif;color:var(--green);text-decoration:none;height:99px;padding-top:22px;position:relative}.brand span{font:10px sans-serif;position:absolute;right:-8px;top:41px;color:#bcbd86}.rail-button{border:0;background:none;text-decoration:none;display:flex;align-items:center;flex-direction:column;gap:6px;width:56px;padding:12px 0;margin:4px 0;font-size:23px;border-radius:9px;color:#839188}.rail-button small{font-size:10px;font-weight:500}.rail-button.active{color:var(--green);background:#eaf1ec}.rail-button:not(.active):hover{filter:brightness(.97)}.rail-bottom{margin-top:auto;display:flex;align-items:center;flex-direction:column;gap:9px;padding:25px 0;color:#8d978f}.rail-bottom small{font-size:9px}.privacy-icon{font-size:23px}.avatar{background:#edece4;border:4px solid #fff;outline:1px solid #e6e8e1;border-radius:50%;height:40px;width:40px;display:grid;place-items:center;font-size:11px;color:#687267;margin-top:18px}.workspace{margin-left:80px;width:calc(100% - 80px)}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--border);padding:0 35px;display:flex;align-items:center;justify-content:space-between}.breadcrumbs{font-size:12px;color:#969d97;display:flex;gap:16px;align-items:center}.breadcrumbs strong{font-weight:500;color:#4c594f}.header-actions{display:flex;align-items:center;gap:10px}.save-status{color:#839184;font-size:11px;margin-right:14px}.studio-heading{padding:33px 36px 28px;display:flex;align-items:center;justify-content:space-between}.eyebrow{font-size:9px;letter-spacing:1.8px;color:#7c8e7e;font-weight:650;margin-bottom:9px}.studio-heading h1{font-family:Georgia,'Times New Roman',serif;font-size:35px;font-weight:400;letter-spacing:-1.3px;margin:0 0 9px}.studio-heading p{color:#8b938c;margin:0;font-size:12px}.document-chip{background:#fff;border:1px solid var(--border);padding:10px 12px;display:flex;align-items:center;gap:9px;border-radius:6px;font-size:11px;color:#647467}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6f987b}.chip-label{font-size:8px;letter-spacing:.8px;background:#f3f4ef;color:#939b8c;padding:4px 5px;border-radius:3px;margin-left:12px}.studio{display:grid;grid-template-columns:370px minmax(0,1fr);margin:0 35px 25px;min-height:calc(100vh - 248px);border:1px solid #dde3db;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 4px 18px #2e423706}.editor-panel{border-right:1px solid #dde3db;display:flex;flex-direction:column;min-width:0}.panel-tabs{height:60px;display:flex;padding:0 22px;gap:23px;border-bottom:1px solid var(--border);flex-shrink:0}.tab{position:relative;background:none;border:0;font-size:11px;color:#8c958c;padding:0;white-space:nowrap}.tab.active{color:var(--green);font-weight:650}.tab.active:after{content:'';height:2px;background:var(--green);position:absolute;bottom:0;left:0;right:0}.tiny-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#a7af87;margin:0 0 2px 4px}.panel-intro{display:flex;align-items:center;justify-content:space-between;padding:24px 23px 20px}.panel-intro h2{font-size:13px;font-weight:600;margin:0 0 7px;letter-spacing:-.2px}.panel-intro p{font-size:10px;color:#949b94;margin:0}.subtle-icon{font-size:22px;color:#9ca99a}.sections{padding:0 18px;display:flex;flex-direction:column;gap:9px}.section-card{border:1px solid #e4e8e1;border-radius:7px;background:#fff;overflow:hidden}.section-card.expanded{border-color:#c6d6c7;box-shadow:0 2px 5px #2f574b05}.section-row{display:flex;align-items:center;padding-left:7px}.section-head{display:flex;align-items:center;gap:11px;border:0;background:transparent;width:100%;text-align:left;padding:15px 13px;min-width:0}.section-row .section-head{padding-left:4px}.expanded>.section-head,.expanded>.section-row{background:#f7f9f5}.section-symbol{width:28px;height:29px;background:#f0f3ed;color:#6d8471;border-radius:5px;display:grid;place-items:center;font-size:17px;flex-shrink:0}.section-title{font-size:11px;font-weight:600;flex:1}.section-title small{display:block;font-weight:400;font-size:9px;color:#9ba297;margin-top:4px}.chevron{color:#939e91;font-size:16px}.column-badge{font-size:8px;background:#f4f5f0;color:#959e90;border-radius:3px;padding:3px 5px}.drag-handle{padding:0;color:#bdc6b8;border:0;background:none;cursor:grab;font-size:19px;width:13px}.section-body{padding:15px 13px 5px;border-top:1px solid #e9ede5}.field{display:block;margin-bottom:13px;min-width:0}.field>span{display:block;font-size:9px;font-weight:500;color:#758170;margin-bottom:7px}input:not([type=range]):not([type=color]),textarea,select{width:100%;border:1px solid #e0e5dc;background:#fff;border-radius:4px;padding:10px 9px;outline:none;color:#43523f;font-size:10px;min-width:0}input:focus,textarea:focus,select:focus{border-color:#7d9f84;box-shadow:0 0 0 2px #62897512}textarea{resize:vertical;line-height:1.7;min-height:86px}select{padding-right:5px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.add-section{display:flex;align-items:center;justify-content:center;gap:7px;width:calc(100% - 36px);margin:15px 18px 17px;padding:13px;border:1px dashed #c5d3c1;border-radius:6px;background:#fcfdf9;color:#687d60;font-size:17px}.add-section span{font-size:11px}.text-button{border:0;background:none;font-size:10px;color:#71846e;padding:3px 0}.local-note{margin-top:auto;padding:20px 23px;display:flex;gap:11px;border-top:1px solid #edf0e9;background:#fcfdf9;color:#8d9a80}.local-note>span{font-size:22px}.local-note strong{font-size:10px;font-weight:500;color:#7a8a70}.local-note p{font-size:9px;color:#a1a895;margin:5px 0 0}.preview-workspace{background:#edf0eb;min-width:0;display:flex;flex-direction:column;background-image:radial-gradient(#cad1c760 .65px,transparent .65px);background-size:12px 12px}.preview-toolbar{height:60px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:0 25px;background:#f1f3eec9;border-bottom:1px solid #e3e7de}.live-label{display:flex;gap:8px;align-items:center;font-size:8px;letter-spacing:1.3px;color:#818f7b}.live-label>span:last-child{letter-spacing:.5px;font-size:8px;background:#e6eae1;padding:3px 5px;border-radius:3px;margin-left:4px}.preview-controls{display:flex;align-items:center;gap:7px;font-size:10px;color:#818e7b}#preview-scroll{overflow:auto;padding:30px 32px 24px;flex:1;min-height:380px}#paper-wrapper{margin:0 auto;position:relative;box-shadow:0 5px 18px #38462e17}.resume-paper{transform-origin:top left;background:#fff;padding:var(--margin);font-size:var(--resume-size);line-height:var(--leading);color:#404743;overflow-wrap:anywhere}.resume-header{border-bottom:1px solid #d9e0da;padding-bottom:25px;margin-bottom:28px;position:relative}.resume-header h1{color:var(--accent);font-size:39px;line-height:1.2;letter-spacing:-1.5px;font-weight:650;margin:0 0 8px}.resume-role{font-size:15px;letter-spacing:.4px;color:#657468;margin:0 0 22px}.resume-monogram{display:none;position:absolute;right:0;top:0;font-weight:600;font-size:16px;color:var(--accent);background:#f0f3ed;padding:15px;border-radius:50%}.resume-monogram span{font-size:8px;color:#b4ba97}.contact-list{display:flex;gap:10px 20px;flex-wrap:wrap;font-size:10px;color:#738078}.contact-list span{display:flex;gap:7px;align-items:center}.contact-list .extra-contact-link{min-width:0;max-width:100%;overflow-wrap:anywhere}.contact-list .extra-contact-link a{min-width:0;color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);overflow-wrap:anywhere}.contact-list b{font-size:11px;color:var(--accent);font-weight:400}.resume-columns{display:grid;grid-template-columns:minmax(0,var(--ratio)) minmax(0,1fr);gap:29px}.resume-columns.single{display:block}.side-column{border-left:1px solid #e3e7e0;padding-left:24px}.resume-section{margin-bottom:var(--spacing)}.resume-section h2{font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:2px;font-weight:650;margin:0 0 15px;break-after:avoid}.resume-section p{margin:0;font-size:inherit}.resume-entry{margin-bottom:20px;break-inside:avoid}.entry-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.resume-entry h3{font-size:12px;line-height:1.5;font-weight:650;margin:0 0 3px;color:#39463c}.resume-entry time{font-size:9px;color:#8d988d;white-space:nowrap}.entry-subtitle{color:var(--accent);font-size:10px;margin-bottom:9px}.entry-subtitle span{color:#8d978c;font-size:9px}.resume-entry ul{margin:8px 0 0;padding-left:14px}.resume-entry li{padding-left:3px;margin-bottom:7px;font-size:inherit}.resume-entry li::marker{color:#8f9e8f;font-size:9px}.skill-list{list-style:none;padding:0;margin:0}.skill-list li{font-size:11px;margin-bottom:7px}.side-column .resume-section{margin-bottom:28px}.side-column .resume-section p{font-size:11px;line-height:1.8}.side-column .entry-subtitle{margin-bottom:4px}.side-column .resume-entry h3{font-size:11px}.preview-footer{display:flex;justify-content:space-between;padding:10px 25px 19px;color:#929e8a;font-size:9px}.preview-footer>span:first-child{font-family:Georgia,serif;font-style:italic;font-size:11px}.font-serif{font-family:Georgia,'Times New Roman',serif}.font-mono{font-family:'Courier New',monospace}.classic .resume-header{text-align:center;border-bottom:2px solid var(--accent)}.classic .contact-list{justify-content:center}.classic .resume-header h1{font-weight:400;letter-spacing:0}.classic .resume-section h2{border-bottom:1px solid #ddd;padding-bottom:6px}.modern .resume-header{border-top:6px solid var(--accent);padding-top:24px}.modern .resume-monogram{display:block;top:25px}.modern .resume-header h1{padding-right:65px}.bg-tinted{background:#fffdf6}.bg-sidebar .side-column{background:color-mix(in srgb,var(--accent) 7%,white);padding:18px;border:0;border-radius:3px}.design-content,.check-content{padding:0 23px 25px}h3{font-size:9px;font-weight:600;letter-spacing:1.1px;color:#86917f;margin:24px 0 14px}.design-content>h3:first-child{margin-top:0}.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.template{position:relative;border:1px solid #e1e5dc;border-radius:6px;background:#f9faf6;padding:10px 10px 8px;font-size:9px;color:#828d78}.template.selected{border-color:#71916d;background:#f0f4eb;color:#3c6440}.template-preview{display:block;height:90px;background:white;border:1px solid #e7e9e1;padding:12px 8px;margin-bottom:9px;box-shadow:0 2px 3px #33412208}.template-preview i{display:block;background:#55775a;height:5px;width:65%;margin-bottom:5px}.template-preview b{display:block;height:2px;background:#bcc5b7;margin-bottom:9px}.template-preview em{display:block;height:13px;margin:5px 0;background:repeating-linear-gradient(to bottom,#d8ddd3 0px,#d8ddd3 2px,transparent 2px,transparent 4px)}.template-preview.editorial em,.template-preview.modern em{width:65%;border-right:3px solid white;box-shadow:16px 0 #edf0e8}.template-preview.classic i{margin-left:auto;margin-right:auto}.template-preview.modern{border-top:4px solid #55775a}.template-check{position:absolute;right:4px;top:3px;color:var(--green);font-size:11px}.swatches{display:flex;align-items:center;gap:10px;margin-bottom:23px}.swatch{border:3px solid white;outline:1px solid transparent;background:var(--swatch);width:29px;height:29px;border-radius:50%;color:#fff;font-size:12px;padding:0}.swatch.selected{outline-color:var(--swatch)}.custom-color{position:relative;width:26px;height:26px;border:1px dashed #b9c3b3;border-radius:50%;display:grid;place-items:center;color:#829275;overflow:hidden}.custom-color input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.segmented{display:flex;background:#f2f4ed;padding:4px;border-radius:6px;margin-bottom:20px}.segmented button{flex:1;border:0;background:none;padding:9px;font-size:10px;color:#89947e}.segmented .active{background:white;box-shadow:0 1px 3px #34472212;border-radius:4px;color:#526b49}.range-field{display:block;margin-bottom:21px}.range-field>span{display:flex;justify-content:space-between;font-size:10px;color:#75816b;margin-bottom:10px}.range-field output{font-size:9px;color:#8c957e;background:#f2f4ed;padding:2px 5px;border-radius:3px}input[type=range]{width:100%;height:4px;accent-color:var(--green);cursor:pointer}.tip-box{display:flex;gap:10px;color:#869475;background:#f3f6ed;padding:14px;border-radius:5px;font-size:10px;line-height:1.6;margin-top:10px}.section-settings{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:10px;color:#89927f}.section-settings select{width:68px;margin-left:3px}.mini-button{border:1px solid #e4e8dc;background:#fff;padding:6px 7px;border-radius:3px;font-size:9px}.danger{color:#ab7869}.entry-editor{border-top:1px solid #e7ebdf;padding-top:15px}.entry-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;font-size:9px;letter-spacing:1px;color:#8a957d}.extra-links-editor{margin:22px 0;padding:14px 12px;border:1px solid #e5eadf;border-radius:6px;background:#fcfdf9}.extra-links-heading h4{margin:0 0 5px;color:#667665;font-size:10px;font-weight:600}.extra-links-heading p{margin:0 0 12px;color:#98a18f;font-size:9px;line-height:1.5}.extra-link-row{padding:11px 0 8px;border-top:1px solid #edf0e8}.extra-link-row .two-fields{grid-template-columns:.85fr 1.15fr;gap:8px}.extra-link-row .field{margin-bottom:8px}.extra-link-actions{display:flex;justify-content:flex-end;gap:6px}.extra-link-actions .mini-button{min-width:32px}.add-extra-link{margin-top:8px}.field-hint{font-size:9px;color:#9ca58e;line-height:1.5;margin:-4px 0 16px}.full{width:100%;margin-bottom:12px}.score-card{display:flex;gap:16px;align-items:center;border:1px solid #e3e9db;background:#f7f9f2;border-radius:7px;padding:17px 13px}.score-ring{width:84px;height:84px;border-radius:50%;background:conic-gradient(var(--green) var(--score),#e0e7d6 0);padding:6px;flex-shrink:0}.score-ring strong{height:100%;width:100%;background:#f7f9f2;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:26px;font-weight:500;color:var(--green)}.score-ring small{font-size:9px;color:#99a28e}.score-card h2{font-family:Georgia,serif;font-size:18px;font-weight:400;letter-spacing:-.5px;margin:0 0 8px}.score-card p{font-size:10px;color:#929c84;margin:0}.score-disclaimer{font-size:10px;color:#929b88;line-height:1.7;margin:15px 0 20px}.check-item{display:flex;align-items:flex-start;gap:10px;border-bottom:1px solid #edf0e6;padding:14px 0}.check-icon{border-radius:50%;width:20px;height:20px;display:grid;place-items:center;flex-shrink:0;background:#f6efe2;color:#b09b65;font-size:11px}.check-icon.passed{background:#eaf1e5;color:#668153}.check-item strong{font-size:10px;font-weight:550}.check-item p{font-size:9px;line-height:1.7;color:#929c86;margin:5px 0 0}.check-item>small{margin-left:auto;font-size:9px;color:#95a184;white-space:nowrap}.keyword-result{padding-top:15px;font-size:11px}.keyword-result p{color:#8a977c;font-size:10px;line-height:1.6}.keywords{display:flex;gap:5px;flex-wrap:wrap}.keywords span{padding:4px 7px;border-radius:4px;background:#f2efe7;font-size:9px;color:#a09271}.keywords .found{background:#eaf1e4;color:#658054}.dragging{opacity:.4}.drop-target{border-top:3px solid var(--green)}dialog{border:1px solid #dce4d4;border-radius:12px;padding:24px;width:410px;max-width:90vw;box-shadow:0 18px 70px #17271930}dialog::backdrop{background:#1e342c55;backdrop-filter:blur(3px)}.dialog-title{display:flex;align-items:center;justify-content:space-between}.dialog-title h2{font:26px Georgia,serif;margin:0}dialog p{color:#8a967e;font-size:12px}.section-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.section-options button{background:#f8faf4;border:1px solid #e2e8db;border-radius:6px;display:flex;align-items:center;gap:8px;padding:17px 10px;font-size:11px}.section-options button>span{color:#809574;font-size:17px}.section-options button>b{margin-left:auto;font-weight:400;color:#91a382}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:#244b3d;color:#fff;padding:13px 22px;border-radius:7px;box-shadow:0 5px 20px #223c3022;font-size:12px;opacity:0;pointer-events:none;transition:all .2s;z-index:20;max-width:90vw}#toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1500px){.studio{grid-template-columns:410px minmax(0,1fr)}#preview-scroll{padding-top:38px}.studio-heading{padding-top:40px;padding-bottom:35px}}@media(max-width:1150px){.studio{margin:0 20px 20px;grid-template-columns:325px minmax(0,1fr)}.studio-heading{padding-left:22px;padding-right:22px}.topbar{padding:0 22px}.save-status{display:none}.panel-tabs{gap:18px;padding:0 18px}.preview-toolbar{padding:0 15px}.preview-footer>span:last-child{display:none}.document-chip{display:none}.contact-list{gap:10px 15px}}@media(max-width:800px){.rail{width:60px}.workspace{margin-left:60px;width:calc(100% - 60px)}.rail-button{width:46px}.topbar{height:65px;padding:0 16px}.header-actions{gap:3px}.button{padding:9px 11px}.breadcrumbs{font-size:10px;gap:8px}.header-actions .secondary span{display:none}.studio-heading{padding:25px 18px}.studio-heading h1{font-size:31px}.studio{margin:0 15px 20px;grid-template-columns:1fr}.editor-panel{border-right:0}.panel-tabs{justify-content:center;gap:35px}#editor-content{max-height:530px;overflow:auto}.local-note{padding:14px 23px}.preview-workspace{border-top:1px solid #dde3db}#preview-scroll{min-height:300px;padding:22px 20px}.preview-footer>span:last-child{display:block}.studio-heading p{font-size:11px}.preview-toolbar{height:48px}}@media(max-width:420px){.breadcrumbs{display:none}.topbar{justify-content:flex-end}.header-actions{gap:6px}.studio{margin:0 8px 14px}.studio-heading{padding-left:14px}.eyebrow{font-size:7px}.panel-tabs{gap:22px}.preview-footer>span:last-child{display:none}}
@media print{body{background:white}.rail,.topbar,.studio-heading,.editor-panel,.preview-toolbar,.preview-footer,#toast,dialog{display:none!important}.app-shell,.workspace,.studio,.preview-workspace,#preview-scroll,#paper-wrapper{display:block!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;overflow:visible!important;background:white!important}.resume-paper{transform:none!important;width:100%!important;min-height:0!important;padding:var(--margin)!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.resume-columns{display:block}.resume-columns:not(.single){display:grid}.resume-header{break-inside:avoid}.resume-section h2{break-after:avoid}.resume-entry{break-inside:avoid}.resume-paper{font-size:var(--resume-size)}.side-column{break-inside:auto}}

/* Block editor: controls belong to the canvas, never to the exported resume. */
.canvas-tip{display:flex;gap:10px;margin:0 18px 18px;padding:12px;background:#f1f6ef;border:1px solid #e0e9dc;border-radius:6px;color:#64825e}.canvas-tip>span{font-size:22px}.canvas-tip strong{font-size:10px;font-weight:550}.canvas-tip p{font-size:9px;color:#8b9c80;margin:5px 0 0}.personal-row{width:100%;display:flex;gap:12px;align-items:center;padding:14px;border:1px solid #e4e8e1;background:#fff;border-radius:6px;text-align:left;font-size:11px}.personal-row>span{font-size:17px;color:#879d7e}.personal-row>span:last-child{margin-left:auto;font-size:13px}.personal-row.selected{background:#f4f8f0;border-color:#c5d7bd}.block-list{padding:0 10px 9px;border-top:1px solid #e8ede3}.block-list-row{display:flex;align-items:center;gap:6px;border-radius:4px;margin:5px 0;padding-left:4px}.block-list-row.active{background:#eaf1e5}.block-list-row>button:last-child{display:flex;align-items:center;gap:7px;flex:1;min-width:0;background:none;border:0;padding:10px 5px;text-align:left;font-size:10px;color:#718267}.block-list-row>button:last-child>span:nth-child(2){overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.block-list-row>button:last-child>span:last-child{margin-left:auto}.block-list-add{padding:9px 6px 3px}.inspector{border-top:1px solid #e5ebde;padding:0 20px 20px;margin-top:8px}.inspector-heading{display:flex;align-items:center;justify-content:space-between;margin:20px 0 16px}.inspector-heading h3{margin:0}.selected-block-name{font-size:13px;font-weight:600;margin-bottom:14px;overflow-wrap:anywhere}.selected-block-name>span{display:block;font-size:9px;font-weight:400;color:#93a088;margin-top:5px}.block-actions{display:flex;gap:6px;margin-bottom:18px}.block-actions .mini-button{font-size:10px;padding:7px 10px}.block-colors{margin:4px 0 16px;border:1px solid #e2e8db;padding:4px 10px;border-radius:5px}.color-field{display:flex;align-items:center;gap:10px;font-size:10px;color:#7b8a70;margin:12px 0}.color-field>span{flex:1}.color-field input{width:28px;height:25px;padding:0;border:1px solid #dce4d5;border-radius:4px;background:white;cursor:pointer}.color-field small{font-size:9px;color:#94a085;width:52px}.color-field button{font-size:9px;min-width:40px}.resume-paper{color:var(--text);--bullet-type:disc;--bullet-custom:normal}.resume-paper .editable{cursor:text;outline:1px solid transparent;border-radius:2px;min-width:5px;white-space:pre-wrap;transition:outline-color .15s,background .15s}.resume-paper .editable:hover{outline:1px dashed #96b7a1;background:#8cc6a10b}.resume-paper .editable:focus{outline:1px solid #84b397;background:#e8f3ed55}.resume-paper .editable.is-empty{display:none}.resume-paper .selected .editable.is-empty,.resume-header.section-selected .editable.is-empty,.resume-section.section-selected>.section-heading-row>.editable.is-empty{display:block;min-height:1.5em}.resume-paper .editable.is-empty:before{content:attr(data-placeholder);color:#9aae9e;font-weight:400;font-size:11px;letter-spacing:0;text-transform:none;pointer-events:none}.resume-header .contact-item{display:flex}.resume-header .contact-item .editable{display:inline-block}.resume-header .contact-item.empty-part{display:none}.resume-header.section-selected .contact-item.empty-part{display:flex}.resume-header .resume-role{color:var(--subtitle)}.resume-columns{grid-template-columns:minmax(0,var(--ratio)) minmax(0,1fr);gap:26px}.column-drop{min-height:90px;position:relative}.resume-section{position:relative;--block-spacing:18px}.section-heading-row{display:flex;align-items:baseline;gap:5px;position:relative;padding-right:66px}.section-heading-row>h2{flex:1;min-width:0}.section-canvas-actions{opacity:0;position:absolute;right:-17px;top:-2px;display:flex;flex-direction:row-reverse;align-items:center;gap:2px;z-index:2;pointer-events:none}.section-canvas-actions button{border:0;background:#eef6ee;color:#6e9674;border-radius:3px;font-size:15px;line-height:1.2;min-width:22px;height:23px;padding:2px;display:grid;place-items:center}.section-canvas-handle{cursor:grab}.section-canvas-delete{cursor:pointer;font-weight:600}.section-canvas-delete:hover{background:#e4efe5;color:#38684b}.resume-section:hover>.section-heading-row>.section-canvas-actions,.section-canvas-actions:focus-within{opacity:1;pointer-events:auto}.resume-section .resume-block{margin-bottom:var(--block-spacing,18px)}.resume-section .resume-block:last-of-type{margin-bottom:0}.resume-block{position:relative;margin:0 0 18px;padding:3px 0 4px;outline:1px solid transparent;outline-offset:6px;border-radius:2px;color:var(--block-text,var(--text));background:var(--block-bg,transparent);break-inside:avoid}.resume-block:hover{outline:1px dashed #b5cbbb}.resume-block.selected{outline:1px solid #80b497}.block-title-row{display:flex;align-items:baseline;gap:7px}.block-title-row:has(.is-empty){min-height:0}.block-icon{color:var(--block-title,var(--accent));font-size:1.15em;flex-shrink:0}.resume-paper .block-title{margin:0 0 4px;font-size:1.14em;line-height:1.4;font-weight:650;letter-spacing:0;color:var(--block-title,var(--accent))}.resume-block .entry-subtitle{color:var(--block-subtitle,var(--subtitle));font-size:1em;font-weight:550;margin-bottom:6px}.block-metadata{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;margin-bottom:8px;color:var(--block-text,var(--text));font-size:.85em;opacity:.82}.metadata-part{display:flex;align-items:baseline;gap:5px;min-width:0}.metadata-part.empty-part{display:none}.resume-block.selected .metadata-part.empty-part{display:flex}.block-metadata:has(.empty-part):not(:has(.metadata-part:not(.empty-part))){margin-bottom:0}.metadata-icon{color:#7f8d80;user-select:none}.icons-none .metadata-icon{display:none}.resume-block .block-paragraph{font-size:1em;line-height:inherit;margin:0 0 10px}.block-bullets{list-style-type:var(--bullet-type);padding-left:17px;margin:7px 0 0}.block-bullets:empty{display:none}.block-bullets li{position:relative;padding-left:2px;margin-bottom:5px;font-size:1em;line-height:inherit}.block-bullets li::marker{content:var(--bullet-custom);color:var(--block-title,var(--accent))}.block-bullets .bullet-text{display:block;min-height:1em}.block-bullets .bullet-text.is-empty{display:block}.side-column .resume-section p{font-size:inherit;line-height:inherit}.block-canvas-actions{opacity:0;position:absolute;right:-17px;top:-2px;display:flex;flex-direction:row-reverse;align-items:center;gap:2px;z-index:3;pointer-events:none}.block-canvas-actions button{border:0;background:#eef6ee;color:#6e9674;border-radius:3px;font-size:15px;line-height:1.2;min-width:22px;height:23px;padding:2px;display:grid;place-items:center}.resume-block:hover>.block-canvas-actions,.resume-block.selected>.block-canvas-actions,.resume-block:focus-within>.block-canvas-actions,.block-canvas-actions:focus-within{opacity:1;pointer-events:auto}.block-canvas-actions button:hover{background:#e4efe5;color:#38684b}.block-canvas-actions [draggable],.drag-handle,[data-drag-section]{cursor:grab;touch-action:none}.block-inline-actions{display:none;gap:12px;margin-top:11px}.resume-block.selected>.block-inline-actions{display:flex}.block-inline-actions button{font-size:9px;color:#71967a;background:none;border:0;padding:3px 0}.remove-bullet{position:absolute;right:-15px;top:0;border:0;background:#f8eeea;color:#b48672;opacity:0;font-size:11px;line-height:1.5;width:15px;padding:0;border-radius:3px}.resume-block.selected .block-bullets li:hover>.remove-bullet,.remove-bullet:focus-visible{opacity:1}.canvas-add-block{display:block;opacity:0;width:100%;border:1px dashed #bcd2ba;background:#f7faf5;color:#8aa081;font-size:9px;padding:6px;border-radius:4px;margin:-7px 0 5px}.resume-section:hover .canvas-add-block,.resume-section.section-selected .canvas-add-block,.canvas-add-block:focus-visible{opacity:1}.column-add{width:100%;display:block;padding:9px 6px;border:1px dashed #cbdbbf;background:#f8fbf4;color:#8ca17b;font-size:9px;border-radius:5px;opacity:.55}.column-add:hover,.column-add:focus-visible,.is-dragging .column-add{opacity:1}.frame-line{border-left:3px solid var(--block-title,var(--accent));padding-left:12px}.frame-card{border:1px solid color-mix(in srgb,var(--block-title,var(--accent)) 30%,white);padding:12px;border-radius:7px}.resume-block[style*="--block-bg"]{padding:12px}.font-inherit{font-family:inherit}.font-sans{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.font-arial{font-family:Arial,Helvetica,sans-serif}.font-verdana{font-family:Verdana,Geneva,sans-serif}.font-trebuchet{font-family:'Trebuchet MS',sans-serif}.font-times{font-family:'Times New Roman',Times,serif}.font-serif{font-family:Georgia,'Times New Roman',serif}.font-mono{font-family:'Courier New',monospace}.default-bullets-disc,.bullets-disc{--bullet-type:disc;--bullet-custom:normal}.default-bullets-circle,.bullets-circle{--bullet-type:circle;--bullet-custom:normal}.default-bullets-square,.bullets-square{--bullet-type:square;--bullet-custom:normal}.default-bullets-decimal,.bullets-decimal{--bullet-type:decimal;--bullet-custom:normal}.default-bullets-dash,.bullets-dash{--bullet-type:none;--bullet-custom:'–  '}.default-bullets-arrow,.bullets-arrow{--bullet-type:none;--bullet-custom:'›  '}.default-bullets-check,.bullets-check{--bullet-type:none;--bullet-custom:'✓  '}.default-bullets-none,.bullets-none{--bullet-type:none;--bullet-custom:''}.bullets-none .block-bullets,.default-bullets-none .bullets-inherit .block-bullets{padding-left:0}.headings-line .section-heading-row h2{font-size:1.3em;letter-spacing:0;border-bottom:2px solid var(--accent);padding-bottom:3px;margin-bottom:15px}.headings-band .section-heading-row h2{background:color-mix(in srgb,var(--accent) 9%,white);border-left:3px solid var(--accent);padding:7px 10px;letter-spacing:1px}.drop-before{box-shadow:0 -3px 0 #55a577!important}.drop-after{box-shadow:0 3px 0 #55a577!important}.drop-inside{outline:2px dashed #55a577!important;background-color:#dceede40!important}.is-dragging .canvas-add-block{opacity:1}.is-dragging .resume-block .editable{pointer-events:none}.dragging{opacity:.3}#section-dialog{width:560px;max-height:85vh;overflow:auto}.preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.preset-grid>button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;background:#fafcf6;border:1px solid #dfe8d8;border-radius:7px;padding:15px}.preset-grid>button:hover{border-color:#83a77a;background:#f1f7ec}.preset-grid strong{font-size:12px;font-weight:550}.preset-grid small{font-size:10px;line-height:1.5;color:#98a08b}.preset-icon{font-size:23px;color:#7b9970}.preset-plus{position:absolute;right:12px;top:13px;color:#8da57d}.section-options{display:block}.saved-presets>div{display:flex;border:1px solid #e0e7d8;border-radius:5px;margin:8px 0;overflow:hidden}.saved-presets button{border:0;background:#f7faf3;padding:12px;font-size:11px}.saved-presets button:first-child{flex:1;text-align:left}.saved-presets button:first-child span{color:#7a966b;margin-right:10px}.saved-presets button:last-child{color:#ae8d77}.library-empty{font-size:11px;line-height:1.6}#save-dialog .field{margin-top:25px}
@media(min-width:801px){.studio{height:calc(100vh - 250px);min-height:650px}.editor-panel{overflow:hidden}#editor-content{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d8e1d0 transparent}.preview-workspace{overflow:hidden}#preview-scroll{min-height:0;scrollbar-width:thin;scrollbar-color:#cbd6c2 transparent}}
@media(max-width:800px){.canvas-tip{margin-bottom:12px}.studio-heading{padding-top:22px;padding-bottom:22px}.live-label{font-size:7px;letter-spacing:.7px}.preview-controls{gap:2px}.preview-footer{font-size:8px}.resume-block.selected>.block-canvas-actions{opacity:1;pointer-events:auto}#editor-content{max-height:420px}.inspector{padding-top:1px}.preset-grid{gap:8px}.preset-grid>button{padding:12px}}
@media print{.canvas-control{display:none!important}.resume-paper .editable,.resume-block,.resume-block:hover,.resume-block.selected,.resume-paper .editable:focus{outline:none!important;box-shadow:none!important}.resume-paper .editable{background:transparent!important}.resume-paper .editable.is-empty,.resume-paper .selected .editable.is-empty,.resume-header .empty-part,.resume-block .empty-part{display:none!important}.resume-paper .editable:before{content:none!important}.resume-block{break-inside:avoid;margin-bottom:18px}.resume-section{break-inside:auto}.section-heading-row{break-after:avoid;padding-right:0!important}.resume-block .block-bullets:empty{display:none!important}.studio{height:auto!important}.resume-block .block-metadata:has(.empty-part):not(:has(.metadata-part:not(.empty-part))){display:none!important}}
#editor-content:has(.selected-block-name){display:flex;flex-direction:column}#editor-content:has(.selected-block-name)>.panel-intro{order:0}#editor-content:has(.selected-block-name)>.canvas-tip{display:none}#editor-content:has(.selected-block-name)>.inspector{order:1;border-top:0;margin-top:0}#editor-content:has(.selected-block-name)>.sections{order:2}#editor-content:has(.selected-block-name)>.add-section{order:3}#editor-content:has(.selected-block-name) .inspector-heading{margin-top:0}
/* Keep insertion affordances in the section gutter instead of adding print-only gaps. */
.resume-section .canvas-add-block{position:absolute;left:0;bottom:-13px;margin:0;padding:3px 6px}.side-column .resume-section{margin-bottom:var(--spacing)}.block-inline-actions{position:absolute;left:0;bottom:-21px;margin:0;background:#fff;z-index:1;border-radius:3px;padding:0 4px}
/* Portrait photos are embedded in the local document and printed with it. */
.photo-editor{border-top:1px solid #e4ebdf;margin-top:20px;padding-top:18px}.photo-editor-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:13px}.photo-editor-heading strong{font-size:11px;font-weight:600}.photo-editor-heading small{font-size:9px;color:#91a086}.photo-editor-row{display:flex;align-items:center;gap:14px;margin-bottom:10px}.photo-editor-row img,.photo-editor-placeholder{width:68px;height:68px;flex-shrink:0;border-radius:9px;object-fit:cover;border:1px solid #dae5d6;background:#f1f6ed}.photo-editor-placeholder{display:grid;place-items:center;color:#98ab91;font-size:30px}.photo-editor-row>div:last-child{display:flex;align-items:flex-start;flex-direction:column;gap:7px}.photo-editor-row .button{font-size:10px;min-height:32px;padding:7px 11px}.photo-editor>p,.template-photo-note{font-size:9px;line-height:1.6;color:#909c87;margin:0 0 15px}.photo-editor .range-field{margin:0 0 8px}.template-photo-note{margin:10px 0 20px}.resume-photo-wrap{position:absolute;right:0;top:0;width:var(--photo-size);height:var(--photo-size);z-index:1}.resume-photo{width:100%;height:100%;display:block;object-fit:cover;object-position:var(--photo-position);border:2px solid color-mix(in srgb,var(--accent) 18%,white);box-shadow:0 2px 7px #23423518}.editorial .photo-shape-auto .resume-photo{border-radius:9px}.modern .photo-shape-auto .resume-photo,.photo-shape-circle .resume-photo{border-radius:50%}.photo-shape-rounded .resume-photo{border-radius:12px}.photo-shape-square .resume-photo{border-radius:0}.resume-header.has-photo h1,.resume-header.has-photo .resume-role,.resume-header.has-photo .contact-list{padding-right:calc(var(--photo-size) + 19px)}.photo-change{position:absolute;bottom:2px;right:2px;width:24px;height:24px;border:1px solid #cadbc4;border-radius:50%;background:white;color:#5a8065;box-shadow:0 1px 5px #263b2929;opacity:0;font-size:14px}.resume-photo-wrap:hover .photo-change,.photo-change:focus-visible{opacity:1}.photo-empty-trigger{position:absolute;right:0;top:47px;width:27px;height:27px;background:#fff;border:1px solid #d5e4d2;border-radius:50%;color:var(--accent);z-index:2;opacity:0}.modern .resume-header:hover .photo-empty-trigger,.photo-empty-trigger:focus-visible{opacity:1}
@media print{.photo-change,.photo-empty-trigger{display:none!important}.resume-photo{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* Preview and PDF share these explicit page boundaries. */
#paper-wrapper{box-shadow:none}
#resume{display:flex;flex-direction:column;gap:22px}
.preview-scroll-hint{display:none}
@media(max-width:800px){.preview-scroll-hint{display:block;padding:7px 20px;color:#7f8e80;font-size:10px;background:#f1f3eec9}}
@media print{.preview-scroll-hint{display:none!important}}
.resume-page{flex:none;overflow:hidden;box-shadow:0 5px 18px #38462e17}
.continued-heading h2,.continued-title h3{opacity:.78}
.readonly-fragment{white-space:pre-wrap}
.pagination-measuring .section-heading-row{padding-right:0!important}.pagination-measuring .canvas-control,.pagination-measuring .resume-paper .editable.is-empty,.pagination-measuring .resume-paper .empty-part{display:none!important}
.pagination-measuring .resume-block .block-inline-actions{display:none!important}
.pdf-preview #resume{pointer-events:none}
.pdf-preview .section-heading-row{padding-right:0!important}.pdf-preview .resume-paper .canvas-control,.pdf-preview .resume-block .block-inline-actions,.pdf-preview .resume-paper .editable.is-empty,.pdf-preview .resume-paper .empty-part{display:none!important}
.pdf-preview .resume-paper .resume-block,.pdf-preview .resume-paper .editable{outline:none!important;box-shadow:none!important}
.pdf-preview .resume-paper .editable{background:transparent!important}
#toggle-pdf-view[aria-pressed=true]{color:var(--green);font-weight:650}
.resume-switch-button{border:0;background:none;display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:240px;padding:7px;color:#4c594f;border-radius:5px;font-size:12px}
.resume-switch-button:hover{background:#f2f5ef}
.resume-switch-button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#resumes-dialog,#drive-dialog{width:540px;max-height:82vh;overflow:auto}
#resume-list,#drive-files{display:flex;flex-direction:column;gap:8px;margin:18px 0}
.resume-list-row,.drive-file-row{border:1px solid #e3e9df;border-radius:7px;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.resume-list-row.active{background:#f2f7ef;border-color:#bdd1ba}
.resume-list-row>div,.drive-file-row>div{min-width:0}
.resume-list-row strong,.drive-file-row strong{font-size:12px;color:#455a4a;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.resume-list-row small,.drive-file-row small{font-size:9px;color:#8b988a;display:block;margin-top:4px}
.current-badge{font-size:9px;color:#55805c;background:#e7f0e4;border-radius:3px;padding:4px 7px}
.resume-dialog-actions,.drive-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.drive-actions .button,.resume-dialog-actions .button{font-size:10px;padding:8px 10px}
#drive-status{min-height:22px;color:#617962}
@media(max-width:800px){#drive{font-size:0;min-width:37px;padding:8px}#drive::before{content:'☁';font-size:18px}.resume-switch-button{max-width:150px}}
@media(max-width:500px){.topbar{height:auto;min-height:65px;flex-wrap:wrap;gap:4px;padding:8px 12px}.breadcrumbs{display:flex;width:100%}.header-actions{margin-left:auto}.resume-switch-button{max-width:250px}}
.header-actions #import{border-color:#a8c5b0;background:#f1f8f1;color:#205c52;font-weight:600}
.header-actions #import:hover{background:#e5f1e7}
.style-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 20px}
.style-preset{display:flex;align-items:center;gap:8px;min-width:0;min-height:60px;padding:8px;border:1px solid #e1e7df;border-radius:6px;background:#fff;text-align:left;font-size:10px}
.style-preset.selected{border-color:#8eaf99;background:#f2f8f1}
.style-preset>span:last-child{min-width:0}
.style-preset strong{display:block;font-size:10px;font-weight:600}
.style-preset small{display:block;margin-top:3px;color:#8a978a;font-size:8px;line-height:1.35}
.style-sample{flex:none;color:var(--sample);font-size:21px;line-height:1;border-bottom:2px solid var(--sample);padding:0 2px 3px}
@media(max-width:500px){.preview-toolbar{padding:0 10px}.live-label{gap:3px;white-space:nowrap}.live-label #preview-mode{display:none}.live-label #page-count{white-space:nowrap;margin-left:1px}.preview-controls{white-space:nowrap;gap:2px}#toggle-pdf-view{white-space:nowrap}}
.rail-policy-link{font-size:10px;color:var(--green);text-decoration:none}.rail-policy-link:hover,.rail-policy-link:focus-visible,.local-note a:hover,.local-note a:focus-visible{text-decoration:underline}.local-note a,.dialog-description a{color:var(--green);font-weight:600;text-decoration:none}.dialog-description a:hover,.dialog-description a:focus-visible{text-decoration:underline}
@media print{
 #resume{display:block!important;transform:none!important;gap:0!important}
 .resume-page{width:100%!important;height:100vh!important;min-height:0!important;max-height:100vh!important;overflow:hidden!important;box-shadow:none!important;break-after:page;break-inside:avoid}
 .resume-page:last-child{break-after:auto}
}
