:root{--ink:#17211d;--muted:#65706c;--paper:#f7f3ea;--paper-strong:#fffaf0;--line:#d7cdbd;--accent:#0f8b8d;--accent-strong:#0a6466;--sun:#f6bd60;--clay:#d96c4a;--green-soft:#dceee7;--shadow:0 24px 70px #29221724;--radius:8px}*{box-sizing:border-box}html{background:var(--paper)}body{min-height:100vh;color:var(--ink);background:linear-gradient(135deg, #0f8b8d1a, transparent 34%), radial-gradient(circle at 85% 8%, #f6bd6038, transparent 28%), repeating-linear-gradient(0deg, #17211d06 0, #17211d06 1px, transparent 1px, transparent 28px), var(--paper);margin:0;font-family:Avenir Next,PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,textarea,input{font:inherit}.shell{width:min(1180px,100% - 32px);margin:0 auto;padding:36px 0 56px}.masthead{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;padding:28px 0 34px;display:grid}.eyebrow,.privacy-note,.section-heading,.results-heading,.alert{align-items:center;display:flex}.eyebrow{border:1px solid var(--line);width:fit-content;color:var(--accent-strong);background:#fffaf0b8;gap:8px;margin:0 0 14px;padding:7px 10px;font-size:14px;font-weight:700}h1,h2,h3,h4,p{margin-top:0}h1{letter-spacing:0;max-width:760px;margin-bottom:12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(44px,7vw,82px);line-height:.95}.lead{color:#4e5b56;max-width:720px;margin-bottom:0;font-size:18px;line-height:1.75}.privacy-note{max-width:260px;color:var(--accent-strong);background:#dceee7c7;border:1px solid #0f8b8d52;gap:10px;padding:12px 14px;font-size:14px;font-weight:700}.workspace{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:18px;display:grid}.input-panel,.results{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffaf0e6}.input-panel{min-width:0;padding:20px}.section-heading,.results-heading{gap:12px;margin-bottom:18px}.section-heading svg,.results-heading svg{color:var(--accent);flex:none}.section-heading h2,.results-heading h2{margin-bottom:4px;font-size:22px}.section-heading p,.results-heading p{color:var(--muted);margin-bottom:0;line-height:1.5}.upload-zone{border-radius:var(--radius);cursor:pointer;text-align:center;background:linear-gradient(135deg,#0f8b8d14,#0000),#f7f3eab8;border:2px dashed #0f8b8d57;place-items:center;min-height:230px;padding:24px;transition:border-color .18s,transform .18s,background .18s;display:grid}.upload-zone:hover{border-color:var(--accent);background:#dceee7b3;transform:translateY(-1px)}.upload-zone input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.upload-icon{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:54px;height:54px;margin-bottom:14px;display:grid}.upload-zone strong{overflow-wrap:anywhere;max-width:100%;font-size:18px}.upload-zone small{max-width:360px;color:var(--muted);margin-top:8px;line-height:1.5}.resume-preview{border-left:4px solid var(--sun);background:#f6bd601f;margin-top:16px;padding:14px}.resume-preview span{color:#765323;margin-bottom:8px;font-size:13px;font-weight:800;display:block}.resume-preview p{color:#4d463d;-webkit-line-clamp:4;-webkit-box-orient:vertical;min-height:70px;margin-bottom:0;line-height:1.65;display:-webkit-box;overflow:hidden}textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:292px;color:var(--ink);background:#ffffff9e;outline:none;padding:16px;line-height:1.7;transition:border-color .16s,box-shadow .16s,background .16s}textarea:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 4px #0f8b8d1f}.action-row{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.action-row span{color:var(--muted);font-size:14px}button{border-radius:var(--radius);background:var(--ink);color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:800;transition:opacity .16s,transform .16s,background .16s;display:inline-flex}button:hover:not(:disabled){background:var(--accent-strong);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.45}.alert{border-radius:var(--radius);color:#8c3a24;background:#d96c4a1a;border:1px solid #d96c4a6b;gap:10px;margin:18px 0 0;padding:14px 16px;font-weight:700}.results{margin-top:18px;padding:22px}.result-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.result-block{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff8c;min-width:0;padding:18px}.result-block.wide{grid-column:1/-1}.result-block h3{margin-bottom:12px;font-size:20px}.result-block p,.result-block li{color:#3e4a45;line-height:1.75}.split-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.split-list h4{color:var(--accent-strong);margin-bottom:8px}ul,ol{margin:0;padding-left:22px}li+li{margin-top:8px}.letter p{white-space:pre-wrap}.qa-list{gap:12px;display:grid}.qa-item{border-top:1px solid #d7cdbdd9;padding-top:12px}.qa-item h4{margin-bottom:8px;line-height:1.5}.qa-item p{margin-bottom:0}.empty-state{border:1px dashed var(--line);border-radius:var(--radius);min-height:210px;color:var(--muted);text-align:center;place-items:center;display:grid}.empty-state p{max-width:430px;margin:10px 0 0;line-height:1.7}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:860px){.masthead,.workspace,.result-grid,.split-list{grid-template-columns:1fr}.privacy-note{max-width:none}h1{font-size:48px}}@media (max-width:560px){.shell{width:min(100% - 20px,1180px);padding-top:18px}.masthead{padding-bottom:22px}h1{font-size:40px}.lead{font-size:16px}.input-panel,.results{padding:16px}.upload-zone{min-height:190px}.action-row{flex-direction:column;align-items:stretch}button{width:100%}}.public-home{width:min(1180px,100% - 32px);margin:0 auto;padding:24px 0 72px}.public-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:54px;display:flex}.public-brand,.public-nav-links,.public-hero-actions,.public-trust-row{align-items:center;display:flex}.public-brand{color:var(--ink);gap:9px;font-weight:900;text-decoration:none}.public-brand svg{color:var(--accent)}.public-nav-links{gap:20px}.public-nav-links a{color:var(--muted);font-size:14px;font-weight:700;text-decoration:none}.public-nav-links a:hover{color:var(--accent-strong)}.public-nav-links .public-nav-login{border:1px solid var(--ink);border-radius:var(--radius);color:var(--ink);padding:9px 13px}.public-hero{grid-template-columns:minmax(0,1.08fr) minmax(380px,.72fr);align-items:center;gap:clamp(36px,7vw,92px);min-height:690px;padding:72px 0 84px;display:grid}.public-hero h1{max-width:720px;margin-bottom:24px;font-size:clamp(50px,6.5vw,88px);line-height:.98}.public-hero .lead{max-width:650px}.public-hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px}.public-primary-action,.public-secondary-action,.public-pricing-strip>a{border-radius:var(--radius);justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 18px;font-weight:850;text-decoration:none;transition:transform .15s,background .15s,color .15s;display:inline-flex}.public-primary-action{background:var(--ink);color:#fff}.public-primary-action:hover{background:var(--accent-strong);transform:translateY(-1px)}.public-secondary-action{border:1px solid var(--line);color:var(--ink);background:#fffaf0a6}.public-secondary-action:hover{border-color:var(--accent);color:var(--accent-strong)}.public-trust-row{color:var(--muted);flex-wrap:wrap;gap:10px 18px;margin-top:24px;font-size:12px}.public-trust-row span{align-items:center;gap:6px;display:inline-flex}.public-trust-row svg{color:var(--accent)}.public-dossier{color:#eef7f2;background:#18332c;border:1px solid #29423b;border-radius:3px 18px 3px 3px;position:relative;overflow:hidden;transform:rotate(1.2deg);box-shadow:18px 22px #0f8b8d1f,0 34px 80px #17211d38}.public-dossier:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 31px,#ffffff09 32px);position:absolute;inset:0}.public-dossier-head,.public-dossier-row,.public-dossier-result{position:relative}.public-dossier-head{color:#9ec4b8;letter-spacing:.12em;border-bottom:1px solid #ffffff26;justify-content:space-between;padding:16px 18px;font-family:Courier New,monospace;font-size:11px;font-weight:900;display:flex}.public-dossier-row{border-bottom:1px solid #ffffff1f;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:20px 18px;display:grid}.public-dossier-row>svg{color:#77e5c3}.public-dossier-row strong,.public-dossier-row span{display:block}.public-dossier-row div>span{color:#9eb4ad;margin-top:4px;font-size:12px}.public-dossier-status{color:#f6bd60;font-family:Courier New,monospace;font-size:11px}.public-dossier-result{padding:25px 24px 28px}.public-dossier-result>span{color:#77e5c3;letter-spacing:.13em;font-family:Courier New,monospace;font-size:11px}.public-dossier-result>strong{margin:10px 0 18px;font-family:Georgia,Times New Roman,serif;font-size:25px;line-height:1.25;display:block}.public-dossier-result ul{color:#c2d4ce;gap:10px;margin:0;padding-left:18px;font-size:13px;line-height:1.55;display:grid}.public-section,.public-workflow{border-top:1px solid var(--line);padding:76px 0;scroll-margin-top:24px}.public-section-heading{grid-template-columns:minmax(150px,.32fr) minmax(0,1fr);gap:36px;margin-bottom:38px;display:grid}.public-section-heading>p{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;font-family:Courier New,monospace;font-size:12px;font-weight:900}.public-section-heading h2{max-width:750px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,5vw,58px);line-height:1.05}.public-feature-ledger{border-top:1px solid var(--line)}.public-feature-ledger article{border-bottom:1px solid var(--line);grid-template-columns:90px minmax(190px,.7fr) minmax(0,1fr);align-items:baseline;gap:28px;padding:24px 0;display:grid}.public-feature-ledger article>span{color:var(--clay);font-family:Courier New,monospace;font-size:12px;font-weight:900}.public-feature-ledger h3{margin:0;font-size:21px}.public-feature-ledger p{color:var(--muted);margin:0;line-height:1.7}.public-workflow ol{border:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.public-workflow li{border-right:1px solid var(--line);background:#fffaf08f;min-height:220px;padding:25px}.public-workflow li:last-child{border-right:0}.public-workflow li>span{color:var(--accent);font-family:Courier New,monospace;font-size:13px;font-weight:900}.public-workflow li div{margin-top:54px}.public-workflow strong{font-size:20px}.public-workflow p{color:var(--muted);margin:9px 0 0;line-height:1.65}.public-pricing-strip{border-radius:var(--radius);background:var(--ink);color:#fff;justify-content:space-between;align-items:center;gap:36px;margin-top:22px;padding:38px;display:flex}.public-pricing-strip p{color:#77e5c3;letter-spacing:.08em;margin-bottom:9px;font-family:Courier New,monospace;font-size:12px;font-weight:900}.public-pricing-strip h2{margin-bottom:8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(27px,4vw,43px)}.public-pricing-strip span{color:#b6c5c0}.public-pricing-strip>a{color:#17211d;background:#f6bd60;flex:none}.public-pricing-strip>a:hover{background:#fff;transform:translateY(-1px)}.public-home a:focus-visible{outline:3px solid var(--sun);outline-offset:3px}.auth-page{place-items:center;min-height:90vh;padding:40px 0;display:grid}.auth-card{border:1px solid var(--line);border-radius:var(--radius);width:min(440px,100% - 32px);box-shadow:var(--shadow);background:#fffaf0eb;padding:32px}.auth-header{border-bottom:1px solid var(--line);color:var(--accent-strong);align-items:center;gap:10px;margin-bottom:24px;padding-bottom:20px;font-size:20px;font-weight:800;display:flex}.auth-blurb{color:var(--muted);text-align:center;margin-bottom:20px;line-height:1.7}.auth-cta{border-radius:var(--radius);background:var(--ink);color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;width:100%;min-height:44px;font-weight:800;text-decoration:none;transition:background .16s,transform .16s;display:inline-flex}.auth-cta:hover{background:var(--accent-strong);transform:translateY(-1px)}.auth-loading{min-height:70vh;color:var(--muted);place-items:center;display:grid}.auth-tabs{border:1px solid var(--line);border-radius:var(--radius);gap:0;margin-bottom:20px;display:flex;overflow:hidden}.auth-tabs button{min-height:42px;color:var(--muted);background:0 0;border-radius:0;flex:1;font-weight:600}.auth-tabs button.active{background:var(--accent);color:#fff}.auth-tabs button:hover:not(.active){background:#0f8b8d14;transform:none}.auth-form{gap:16px;display:grid}.auth-field label{color:var(--ink);margin-bottom:6px;font-size:14px;font-weight:700;display:block}.auth-input{border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);background:#ffffff9e;align-items:center;gap:10px;padding:0 14px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex}.auth-input:focus-within{border-color:var(--accent);background:#fff;box-shadow:0 0 0 4px #0f8b8d1f}.auth-input input{width:100%;min-height:44px;color:var(--ink);background:0 0;border:0;outline:none}.lock-icon{letter-spacing:2px;font-size:8px}.auth-submit{width:100%;margin-top:4px}.auth-divider{color:var(--muted);align-items:center;gap:12px;margin:20px 0;font-size:14px;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-top:1px solid var(--line);flex:1}.auth-google{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff}.auth-google:hover:not(:disabled){border-color:var(--muted);background:#ffffffd9;transform:none}.auth-error,.auth-success{border-radius:var(--radius);margin-top:16px;padding:10px 14px;font-size:14px;font-weight:700;line-height:1.5}.auth-error{color:#8c3a24;background:#d96c4a1a;border:1px solid #d96c4a6b}.auth-success{color:var(--accent-strong);background:#0f8b8d1a;border:1px solid #0f8b8d52}.app-nav{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffaf0eb;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px 20px;display:flex}.app-nav-brand{color:var(--accent-strong);align-items:center;gap:8px;font-size:16px;font-weight:800;text-decoration:none;display:flex}.app-nav-links{align-items:center;gap:6px;display:flex}.app-nav-link{border-radius:var(--radius);color:var(--muted);align-items:center;gap:6px;padding:6px 10px;font-size:14px;font-weight:600;text-decoration:none;transition:background .14s;display:inline-flex}.app-nav-link:hover,.app-nav-link.active{color:var(--accent-strong);background:#0f8b8d1a}.app-nav-user{color:var(--muted);align-items:center;gap:5px;padding:6px 10px;font-size:13px;display:inline-flex}.app-nav-logout{border-radius:var(--radius);min-height:34px;color:var(--muted);background:0 0;padding:0 10px;font-size:14px}.app-nav-logout:hover:not(:disabled){color:var(--clay);background:#d96c4a1f;transform:none}.pricing-hero{max-width:780px;padding:54px 0 34px}.pricing-hero h1{font-size:clamp(42px,7vw,72px)}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.pricing-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffaf0eb;padding:28px;position:relative}.pricing-card.featured{background:linear-gradient(145deg,#dceee7eb,#fffaf0f5);border-color:#0f8b8da6}.pricing-badge{background:var(--accent);color:#fff;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;position:absolute;top:18px;right:18px}.pricing-card h2{margin-bottom:8px;font-size:26px}.pricing-price{color:var(--ink);margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:38px;font-weight:700}.pricing-description,.pricing-note{color:var(--muted);line-height:1.7}.pricing-card ul{gap:10px;margin:24px 0;padding:0;list-style:none;display:grid}.pricing-card li{color:#3e4a45;align-items:center;gap:9px;display:flex}.pricing-card li svg{color:var(--accent)}.checkout-action button{width:100%}.checkout-login-link{border-radius:var(--radius);background:var(--accent);color:#fff;justify-content:center;align-items:center;width:100%;min-height:42px;font-weight:800;text-decoration:none;transition:background .14s,transform .14s;display:inline-flex}.checkout-login-link:hover{background:var(--accent-strong);transform:translateY(-1px)}.checkout-error{color:#8c3a24;margin:10px 0 0;font-size:14px;line-height:1.5}.pricing-note{text-align:center;margin:18px 0 0}.pricing-public-note{border:1px solid var(--line);width:fit-content;color:var(--muted);background:#fffaf0b8;border-radius:999px;margin:18px 0 0;padding:8px 12px;font-size:13px}.payment-success-page{place-items:center;min-height:100vh;display:grid}.payment-success-card{border:1px solid var(--line);border-radius:var(--radius);width:min(620px,100%);box-shadow:var(--shadow);text-align:center;background:#fffaf0f0;padding:42px}.payment-success-card>svg{color:var(--accent);margin-bottom:18px}.payment-success-card .eyebrow{margin-left:auto;margin-right:auto}.payment-success-card h1{max-width:none;font-size:clamp(38px,7vw,62px)}.payment-success-card>p:not(.eyebrow){color:var(--muted);line-height:1.8}.save-bar{border-radius:var(--radius);align-items:center;gap:8px;margin-top:14px;padding:10px 14px;font-size:14px;font-weight:600;display:flex}.save-saving{color:#765323;background:#f6bd6024;border:1px solid #f6bd606b}.save-saved{color:var(--accent-strong);background:#0f8b8d1a;border:1px solid #0f8b8d52}.save-error{color:#8c3a24;background:#d96c4a1a;border:1px solid #d96c4a6b}.save-bar-link{color:var(--accent-strong);align-items:center;gap:4px;margin-left:auto;font-weight:800;text-decoration:none;display:inline-flex}.save-bar-link:hover{text-decoration:underline}.history-loader{min-height:300px;color:var(--muted);place-items:center;display:grid}.history-empty{border:1px dashed var(--line);border-radius:var(--radius);min-height:240px;color:var(--muted);text-align:center;place-items:center;gap:12px;display:grid}.history-empty p{margin:0}.history-empty .auth-cta{width:auto;padding:0 24px}.history-list{gap:10px;display:grid}.history-item{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;color:inherit;background:#fffaf0d9;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;transition:border-color .14s,transform .14s,background .14s;display:flex}.history-item:hover{border-color:var(--accent);background:#fffaf0;transform:translateY(-1px)}.history-item-body{flex:1;min-width:0}.history-item-titles{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.history-item-resume,.history-item-jd{border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-size:13px;font-weight:700;display:inline-flex}.history-item-resume{color:var(--accent-strong);background:#0f8b8d1a}.history-item-jd{color:#765323;background:#f6bd602e}.history-item-arrow{color:var(--muted);flex:none}.history-item-summary{color:#4e5b56;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;line-height:1.6;overflow:hidden}.history-item-meta{color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:12px;display:flex}.history-item-open{color:var(--muted);flex:none;transition:color .14s}.history-item:hover .history-item-open{color:var(--accent-strong)}.detail-back{margin-bottom:4px}.detail-back a{color:var(--muted);align-items:center;gap:6px;font-size:14px;font-weight:600;text-decoration:none;transition:color .14s;display:inline-flex}.detail-back a:hover{color:var(--accent-strong)}.detail-meta-tags{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.detail-tag{border:1px solid var(--line);color:var(--ink);background:#fffaf099;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:14px;font-weight:600;display:inline-flex}@media (max-width:860px){.public-nav{flex-direction:column;align-items:flex-start;padding-bottom:16px}.public-nav-links{flex-wrap:wrap;gap:12px 18px}.public-hero{grid-template-columns:1fr;min-height:auto;padding:54px 0 74px}.public-dossier{width:min(560px,100% - 18px);margin:0 auto}.public-workflow ol{grid-template-columns:1fr}.public-workflow li{border-right:0;border-bottom:1px solid var(--line);min-height:0}.public-workflow li:last-child{border-bottom:0}.public-workflow li div{margin-top:26px}.public-pricing-strip{flex-direction:column;align-items:flex-start}.app-nav{flex-direction:column;align-items:stretch;gap:8px}.app-nav-links{flex-wrap:wrap}.pricing-grid{grid-template-columns:1fr}}@media (max-width:560px){.public-home{padding-top:16px}.public-nav-links a:not(.public-nav-login){font-size:13px}.public-hero{padding-top:42px}.public-hero h1{font-size:48px}.public-hero-actions{flex-direction:column;align-items:stretch}.public-primary-action,.public-secondary-action{width:100%}.public-dossier{transform:none}.public-section,.public-workflow{padding:58px 0}.public-section-heading{grid-template-columns:1fr;gap:12px}.public-feature-ledger article{grid-template-columns:58px 1fr;gap:10px 14px}.public-feature-ledger article p{grid-column:2}.public-pricing-strip{padding:26px}.public-pricing-strip>a{width:100%}.auth-card{padding:22px}.history-item{flex-wrap:wrap;padding:14px}.history-item-meta{width:100%}}.online-admin-head{align-items:center}.online-new-button,.online-admin-actions a,.online-admin-actions button,.online-editor-actions a{border-radius:var(--radius);background:var(--ink);color:#fff;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:800;text-decoration:none;display:inline-flex}.online-admin-list{gap:14px;display:grid}.online-admin-card,.online-generate-bar,.online-login-strip,.online-empty{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffaf0e0}.online-admin-card{justify-content:space-between;align-items:center;gap:20px;padding:18px;display:flex}.online-admin-card h2{margin:8px 0 6px;font-size:24px}.online-admin-card p,.online-admin-card code{color:var(--muted)}.online-admin-card code{color:var(--accent-strong);background:#0f8b8d14;border-radius:5px;margin-top:8px;padding:5px 7px;display:inline-block}.online-admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.online-admin-actions button{min-height:42px}.online-status{border-radius:4px;width:fit-content;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.online-status-published{color:var(--accent-strong);background:#0f8b8d1f}.online-status-draft{color:#765323;background:#f6bd6033}.online-empty{text-align:center;justify-items:center;gap:10px;padding:48px 20px;display:grid}.online-empty p{max-width:520px;color:var(--muted);line-height:1.7}.online-source-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;display:grid}.online-login-strip,.online-generate-bar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:14px 16px;display:flex}.online-login-strip span,.online-generate-bar span{color:var(--muted)}.online-login-strip a{color:var(--accent-strong);font-weight:900}.online-history-picker{gap:10px;max-height:440px;display:grid;overflow:auto}.online-history-picker label{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.online-history-picker label.selected{border-color:var(--accent);background:#dceee78c}.online-history-picker span{min-width:0}.online-history-picker strong,.online-history-picker small{display:block}.online-history-picker small,.online-mini-empty{color:var(--muted)}.online-mini-empty{border:1px dashed var(--line);border-radius:var(--radius);place-items:center;min-height:220px;display:grid}.online-editor-shell{background:#eef2ef;min-height:100vh}.online-editor-toolbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fafcf9f0;border-bottom:1px solid #ccd5cf;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex;position:sticky;top:0}.online-editor-left,.online-editor-actions,.online-editor-left a,.online-save-state{align-items:center;display:flex}.online-editor-left{gap:14px;min-width:0}.online-editor-left a{color:#52615a;gap:6px;font-weight:800;text-decoration:none}.online-editor-left input{color:#17211d;background:0 0;border:0;outline:none;width:min(420px,42vw);font-size:20px;font-weight:900}.online-save-state{color:#69736f;gap:5px;font-size:12px;font-weight:800}.online-save-error{color:#8c3a24}.online-editor-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.online-editor-actions button,.online-editor-actions a{min-height:38px;padding:0 12px;font-size:13px}.online-editor-actions button.secondary{color:#17211d;background:#fff;border:1px solid #ccd5cf}.online-editor-alert{color:#8c3a24;background:#ffe8df;align-items:center;gap:8px;padding:10px 18px;font-weight:800;display:flex}.online-editor-layout{grid-template-columns:minmax(330px,420px) minmax(0,1fr);gap:18px;padding:18px;display:grid}.online-editor-panel{align-content:start;gap:12px;max-height:calc(100vh - 92px);display:grid;overflow:auto}.online-editor-section{background:#fbfcf8;border:1px solid #ccd5cf;border-radius:8px;padding:16px}.online-editor-section h2{margin-bottom:12px;font-size:16px}.online-editor-section label{gap:6px;margin-bottom:10px;display:grid}.online-editor-section label span{color:#66736d;font-size:12px;font-weight:900}.online-editor-section input,.online-editor-section textarea{color:#17211d;background:#fff;border:1px solid #cfd8d3;border-radius:7px;outline:none;width:100%;min-height:0;padding:10px 11px;line-height:1.55}.online-editor-section textarea{resize:vertical}.online-editor-hint{color:#66736d;margin:8px 0 0;font-size:12px;line-height:1.5}.online-theme-selector{gap:8px;display:grid}.online-theme-selector button{color:#17211d;text-align:left;background:#fff;border:1px solid #ccd5cf;justify-items:start;height:auto;min-height:0;padding:10px;display:grid}.online-theme-selector button.active{border-color:var(--accent);background:#dceee7bf}.online-theme-selector span{color:#66736d;margin-top:3px;font-size:12px;font-weight:600;line-height:1.45}.online-editor-preview{background:#fff;border:1px solid #ccd5cf;border-radius:10px;min-width:0;height:calc(100vh - 92px);overflow:auto}.public-online-page{background:#101513;min-height:100vh}.online-resume{--online-bg:#fbfaf5;--online-panel:#ffffffb8;--online-ink:#161f1c;--online-muted:#62716a;--online-line:#19231f21;--online-accent:#0f8b8d;--online-accent-2:#f6bd60;min-height:100vh;color:var(--online-ink);background:linear-gradient(135deg, color-mix(in srgb, var(--online-accent) 13%, transparent), transparent 36%), linear-gradient(315deg, color-mix(in srgb, var(--online-accent-2) 20%, transparent), transparent 42%), var(--online-bg);padding:clamp(28px,4vw,64px);font-family:Avenir Next,PingFang SC,Microsoft YaHei,system-ui,sans-serif}.online-resume-preview{min-height:auto}.online-resume h1,.online-resume h2,.online-resume h3,.online-resume p{margin-top:0}.online-hero{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:stretch;gap:clamp(22px,4vw,54px);max-width:1180px;margin:0 auto 28px;display:grid}.online-kicker,.online-location,.online-section-heading,.online-primary-cta,.online-contact-links a,.online-link-row a{align-items:center;display:inline-flex}.online-kicker{color:var(--online-accent);gap:8px;margin-bottom:18px;font-size:14px;font-weight:900}.online-hero h1{letter-spacing:0;margin-bottom:14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(46px,9vw,112px);line-height:.9}.online-headline{max-width:760px;margin-bottom:18px;font-size:clamp(22px,3vw,38px);font-weight:900;line-height:1.12}.online-summary{max-width:760px;color:var(--online-muted);font-size:17px;line-height:1.85}.online-hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.online-primary-cta{background:var(--online-ink);min-height:46px;color:var(--online-bg);border-radius:999px;gap:8px;padding:0 18px;font-weight:900;text-decoration:none}.online-location{color:var(--online-muted);gap:6px;font-weight:800}.online-signal-panel,.online-section,.online-contact-band{border:1px solid var(--online-line);background:var(--online-panel);box-shadow:0 24px 70px #0a120e1f}.online-signal-panel{align-content:end;min-height:360px;padding:24px;display:grid}.online-signal-panel span,.online-project-role,.online-contact-band p{color:var(--online-accent);text-transform:uppercase;font-size:13px;font-weight:950}.online-signal-panel strong{margin:12px 0 20px;font-size:clamp(24px,3vw,38px);line-height:1.1;display:block}.online-keywords,.online-chip-row,.online-link-row,.online-contact-links{flex-wrap:wrap;gap:8px;display:flex}.online-keywords em,.online-chip-row span{border:1px solid var(--online-line);color:var(--online-muted);background:#ffffff7a;border-radius:999px;padding:6px 9px;font-size:12px;font-style:normal;font-weight:800}.online-section,.online-contact-band{max-width:1180px;margin:0 auto 18px;padding:clamp(20px,3vw,34px)}.online-section-heading{gap:9px;margin-bottom:18px}.online-section-heading h2{margin-bottom:0;font-size:24px}.online-highlight-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.online-highlight-card,.online-project-card{border:1px solid var(--online-line);background:#ffffff75}.online-highlight-card{padding:18px}.online-highlight-card span{color:var(--online-accent);font-weight:950}.online-highlight-card h3,.online-project-card h3{margin:12px 0 8px;font-size:20px}.online-highlight-card p,.online-project-card p,.online-timeline p,.online-timeline li,.online-education-list span{color:var(--online-muted);line-height:1.7}.online-project-list{gap:12px;display:grid}.online-project-card{grid-template-columns:minmax(0,1fr) minmax(180px,.35fr);gap:18px;padding:20px;display:grid}.online-project-card strong{color:var(--online-ink);margin-top:10px;display:block}.online-link-row{grid-column:1/-1}.online-link-row a,.online-contact-links a{color:var(--online-ink);gap:6px;font-weight:850;text-decoration:none}.online-two-column{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:18px;max-width:1180px;margin:0 auto;display:grid}.online-two-column .online-section{width:100%;margin-bottom:18px}.online-timeline{gap:16px;display:grid}.online-timeline article{border-left:3px solid var(--online-accent);padding-left:16px}.online-timeline span{color:var(--online-muted);font-size:12px;font-weight:900}.online-timeline h3{margin:6px 0 4px}.online-timeline ul{margin-bottom:0;padding-left:20px}.online-side-stack{min-width:0}.online-skill-groups{gap:16px;display:grid}.online-skill-groups h3{margin-bottom:8px;font-size:15px}.online-education-list{gap:10px;display:grid}.online-education-list p{margin-bottom:0}.online-education-list strong,.online-education-list span{display:block}.online-contact-band{justify-content:space-between;align-items:center;gap:18px;margin-bottom:0;display:flex}.online-contact-band h2{margin-bottom:0;font-size:clamp(26px,4vw,48px)}.theme-product-homepage{--online-bg:#f4f8fb;--online-panel:#ffffffd1;--online-ink:#14211f;--online-muted:#5e6d78;--online-accent:#136f63;--online-accent-2:#ffcf5a}.theme-product-homepage .online-signal-panel,.theme-product-homepage .online-section,.theme-product-homepage .online-contact-band{border-radius:8px}.theme-creative-portfolio{--online-bg:#fff7fb;--online-panel:#ffffffb3;--online-ink:#24151f;--online-muted:#755f6f;--online-accent:#d84f7a;--online-accent-2:#39a7a5}.theme-creative-portfolio .online-hero{grid-template-columns:minmax(0,1fr)}.theme-creative-portfolio .online-signal-panel{min-height:0}.theme-creative-portfolio .online-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-enterprise-tech{--online-bg:#101716;--online-panel:#152220d1;--online-ink:#eef8f2;--online-muted:#a9bab3;--online-line:#d6f1e629;--online-accent:#7de3c3;--online-accent-2:#82aaff}.theme-enterprise-tech .online-primary-cta{background:var(--online-accent);color:#0d1614}.theme-enterprise-tech .online-highlight-card,.theme-enterprise-tech .online-project-card,.theme-enterprise-tech .online-keywords em,.theme-enterprise-tech .online-chip-row span{background:#ffffff0d}@media (max-width:980px){.online-source-grid,.online-editor-layout,.online-hero,.online-two-column{grid-template-columns:1fr}.online-editor-preview,.online-editor-panel{height:auto;max-height:none}.online-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.online-admin-card,.online-login-strip,.online-generate-bar,.online-contact-band,.online-editor-toolbar,.online-editor-left{flex-direction:column;align-items:stretch}.online-editor-left input{width:100%}.online-project-card,.online-highlight-grid,.theme-creative-portfolio .online-highlight-grid{grid-template-columns:1fr}}.resume-layout{overflow-wrap:anywhere;overflow-x:hidden}.resume-layout *{min-width:0}.resume-layout h1,.resume-layout h2,.resume-layout h3,.resume-layout p{margin-top:0}.resume-layout h1{letter-spacing:0}.resume-kicker,.resume-section-title,.resume-primary-cta,.resume-contact-links a,.resume-project-links a,.resume-meta-row span,.resume-tech-command p,.resume-tech-actions em,.resume-tech-section-head p{align-items:center;display:inline-flex}.resume-kicker{color:var(--online-accent);gap:8px;margin-bottom:14px;font-size:13px;font-weight:950}.resume-primary-cta{background:var(--online-ink);width:fit-content;min-height:44px;color:var(--online-bg);border-radius:999px;gap:8px;padding:0 17px;font-weight:950;text-decoration:none}.resume-section-title{color:var(--online-ink);gap:9px;margin-bottom:16px}.resume-section-title h2{margin-bottom:0;font-size:21px}.resume-chip-row,.resume-contact-links,.resume-project-links,.resume-meta-row,.resume-product-actions,.resume-tech-actions{flex-wrap:wrap;gap:8px;display:flex}.resume-chip-row span{border:1px solid var(--online-line);background:color-mix(in srgb, var(--online-panel) 70%, transparent);color:var(--online-muted);border-radius:999px;padding:6px 9px;font-size:12px;font-weight:850}.resume-contact-links a,.resume-project-links a{color:var(--online-ink);gap:6px;font-size:13px;font-weight:850;text-decoration:none}.resume-empty-text{color:var(--online-muted);margin-bottom:0;line-height:1.6}.resume-panel{border:1px solid var(--online-line);background:var(--online-panel);padding:18px}.resume-panel h2{color:var(--online-accent);text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:950}.resume-skill-groups{gap:16px;display:grid}.resume-skill-groups h3{margin-bottom:8px;font-size:15px}.resume-education-list,.resume-compact-experience{gap:12px;display:grid}.resume-education-list p,.resume-compact-experience p{margin-bottom:0}.resume-education-list strong,.resume-education-list span{display:block}.resume-education-list span,.resume-compact-experience span,.resume-compact-experience p,.resume-compact-experience li{color:var(--online-muted);line-height:1.65}.resume-compact-experience article{border-bottom:1px solid var(--online-line);padding-bottom:12px}.resume-compact-experience article:last-child{border-bottom:0;padding-bottom:0}.resume-compact-experience h3{margin:5px 0 3px}.resume-compact-experience ul{margin-bottom:0;padding-left:18px}.resume-contact-band{border:1px solid var(--online-line);background:var(--online-panel);justify-content:space-between;align-items:center;gap:18px;max-width:1180px;margin:18px auto 0;padding:clamp(22px,3vw,34px);display:flex}.resume-contact-band p{color:var(--online-accent);text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:950}.resume-contact-band h2{margin-bottom:0;font-size:clamp(26px,4vw,48px)}.online-resume-preview{padding:clamp(18px,3vw,34px)}.online-resume-preview h1{font-size:clamp(38px,7vw,76px)}.resume-clean{--online-bg:#fbfaf6;--online-panel:#ffffffd1;--online-ink:#17211d;--online-muted:#607069;--online-line:#17211d24;--online-accent:#0f766e;--online-accent-2:#c8942e;background:linear-gradient(90deg, #0f766e14, transparent 34%), repeating-linear-gradient(0deg, #17211d06 0, #17211d06 1px, transparent 1px, transparent 32px), var(--online-bg)}.resume-clean-hero{border-bottom:1px solid var(--online-line);grid-template-columns:minmax(0,.95fr) minmax(300px,.7fr);align-items:end;gap:clamp(22px,4vw,48px);max-width:1120px;margin:0 auto 22px;padding-bottom:24px;display:grid}.resume-clean-hero h1{max-width:680px;margin-bottom:14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(46px,8vw,98px);line-height:.94}.resume-clean-headline{max-width:680px;margin-bottom:0;font-size:clamp(20px,3vw,34px);font-weight:850;line-height:1.18}.resume-clean-card{border:1px solid var(--online-line);background:var(--online-panel);padding:22px;box-shadow:0 22px 60px #17211d1a}.resume-clean-card p{color:var(--online-muted);line-height:1.85}.resume-meta-row{align-items:center;margin-top:18px}.resume-meta-row span{color:var(--online-muted);gap:6px;font-weight:800}.resume-clean-shell{grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:20px;max-width:1120px;margin:0 auto;display:grid}.resume-clean-main,.resume-clean-sidebar{align-content:start;gap:16px;display:grid}.resume-clean-section,.resume-clean-strengths,.resume-clean-projects{border:1px solid var(--online-line);background:var(--online-panel);padding:22px}.resume-clean-strengths{gap:14px;display:grid}.resume-clean-strengths article{border-bottom:1px solid var(--online-line);grid-template-columns:42px minmax(0,1fr);gap:14px;padding-bottom:14px;display:grid}.resume-clean-strengths article:last-child{border-bottom:0;padding-bottom:0}.resume-clean-strengths span{color:var(--online-accent);font-weight:950}.resume-clean-strengths h2,.resume-clean-projects h2{margin-bottom:6px;font-size:20px}.resume-clean-strengths p,.resume-clean-projects p,.resume-clean-timeline p,.resume-clean-timeline li{color:var(--online-muted);line-height:1.7}.resume-clean-timeline{gap:18px;display:grid}.resume-clean-timeline article{border-left:3px solid var(--online-accent);padding-left:18px}.resume-clean-timeline time{color:var(--online-muted);font-size:12px;font-weight:900}.resume-clean-timeline h2{margin:6px 0 4px;font-size:20px}.resume-clean-timeline ul{margin-bottom:0;padding-left:20px}.resume-clean-projects{gap:12px;display:grid}.resume-clean-projects article{border:1px solid var(--online-line);background:#ffffff94;padding:16px}.resume-clean-projects article>div:first-child{justify-content:space-between;gap:14px;margin-bottom:8px;display:flex}.resume-clean-projects strong{color:var(--online-ink);margin-bottom:10px;display:block}.resume-product{--online-bg:#f4f8fb;--online-panel:#ffffffe0;--online-ink:#13201d;--online-muted:#5e6f78;--online-line:#13201d1f;--online-accent:#126f63;--online-accent-2:#e6b935;background:linear-gradient(135deg, #126f6329, transparent 38%), radial-gradient(circle at 80% 0%, #e6b9353d, transparent 30%), var(--online-bg)}.resume-product-hero{grid-template-columns:minmax(0,1.12fr) minmax(300px,.68fr);align-items:center;gap:clamp(24px,5vw,68px);max-width:1180px;min-height:min(620px,100vh - 96px);margin:0 auto 20px;display:grid}.resume-product-hero h1{max-width:860px;margin-bottom:20px;font-size:clamp(50px,8vw,112px);line-height:.92}.resume-product-hero-copy>p:not(.resume-kicker){max-width:730px;color:var(--online-muted);font-size:clamp(19px,2.2vw,28px);line-height:1.55}.resume-product-actions{align-items:center;margin-top:26px}.resume-product-actions>a:not(.resume-primary-cta){color:var(--online-ink);font-weight:900}.resume-product-console{border:1px solid var(--online-line);background:#ffffffbd;border-radius:8px;min-height:370px;padding:26px;box-shadow:0 28px 90px #13201d1f}.resume-product-console span,.resume-product-section-head p,.resume-product-case-list article span{color:var(--online-accent);text-transform:uppercase;font-size:13px;font-weight:950}.resume-product-console strong{margin:42px 0 10px;font-size:clamp(34px,5vw,58px);line-height:1;display:block}.resume-product-console p{color:var(--online-muted);line-height:1.65}.resume-product-features{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1180px;margin:0 auto 18px;display:grid}.resume-product-features article,.resume-product-cases,.resume-product-stack,.resume-product-case-list article{border:1px solid var(--online-line);background:var(--online-panel);border-radius:8px}.resume-product-features article{padding:20px}.resume-product-features span{color:var(--online-accent);font-weight:950}.resume-product-features h2{margin:26px 0 10px;font-size:21px}.resume-product-features p,.resume-product-case-list p,.resume-product-stack p,.resume-product-stack li{color:var(--online-muted);line-height:1.7}.resume-product-cases,.resume-product-stack{max-width:1180px;margin:0 auto 18px;padding:clamp(22px,3vw,34px)}.resume-product-section-head{grid-template-columns:minmax(0,.42fr) minmax(0,1fr);gap:20px;margin-bottom:18px;display:grid}.resume-product-section-head h2{margin-bottom:0;font-size:clamp(28px,4vw,52px);line-height:1.05}.resume-product-case-list{gap:12px;display:grid}.resume-product-case-list article{grid-template-columns:72px minmax(160px,.45fr) minmax(0,1fr) minmax(180px,.5fr);align-items:start;gap:18px;padding:20px;display:grid}.resume-product-case-index{background:var(--online-accent);color:#fff;border-radius:50%;place-items:center;width:52px;height:52px;font-weight:950;display:grid}.resume-product-case-list h3{margin:6px 0 0;font-size:22px}.resume-product-case-list strong{margin-top:8px;display:block}.resume-product-case-list .resume-chip-row,.resume-product-case-list .resume-project-links{grid-column:3/-1}.resume-product-stack{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:26px;display:grid}.resume-creative{--online-bg:#fff7fb;--online-panel:#ffffffc7;--online-ink:#24151f;--online-muted:#735f6e;--online-line:#24151f24;--online-accent:#d84f7a;--online-accent-2:#2f9f9d;background:linear-gradient(90deg, #d84f7a29, transparent 30%), linear-gradient(315deg, #2f9f9d2e, transparent 36%), var(--online-bg)}.resume-creative-hero{grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);align-items:end;gap:clamp(22px,5vw,70px);max-width:1220px;margin:0 auto 22px;display:grid}.resume-creative-hero p{color:var(--online-accent);text-transform:uppercase;font-weight:950}.resume-creative-hero h1{margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(72px,14vw,170px);line-height:.82}.resume-creative-hero aside{border:1px solid var(--online-line);background:var(--online-panel);gap:16px;padding:22px;display:grid;transform:rotate(-1.5deg)}.resume-creative-hero strong{font-size:clamp(22px,3vw,34px);line-height:1.1}.resume-creative-hero span,.resume-creative-projects article>span,.resume-creative-notes p,.resume-creative-support p,.resume-creative-support li{color:var(--online-muted);line-height:1.75}.resume-creative-keywords{flex-wrap:wrap;gap:9px;max-width:1220px;margin:0 auto 20px;display:flex}.resume-creative-keywords span{border:1px solid var(--online-line);background:var(--online-panel);align-items:center;gap:8px;padding:8px 11px;font-weight:900;display:inline-flex}.resume-creative-keywords em{color:var(--online-accent);font-style:normal}.resume-creative-projects{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;max-width:1220px;margin:0 auto 18px;display:grid}.resume-creative-projects article{border:1px solid var(--online-line);background:var(--online-panel);grid-column:span 3;align-content:space-between;min-height:360px;padding:22px;display:grid;position:relative}.resume-creative-projects article.featured{background:color-mix(in srgb, var(--online-accent) 10%, var(--online-panel));grid-column:span 4;min-height:460px}.resume-creative-projects article:nth-child(3n){grid-column:span 2}.resume-creative-number{color:var(--online-accent);opacity:.28;font-size:clamp(34px,5vw,70px);font-weight:950;line-height:1;position:absolute;top:16px;right:18px}.resume-creative-projects p{color:var(--online-accent);text-transform:uppercase;font-size:13px;font-weight:950}.resume-creative-projects h2{max-width:82%;margin:52px 0 14px;font-size:clamp(28px,4vw,54px);line-height:1}.resume-creative-projects strong{margin:16px 0;font-size:18px;display:block}.resume-creative-notes,.resume-creative-support{gap:14px;max-width:1220px;margin:0 auto 18px;display:grid}.resume-creative-notes{grid-template-columns:repeat(3,minmax(0,1fr))}.resume-creative-notes article,.resume-creative-support>div{border:1px solid var(--online-line);background:var(--online-panel);padding:22px}.resume-creative-notes span{color:var(--online-accent);font-weight:950}.resume-creative-notes h2{margin:16px 0 10px}.resume-creative-support{grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(260px,.65fr)}.resume-tech{--online-bg:#0c1211;--online-panel:#121f1dd1;--online-ink:#eef8f2;--online-muted:#a8b9b2;--online-line:#cdf4e529;--online-accent:#77e5c3;--online-accent-2:#82aaff;background:linear-gradient(#77e5c30d 1px, transparent 1px), linear-gradient(90deg, #77e5c30d 1px, transparent 1px), radial-gradient(circle at 80% 8%, #82aaff2e, transparent 30%), var(--online-bg);background-size:34px 34px,34px 34px,auto,auto}.resume-tech .resume-primary-cta{background:var(--online-accent);color:#07100e}.resume-tech-hero{grid-template-columns:minmax(0,1fr) minmax(320px,.45fr);gap:18px;max-width:1200px;margin:0 auto 18px;display:grid}.resume-tech-command,.resume-tech-status,.resume-tech-matrix,.resume-tech-projects,.resume-tech-lower>div{border:1px solid var(--online-line);background:var(--online-panel);box-shadow:0 24px 80px #00000038}.resume-tech-command{padding:clamp(24px,4vw,44px)}.resume-tech-command p,.resume-tech-section-head p{color:var(--online-accent);gap:8px;font-size:13px;font-weight:950}.resume-tech-command h1{margin:42px 0 14px;font-family:Courier New,monospace;font-size:clamp(48px,8vw,106px);line-height:.92}.resume-tech-command strong{max-width:760px;margin-bottom:16px;font-size:clamp(22px,3vw,36px);line-height:1.15;display:block}.resume-tech-command span,.resume-tech-status p,.resume-tech-projects p,.resume-tech-lower p,.resume-tech-lower li{color:var(--online-muted);line-height:1.75}.resume-tech-actions{align-items:center;margin-top:24px}.resume-tech-actions em{color:var(--online-muted);gap:6px;font-style:normal;font-weight:850}.resume-tech-status{align-content:end;gap:16px;min-height:360px;padding:24px;display:grid}.resume-tech-status>span,.resume-tech-project-meta span{color:var(--online-accent);font-family:Courier New,monospace;font-size:12px;font-weight:950}.resume-tech-status strong{font-size:clamp(24px,3vw,42px);line-height:1.05}.resume-tech-matrix,.resume-tech-projects,.resume-tech-lower{max-width:1200px;margin:0 auto 18px}.resume-tech-matrix,.resume-tech-projects{padding:clamp(22px,3vw,34px)}.resume-tech-section-head{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.resume-tech-section-head h2{margin-bottom:0;font-family:Courier New,monospace;font-size:clamp(28px,4vw,54px)}.resume-tech-skill-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.resume-tech-skill-grid article{border:1px solid var(--online-line);background:#ffffff09;padding:18px}.resume-tech-skill-grid span{color:var(--online-accent-2);font-family:Courier New,monospace;font-size:12px}.resume-tech-skill-grid h3{margin:12px 0}.resume-tech-projects>div:not(.resume-tech-section-head){gap:12px;display:grid}.resume-tech-projects article{border:1px solid var(--online-line);background:#ffffff09;grid-template-columns:minmax(220px,.42fr) minmax(0,1fr) minmax(180px,.38fr);gap:18px;padding:20px;display:grid}.resume-tech-project-meta h3{margin:8px 0 4px;font-size:22px}.resume-tech-impact{color:var(--online-accent);align-items:flex-start;gap:8px;font-weight:900;line-height:1.55;display:flex}.resume-tech-projects .resume-chip-row,.resume-tech-projects .resume-project-links{grid-column:2/-1}.resume-tech-lower{grid-template-columns:minmax(0,1fr) minmax(280px,.48fr);gap:18px;display:grid}.resume-tech-lower>div{padding:24px}.resume-tech .resume-chip-row span{background:#77e5c314}.resume-tech .resume-contact-links a,.resume-tech .resume-project-links a{color:var(--online-accent)}@media (max-width:1100px){.resume-product-features,.resume-tech-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resume-product-case-list article,.resume-tech-projects article{grid-template-columns:1fr}.resume-product-case-list .resume-chip-row,.resume-product-case-list .resume-project-links,.resume-tech-projects .resume-chip-row,.resume-tech-projects .resume-project-links{grid-column:auto}}@media (max-width:900px){.resume-clean-hero,.resume-clean-shell,.resume-product-hero,.resume-product-section-head,.resume-product-stack,.resume-creative-hero,.resume-creative-support,.resume-tech-hero,.resume-tech-lower,.resume-creative-projects{grid-template-columns:1fr}.resume-creative-projects article,.resume-creative-projects article.featured,.resume-creative-projects article:nth-child(3n){grid-column:auto}.resume-creative-notes{grid-template-columns:1fr}}@media (max-width:640px){.resume-product-features,.resume-tech-skill-grid{grid-template-columns:1fr}.resume-contact-band,.resume-clean-projects article>div:first-child,.resume-tech-section-head{flex-direction:column;align-items:stretch}.resume-clean-strengths article{grid-template-columns:1fr}.resume-creative-hero aside{transform:none}.resume-layout{padding:20px}}.legal-page{--legal-ink:#172521;--legal-muted:#65716d;--legal-line:#cfd8d2;--legal-paper:#f4f8f4;--legal-accent:#076f66;min-height:100vh;color:var(--legal-ink);background:linear-gradient(90deg, #076f660f 1px, transparent 1px) 0 0 / 28px 28px, var(--legal-paper);font-family:Avenir Next,PingFang SC,Microsoft YaHei,system-ui,sans-serif}.legal-topbar{z-index:2;border-bottom:1px solid var(--legal-line);justify-content:space-between;align-items:center;gap:20px;width:min(1180px,100% - 40px);margin:0 auto;padding:22px 0;display:flex;position:relative}.legal-back,.legal-topbar nav,.legal-topbar nav a{align-items:center;display:flex}.legal-back{color:var(--legal-ink);gap:7px;font-size:14px;font-weight:750;text-decoration:none}.legal-topbar nav{gap:6px}.legal-topbar nav a{min-height:36px;color:var(--legal-muted);border-radius:999px;padding:0 12px;font-size:14px;font-weight:700;text-decoration:none}.legal-topbar nav a.active{background:var(--legal-ink);color:#fff}.legal-hero{width:min(1180px,100% - 40px);margin:0 auto;padding:78px 0 64px}.legal-document-mark{width:fit-content;color:var(--legal-accent);letter-spacing:.08em;align-items:center;gap:10px;margin-bottom:26px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:800;display:flex}.legal-hero h1{letter-spacing:-.08em;max-width:none;margin-bottom:20px;font-family:Songti SC,SimSun,serif;font-size:clamp(60px,10vw,120px);font-weight:700;line-height:.88}.legal-hero>p{color:#40534d;max-width:720px;margin-bottom:28px;font-size:clamp(17px,2vw,21px);line-height:1.85}.legal-meta{color:var(--legal-muted);gap:24px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:flex}.legal-layout{border-top:1px solid var(--legal-line);grid-template-columns:240px minmax(0,1fr);gap:68px;width:min(1180px,100% - 40px);margin:0 auto;padding:0 0 100px;display:grid}.legal-index{align-self:start;padding-top:34px;position:sticky;top:20px}.legal-index>p{color:var(--legal-muted);letter-spacing:.14em;margin-bottom:16px;font-size:12px;font-weight:800}.legal-index ol{padding:0;list-style:none}.legal-index li+li{margin-top:2px}.legal-index a{color:#52635e;grid-template-columns:30px 1fr;gap:8px;padding:8px 0;font-size:13px;line-height:1.4;text-decoration:none;display:grid}.legal-index a span{color:var(--legal-accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.legal-index a:hover{color:var(--legal-ink)}.legal-document>section{border-bottom:1px solid var(--legal-line);grid-template-columns:58px minmax(0,1fr);gap:22px;padding:56px 0;scroll-margin-top:20px;display:grid}.legal-section-number{width:42px;height:42px;color:var(--legal-accent);border:1px solid #076f6661;border-radius:50%;place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800;display:grid}.legal-document h2{margin:2px 0 20px;font-family:Songti SC,SimSun,serif;font-size:clamp(27px,4vw,40px);line-height:1.2}.legal-document p,.legal-document li{color:#3f514b;font-size:16px;line-height:1.95}.legal-document p:last-child{margin-bottom:0}.legal-document ul{gap:8px;display:grid}.legal-document a{color:var(--legal-accent);text-underline-offset:3px}.legal-notice{color:#705024;background:#ffebc58c;border-left:3px solid #d18430;margin-top:22px;padding:16px 18px;font-size:14px;font-weight:700;line-height:1.7}.legal-data-grid{border:1px solid var(--legal-line);background:var(--legal-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-bottom:24px;display:grid}.legal-data-grid>div{background:#ffffffbd;padding:20px}.legal-data-grid strong{color:var(--legal-ink)}.legal-data-grid p{margin:8px 0 0;font-size:14px;line-height:1.7}.data-flow{border:1px solid var(--legal-line);background:#ffffffad;grid-template-columns:auto 38px auto 38px auto 38px auto;align-items:center;gap:8px;margin:8px 0 24px;padding:22px;display:grid}.data-flow span{text-align:center;font-size:13px;font-weight:800}.data-flow i{color:var(--legal-accent);text-align:center;font-family:ui-monospace,monospace;font-size:10px;font-style:normal}.site-legal-footer{border-top:1px solid var(--line);width:min(1180px,100% - 32px);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:24px 0 34px;font-size:13px;display:flex}.site-footer-brand{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.site-legal-footer nav{flex-wrap:wrap;gap:16px;display:flex}.site-legal-footer a{color:inherit;font-weight:700;text-decoration:none}.site-legal-footer a:hover{color:var(--accent-strong)}.site-legal-footer .site-support-link{color:var(--ink)}.consent-banner{z-index:100;color:#21312c;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fafdfaf7;border:1px solid #aebdb6;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:24px;width:min(760px,100% - 40px);padding:18px;display:grid;position:fixed;bottom:20px;right:20px;box-shadow:0 18px 60px #0f231d38}.consent-banner strong{margin-bottom:5px;display:block}.consent-banner p{color:#52635e;margin:0;font-size:13px;line-height:1.6}.consent-banner a{color:#076f66}.consent-actions{align-items:center;gap:8px;display:flex}.consent-actions button{white-space:nowrap}.consent-actions .consent-secondary{color:#40534d;background:0 0;border:1px solid #c5d1cb}.consent-actions .consent-secondary:hover{color:#172521;background:#edf4f0}@media (max-width:820px){.legal-layout{grid-template-columns:1fr;gap:0}.legal-index{border-bottom:1px solid var(--legal-line);padding-bottom:26px;position:static}.legal-index ol{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.data-flow{grid-template-columns:1fr}.data-flow i{transform:rotate(90deg)}.consent-banner{grid-template-columns:1fr;gap:14px}}@media (max-width:560px){.legal-topbar{flex-direction:column;align-items:flex-start}.legal-hero{padding:54px 0 44px}.legal-hero h1{font-size:58px}.legal-meta{flex-direction:column;gap:5px}.legal-index ol{grid-template-columns:1fr}.legal-document>section{grid-template-columns:1fr;gap:14px;padding:42px 0}.legal-data-grid{grid-template-columns:1fr}.site-legal-footer{flex-direction:column;align-items:flex-start}.consent-actions{flex-direction:column-reverse;align-items:stretch}.consent-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.legal-page{scroll-behavior:auto}}
