/* Phone and touch layouts use a lightweight, single-column reading flow. */
.cv-mobile{scroll-padding-top:84px;scroll-behavior:smooth}
.cv-mobile body{min-width:0;overflow-x:clip}
.cv-mobile main:not(.mb-main){display:none}
.cv-mobile .site-header{height:68px;padding:0 22px;background:#f7f5eef5;border-bottom:1px solid #e5e5da;pointer-events:auto;gap:14px}
.cv-mobile .site-header .brand{font-size:21px;gap:8px;flex-shrink:0;letter-spacing:0}
.cv-mobile .site-header .brand-symbol{width:28px;height:31px;font-size:24px}
.cv-mobile .site-header .brand-cv{font-size:24px}
.mb-status{font-size:11px;color:#859078;margin-left:auto;white-space:nowrap}
.mb-menu{position:relative;font-size:13px}
.mb-menu summary{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;list-style:none}
.cv-mobile summary::-webkit-details-marker{display:none}
.cv-mobile .site-header .mb-menu nav{position:absolute;left:auto;right:0;top:49px;transform:none;display:flex;flex-direction:column;gap:0;width:192px;padding:10px;background:#fffef8;border:1px solid #dedfce;box-shadow:0 10px 30px #3b4a3020;border-radius:6px}
.mb-menu:not([open]) nav{display:none!important}
.mb-menu nav a{display:flex;align-items:center;min-height:46px;padding:0 14px;border-radius:4px}
.mb-menu nav a:active{background:#e9edde}
.mb-main{max-width:720px;margin:auto;padding:0 24px;line-height:1.8;font-size:15px;overflow-wrap:anywhere}
.mb-main [hidden]{display:none!important}
.mb-main section,.mb-main [id^=mb-],.mb-template-toolbar{scroll-margin-top:0}
.mb-main h1,.mb-main h2{font-family:var(--serif);font-weight:400;letter-spacing:-.5px}
.mb-main h1{font-size:clamp(38px,10.5vw,56px);line-height:1.45;margin:18px 0}
.mb-main h2{font-size:clamp(28px,7.8vw,42px);line-height:1.5;margin:13px 0}
.mb-main h3{font-size:18px;line-height:1.65;margin:12px 0}
.mb-main h4{font-size:16px;line-height:1.7;margin:10px 0}
.mb-main em{font-style:normal;color:#657854}
.mb-main p{margin:12px 0}
.mb-main button{border-radius:4px;touch-action:manipulation}
.mb-main button:focus-visible,.cv-mobile summary:focus-visible{outline:2px solid #637357;outline-offset:3px}
.mb-main mark{background:#e5edb9;color:#35452b;padding:2px 3px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.mb-kicker{font-size:11px;letter-spacing:2px;color:#899379}
.mb-intro{font-size:15px;color:#818776;line-height:1.9}
.mb-main .mb-button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:12px 22px;min-height:48px;background:#657754;border:1px solid #657754;color:#fffef5;font-size:14px;border-radius:4px}
.mb-button>span{font-size:22px;line-height:1}
.mb-hero{padding-top:112px;padding-bottom:55px}
.mb-hero .mb-button{margin-top:14px}
.mb-hero-image{display:block;width:calc(100% + 48px);max-width:none;height:auto;margin:38px -24px 0;mask-image:linear-gradient(transparent,#000 9%,#000 88%,transparent)}
.mb-handwriting{font:21px/1.8 var(--serif);color:#8b9379;text-align:center;letter-spacing:1px}
.mb-hero .mb-handwriting{margin-top:7px}
.mb-section{padding:56px 0;border-top:1px solid #dcdfcf}
.mb-small{font-size:12px;line-height:1.8;color:#8d957e}
.mb-small small{font-size:10px}
.mb-label{font-size:11px;letter-spacing:1px;color:#879275}
.mb-paper-top{display:flex;justify-content:space-between;gap:16px;font-size:11px;color:#8a927b;padding-bottom:14px;border-bottom:1px solid #dde0d0}
.mb-edit-paper,.mb-evidence{margin-top:28px;padding:24px;background:#fffef7;border:1px solid #e4e2d3;border-radius:3px 7px 4px 6px;box-shadow:2px 6px 15px #60583e09}
.mb-edit-paper h3{font-family:var(--serif);font-size:22px}
.mb-main .mb-edit-sentence{background:#f0e9d3;line-height:2.1;padding:9px 11px;border-left:2px solid #b39d6a}
.mb-edit-paper.is-edited .mb-edit-sentence{background:#e7eddc;border-color:#7f9963}
.mb-main .mb-edit-note{font-size:12px;color:#93967f}
.mb-text-button{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:48px;margin-top:12px;background:none;border:0;border-top:1px solid #e5e7da;font-size:13px;padding:12px 0 0;color:#6c8155}
.mb-text-button span{font-size:21px}
.mb-edit-steps{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:#8d967e;margin-top:22px}
.mb-template-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:25px 0}
.mb-template-featured button{display:flex;align-items:center;gap:10px;min-width:0;min-height:69px;border:1px solid #dcdfd0;background:#fafaf3;text-align:left;padding:10px}
.mb-template-featured button[aria-pressed=true]{border-color:#7f9268;background:#eaf0df}
.mb-template-featured button>i{display:block;flex-shrink:0;width:5px;height:31px;border-radius:2px;opacity:.8}
.mb-template-featured button>span{min-width:0}
.mb-template-featured strong{font-size:13px;display:block;font-weight:500}
.mb-template-featured small{font-size:10px;display:block;color:#8b937c}
.mb-template-featured b{margin-left:auto;font-size:13px;font-weight:400;color:#9ba68c}
.mb-template-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:24px 0 12px;flex-wrap:wrap}
.mb-template-name{font-size:13px;font-weight:500;color:#78856a}
.mb-colors{display:flex;gap:0}
.mb-colors button{display:grid;place-items:center;width:36px;height:44px;padding:0;background:none;border:0}
.mb-colors i{width:21px;height:21px;background:var(--swatch);border:3px solid var(--bg);outline:1px solid transparent;border-radius:50%}
.mb-colors button[aria-pressed=true] i{outline-color:var(--swatch)}
.mb-template-preview{position:relative;margin:0;border:1px solid #e1e3d6;background:white;box-shadow:0 8px 22px #5b61400a;overflow:hidden}
.mb-template-frame{position:relative;width:100%;aspect-ratio:794/1123;overflow:hidden}
.mb-template-frame>iframe{position:absolute;top:0;left:0;width:794px;height:1123px;border:0;transform-origin:0 0;pointer-events:none}
.mb-template-status{position:absolute;inset:0;display:grid;place-items:center;padding:30px;text-align:center;font-size:13px;color:#959e88;background:#fffef8}
.mb-all-templates,.mb-full-resume,.mb-answer-outline{border-top:1px solid #dfe2d2;border-bottom:1px solid #dfe2d2;margin-top:24px}
.mb-main summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:56px;padding:12px 0;font-size:13px;color:#6c7b5e}
.mb-main summary>span:last-child{font-size:18px;font-weight:400}
.mb-main details[open]>summary>span:last-child{transform:rotate(45deg)}
.mb-template-rest{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px 0 20px}
.mb-template-rest button{min-width:0;padding:10px 4px;min-height:58px;background:#fffef8;border:1px solid #e1e3d6;font-size:11px}
.mb-template-rest button small{display:block;color:#919b82;font-size:10px}
.mb-template-rest button[aria-pressed=true]{border-color:#7f9268;background:#eaf0df}
.mb-jd{margin-top:28px;padding:22px;background:#fff;border:1px solid #e2e4d7;box-shadow:1px 5px 18px #53603608;border-radius:4px}
.mb-jd h3{font:25px/1.5 var(--serif);margin:9px 0 2px}
.mb-jd>p{font-size:11px;color:#99a18d;margin:0 0 19px}
.mb-req-list{display:grid;gap:8px}
.mb-req-list button{display:flex;align-items:center;gap:10px;min-height:51px;text-align:left;padding:8px 10px;border:1px solid #e4e7db;background:#f9faf5;font-size:12px}
.mb-req-list button>span{font:12px Georgia,serif;color:#96a783}
.mb-req-list button>strong{font-weight:500}
.mb-req-list button>i{margin-left:auto;font-style:normal;font-size:17px;color:#82916e}
.mb-req-list button[aria-pressed=true]{border-color:#80985e;background:#e6edcd;color:#435731}
.mb-connection{font:17px var(--serif);text-align:center;color:#9da68b;margin:21px 0}
.mb-evidence{margin-top:0}
.mb-evidence-number{font-family:Georgia,serif;font-weight:400;color:#93a273}
.mb-evidence h3{font-size:17px}
.mb-evidence-copy{font-size:14px;line-height:2}
.mb-evidence-check{display:block;font-size:11px;color:#849766;margin-top:18px}
.mb-gap{font-size:12px;color:#9b8c65;line-height:1.9;padding:12px 0}
.mb-full-resume>div{padding:12px 17px 24px;background:#fffef8;font-size:13px;line-height:1.9;margin-bottom:18px}
.mb-full-resume h4{border-bottom:1px solid #d9decb;padding-bottom:7px;color:#73855a;margin-top:22px}
.mb-full-resume .mb-cv-row{font-size:12px;font-weight:600}
.mb-save{background:#3f4c35;color:#e8ecd9;margin:0 -24px;padding:51px 24px;border:0}
.mb-save h2 em{color:#c5d1ad}.mb-save .mb-kicker,.mb-save .mb-intro{color:#aab69a}
.mb-account{border:1px solid #647151;border-radius:5px;padding:19px;margin:27px 0 21px;background:#ffffff04}
.mb-account>.mb-label{color:#bac6a4;font-size:11px}
.mb-account>div{display:flex;gap:15px;align-items:center;margin-top:18px}
.mb-mini-page{width:50px;height:70px;flex-shrink:0;background:#ebecdc;color:#9aab85;font-size:9px;line-height:1.45;padding:10px;border:1px solid #d6ddc7;transform:rotate(-5deg);box-shadow:2px 3px 4px #0001}
.mb-account p{font-size:11px;margin:0;line-height:1.9}
.mb-account p strong{font-size:12px;font-weight:500;display:block}.mb-account p small{display:block;font-size:10px;color:#99a786}.mb-account p>span{color:#c3d49f;font-size:10px}
.mb-format-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mb-format-options button{min-height:99px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:#ffffff04;border:1px solid #637151;color:#b7c7a0}
.mb-format-options button b{font:26px Georgia,serif}.mb-format-options button span{font:13px Georgia,serif}
.mb-format-options button[aria-pressed=true]{background:#e6e9d8;color:#687a51;border-color:#e6e9d8;box-shadow:0 4px 12px #23301d1a}
.mb-main .mb-format-description{text-align:center;font-size:12px;color:#d4dec1;margin:23px 0 27px;min-height:44px}
.mb-save-rule{border-top:1px solid #617050;padding-top:19px;font-size:11px;line-height:1.9;color:#aab999}.mb-save-rule strong{font-weight:500;color:#c8d6b7}
.mb-interview-route{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:10px;padding:15px 0;border-top:1px solid #dde1cf;border-bottom:1px solid #dde1cf;margin-top:24px;color:#8b987b}
.mb-interview-route a{padding:7px 0;min-height:34px}.mb-interview-route span{color:#bac2aa}
.mb-main .mb-subtitle{font:21px/1.7 var(--serif);color:#7b8868;margin:36px 0 17px}
.mb-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.mb-tabs button{font-size:11px;flex:1;min-height:44px;padding:8px 7px;background:none;border:1px solid #dbe0cf;white-space:normal}
.mb-tabs button[aria-pressed=true]{background:#e5ecd8;border-color:#99aa83;color:#536b3f}
.mb-interview-card{padding:23px 20px;background:#fffef8;border:1px solid #e1e4d4;border-radius:5px;box-shadow:2px 5px 14px #56643c07}
.mb-interview-card>h3{font-family:var(--serif);font-size:24px;line-height:1.65;color:#546645;margin:13px 0 23px}
.mb-interview-part{border-top:1px solid #e6e8dd;padding:17px 0 1px}
.mb-interview-part>span{display:block;font-size:11px;color:#90a176;letter-spacing:.5px}
.mb-interview-part>small{display:block;font-size:10px;color:#a0a88e;margin-top:10px}
.mb-interview-part p,.mb-interview-part ul{font-size:13px;line-height:1.95;color:#6e7962;margin:10px 0 16px}
.mb-interview-part ul{padding-left:16px}.mb-interview-part li+li{margin-top:7px}
.mb-tech-flow{display:grid;grid-template-columns:1fr 12px 1fr;align-items:center;gap:7px;font-size:11px;margin:15px 0}
.mb-tech-flow>span{padding:8px;text-align:center;border:1px solid #d9e0ca;background:#f0f3e9;border-radius:4px}.mb-tech-flow>i{font-style:normal;color:#a8b394;text-align:center}.mb-tech-flow>i:nth-of-type(2){grid-column:1/-1;transform:rotate(90deg);line-height:15px}
.mb-tech-flow .is-fault{background:#f5ead4;border-color:#cfb883;color:#8f7048}
.mb-tech-flag{font-size:11px;color:#a38b59;background:#f8f1df;padding:10px 12px}
.mb-tech-source{font-size:10px;color:#a0aa8f}.mb-tech-follow{font-size:12px;color:#7a8b64;border-top:1px dashed #cfd8c0;padding-top:14px}
.mb-answer-outline{margin-top:10px}
.mb-answer-outline>div{padding:15px 0}
.mb-outline-line{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid #e3e6d8;font-size:12px}
.mb-outline-line>span{font:20px Georgia,serif;color:#99ad7e;width:20px;flex-shrink:0}.mb-outline-line strong{font-weight:500;color:#768565}.mb-outline-line p{font-size:12px;color:#929a83;margin:4px 0}
.mb-review{background:#eaf0e1;padding:23px;margin-top:23px;border-radius:5px}.mb-review h4{font:23px var(--serif);margin:14px 0}.mb-review p{font-size:13px;color:#839072}.mb-review>div{border-top:1px solid #d2dcc6;padding-top:13px;font-size:11px;color:#708659}
.mb-departure{text-align:center;border:0;padding:24px 0 40px}
.mb-plane-scene{width:100%;max-width:400px;height:auto;display:block;margin:-5px auto 0;overflow:visible}
.mb-flight-line{fill:none;stroke:#acb598;stroke-width:1.2;stroke-dasharray:.025 .018;opacity:0}
.mb-plane{transform:translate(-50px,25px) rotate(-8deg);transform-origin:220px 90px;opacity:0;transition:transform 1.1s ease-out,opacity .7s}
.mb-plane-scene.is-visible .mb-plane{transform:translate(0,0) rotate(0);opacity:1}
.mb-plane-scene.is-visible .mb-flight-line{opacity:1;transition:opacity 1.3s ease .3s}
.mb-faq{margin-top:27px}.mb-faq details{border-bottom:1px solid #d9decc}
.mb-faq summary{display:grid;grid-template-columns:22px minmax(0,1fr) 16px;gap:12px;padding:20px 0;line-height:1.8;font-size:14px;color:#6f7e5e}
.mb-faq .mb-faq-number{font:11px Georgia,serif;color:#a4ad96}.mb-faq summary i{font-style:normal;font-size:18px;color:#99a78a}.mb-faq details[open] summary i{transform:rotate(45deg)}
.mb-faq p{font-size:13px;line-height:2;color:#89957b;margin:0 0 23px;padding-left:34px}
.mb-closing{text-align:center;padding-top:62px;border:0}.mb-closing .mb-button{margin-top:18px}
.mb-last-page{width:180px;height:215px;transform:rotate(-6deg);margin:54px auto 16px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:30px;background:#fffdf4;border:1px solid #e2dfca;box-shadow:4px 8px 13px #70664c11;color:#93a079;font:22px/1.8 var(--serif)}
.mb-last-page small{font-size:12px;color:#b3b89f}
.cv-mobile .m11-footer{padding:36px 24px 23px;overflow-wrap:anywhere}
.cv-mobile .m11-footer-main{max-width:672px;display:block}.cv-mobile .m11-footer-brand{margin-bottom:32px}
.cv-mobile .m11-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 28px}
.cv-mobile .m11-footer-links>span{font-size:12px;margin-bottom:11px}
.cv-mobile .m11-footer-links>div{gap:0;font-size:13px}
.cv-mobile .m11-footer-links a,.cv-mobile .m11-footer-links button{display:flex;align-items:center;min-height:44px}
.cv-mobile .m11-footer-bottom{max-width:672px;flex-wrap:wrap;gap:12px;font-size:10px;margin-top:27px}
.cv-mobile .m11-footer-bottom small{font-size:10px}.cv-mobile .m11-footer-bottom .m11-demo-note{flex-basis:100%;order:3}
.cv-mobile .m11-footer-bottom>a{min-height:44px;display:flex;align-items:center}
.cv-mobile .m11-filing{font-size:11px;margin-top:13px}.cv-mobile .m11-filing a{padding:12px 0}
.cv-mobile .m11-preview-dialog{max-width:calc(100vw - 40px);max-height:80svh;padding:36px 24px 25px;overflow:auto}
.cv-mobile .m11-dialog-copy{font-size:13px}.cv-mobile .m11-dialog-close{width:44px;height:44px;right:5px;top:2px}.cv-mobile .m11-dialog-confirm{font-size:13px;min-height:44px}
@media(min-width:600px){.mb-main{padding:0 40px}.mb-hero-image{width:calc(100% + 80px);margin-left:-40px;margin-right:-40px}.mb-save{margin:0 -40px;padding-left:40px;padding-right:40px}.mb-template-featured{grid-template-columns:repeat(3,minmax(0,1fr))}.mb-template-preview{max-width:470px;margin:auto}.mb-interview-card{padding:30px}.mb-interview-route{font-size:13px}.mb-tabs button{font-size:13px}}
@media(prefers-reduced-motion:reduce){.cv-mobile{scroll-behavior:auto}.mb-plane,.mb-plane-scene.is-visible .mb-flight-line{transition:none}.mb-plane{transform:none;opacity:1}.mb-flight-line{opacity:1}}
