:root{--bg:#f8f5ed;--surface:#fffdf8;--surface-2:#f0ede5;--text:#0d1017;--muted:#5f6672;--line:#aeb4bd;--red:#f04434;--red-soft:#ffe9e5;--indigo:#101a52;--green:#0b9b59;--yellow:#ffd84d;--shadow:0 16px 45px rgba(22,26,38,.1);--max:1320px}
[data-theme="dark"]{--bg:#111318;--surface:#181b21;--surface-2:#23262d;--text:#f8f5ed;--muted:#b6bbc4;--line:#505661;--red:#ff5848;--red-soft:#3d201d;--indigo:#97a8ff;--green:#42d48e;--shadow:0 18px 55px rgba(0,0,0,.32)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.62 Arial,"Helvetica Neue",ui-sans-serif,system-ui,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}a{color:var(--indigo);text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.skip{position:fixed;left:154px;top:-80px;z-index:200;background:var(--text);color:var(--surface);padding:10px 14px}.skip:focus{top:12px}.wrap{width:min(var(--max),calc(100% - 56px));margin-inline:auto}main,footer{margin-left:142px}.site-header{position:fixed;inset:0 auto 0 0;width:142px;background:linear-gradient(180deg,#f54938,#ef3d2e);z-index:70}.nav{height:100%;padding:24px 14px 20px;display:flex;flex-direction:column;gap:18px}.brand{display:flex;flex-direction:column;align-items:center;gap:18px;color:#090b0f;text-decoration:none;font:800 2rem/1 Georgia,"Times New Roman",serif}.brand-face{font:800 1.05rem/1 ui-monospace,SFMono-Regular,Consolas,monospace}.brand span:last-child{writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:-.05em}.nav-links{display:flex;flex-direction:column;gap:6px;margin-top:8px}.nav-links a{display:grid;place-items:center;min-height:50px;padding:9px 6px;border:1px solid transparent;color:#090b0f;font-size:.76rem;font-weight:850;text-decoration:none;text-align:center}.nav-links a:hover,.nav-links a:focus-visible,.nav-links a[aria-current="page"]{background:#0d1017;color:#fff;border-color:#0d1017}.icon-btn{margin-top:auto;align-self:center;width:44px;height:44px;border:1px solid #090b0f;background:transparent;color:#090b0f;cursor:pointer}.masthead{padding:25px 0 34px;border-bottom:1px solid var(--text);position:relative;overflow:hidden}.masthead:after{content:attr(data-word);position:absolute;right:-1%;top:-16px;font:800 clamp(4.2rem,8vw,8.8rem)/1 Georgia,"Times New Roman",serif;color:color-mix(in srgb,var(--text) 4%,transparent);white-space:nowrap;pointer-events:none}.crumbs{position:relative;z-index:1;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.crumbs a{color:inherit}.crumbs span{padding:0 8px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:42px;align-items:end;margin-top:14px}.eyebrow,.section-kicker{display:flex;align-items:center;gap:8px;color:var(--red);font-size:.67rem;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before,.section-kicker:before{content:"";width:24px;height:2px;background:var(--red)}h1,h2,h3{margin:0;letter-spacing:-.035em;line-height:1.08}h1{font:800 clamp(3.1rem,6vw,6.5rem)/.9 Georgia,"Times New Roman",serif;letter-spacing:-.065em;margin:12px 0 16px;max-width:980px}.lead{max-width:910px;margin:0;color:var(--muted);font-size:1.05rem}.hero-facts{border-left:1px solid var(--text);display:grid}.hero-fact{padding:13px 18px;border-bottom:1px solid var(--line);font-size:.67rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.hero-fact b{display:block;color:var(--text);font:800 1.28rem/1.16 Georgia,"Times New Roman",serif;letter-spacing:-.04em;text-transform:none;margin-top:3px}.tool-shell{padding:0 0 70px}.tool-top{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:64px;border-bottom:1px solid var(--text);font-size:.78rem;color:var(--muted)}.status-dot{display:inline-block;width:9px;height:9px;background:var(--green);margin-right:8px}.tool{border:1px solid var(--text);border-top:0;background:var(--surface);box-shadow:var(--shadow)}.tool-grid{display:grid;grid-template-columns:310px minmax(0,1fr)}.controls{padding:22px;border-right:1px solid var(--text);background:var(--surface)}.output{padding:22px;background:var(--surface-2)}.field{margin-bottom:15px}.field label{display:block;margin-bottom:6px;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;min-height:48px;border:1px solid var(--line);border-radius:0;background:var(--surface);padding:10px 12px}.field textarea{min-height:160px;resize:vertical;font-size:1.12rem;line-height:1.7}.button-row{display:flex;flex-wrap:wrap;gap:8px}.btn{min-height:44px;border:1px solid var(--text);background:var(--surface);padding:0 15px;font-weight:850;font-size:.78rem;cursor:pointer}.btn:hover{background:var(--red-soft)}.btn.primary{background:var(--text);color:var(--surface)}.btn.primary:hover{background:var(--red);color:#0d1017}.btn.active,.btn[aria-selected="true"]{background:var(--red);color:#0d1017}.tool-note{font-size:.76rem;color:var(--muted);margin:12px 0 0}.result-panel{min-height:180px;border:1px solid var(--text);background:var(--surface);padding:22px}.result-face{font:750 clamp(1.65rem,4vw,3.6rem)/1.35 "Noto Sans","Segoe UI Symbol",Arial,sans-serif;overflow-wrap:anywhere;white-space:pre-wrap}.result-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.badge{border:1px solid var(--line);padding:4px 7px;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--text);border-right:0;border-bottom:0}.quick{min-height:105px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);cursor:pointer;padding:14px}.quick:hover{background:var(--red-soft)}.quick span{display:block;font-size:1.35rem;margin-bottom:6px;overflow-wrap:anywhere}.quick b{font-size:.75rem}.tab-list{display:flex;overflow-x:auto;border-bottom:1px solid var(--text)}.tab{flex:1;min-width:120px;min-height:52px;border:0;border-right:1px solid var(--line);background:var(--surface);font-size:.75rem;font-weight:850;cursor:pointer}.tab:last-child{border-right:0}.tab[aria-selected="true"]{background:var(--red);color:#0d1017}.tab-panel{padding:22px}.tab-panel[hidden]{display:none}.shortcut{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.shortcut .field{margin:0}.shortcut-output{margin-top:14px;border:1px solid var(--line);background:var(--surface);padding:16px;white-space:pre-wrap}.section{padding:72px 0;border-top:1px solid var(--text)}.section-title{font:800 clamp(2.4rem,4.6vw,4.9rem)/.94 Georgia,"Times New Roman",serif;letter-spacing:-.055em;margin-top:8px;max-width:980px}.section-intro{color:var(--muted);max-width:850px;margin:12px 0 25px}.cards{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--text);border-right:0;border-bottom:0}.card{padding:22px;background:var(--surface);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.card h3{font:800 1.25rem/1.1 Georgia,"Times New Roman",serif;margin:9px 0 7px}.card p{margin:0;color:var(--muted);font-size:.88rem}.card .face{font-size:1.7rem;color:var(--red);overflow-wrap:anywhere}.card .btn{margin-top:14px}.table-wrap{overflow-x:auto;border:1px solid var(--text)}table{width:100%;border-collapse:collapse;background:var(--surface);min-width:650px}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--indigo);color:#fff;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}td:first-child{font-weight:850}.steps{counter-reset:steps;border:1px solid var(--text);background:var(--surface)}.step{counter-increment:steps;display:grid;grid-template-columns:72px 1fr;gap:10px;padding:20px;border-bottom:1px solid var(--line)}.step:last-child{border:0}.step:before{content:"0" counter(steps);font:800 1.45rem/1 Georgia,"Times New Roman",serif;color:var(--red)}.step h3,.step p{grid-column:2}.step h3{font:800 1.08rem/1.15 Georgia,"Times New Roman",serif}.step p{margin:5px 0 0;color:var(--muted);font-size:.88rem}.anatomy{display:grid;grid-template-columns:.8fr 1.2fr;border:1px solid var(--text)}.anatomy-demo{background:var(--indigo);color:#fff;padding:32px;display:grid;place-items:center;text-align:center}.anatomy-face{font-size:clamp(2.7rem,6vw,5.5rem)}.parts{background:var(--surface)}.part{padding:19px;border-bottom:1px solid var(--line)}.part:last-child{border:0}.part h3{font:800 1.05rem/1.1 Georgia,"Times New Roman",serif}.part p{margin:5px 0 0;color:var(--muted);font-size:.85rem}.faq{border:1px solid var(--text)}.faq details{background:var(--surface);border-bottom:1px solid var(--line);padding:0 20px}.faq details:last-child{border:0}.faq summary{cursor:pointer;font-weight:850;padding:18px 38px 18px 0;position:relative}.faq summary:after{content:"+";position:absolute;right:4px;font-size:1.25rem;color:var(--red)}.faq details[open] summary:after{content:"−"}.faq p{color:var(--muted);max-width:980px;margin:0 0 18px}.related{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--text);border-right:0;border-bottom:0}.related a{min-height:118px;padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);color:var(--text);text-decoration:none}.related a:hover{background:var(--red-soft)}.related span{display:block;font-size:1.45rem}.related b{display:block;font:800 1.05rem/1.1 Georgia,"Times New Roman",serif;margin:8px 0 3px}.related small{color:var(--muted)}.callout{border-left:6px solid var(--red);background:var(--surface);padding:18px 20px;margin:22px 0}.callout strong{font-family:Georgia,"Times New Roman",serif}.source-list{font-size:.82rem;color:var(--muted)}footer{border-top:1px solid var(--text);padding:28px 0 40px}.footer-row{display:flex;justify-content:space-between;gap:24px}.footer-brand{font:800 1.2rem/1 Georgia,"Times New Roman",serif;color:var(--text);text-decoration:none}.footer-copy{color:var(--muted);font-size:.82rem;max-width:650px}.footer-links{display:flex;gap:15px;flex-wrap:wrap}.footer-links a{font-size:.8rem;color:var(--muted)}.toast{position:fixed;z-index:210;left:50%;bottom:22px;transform:translate(-50%,120px);padding:11px 16px;background:var(--green);color:#fff;font-weight:850;box-shadow:var(--shadow);transition:.22s}.toast.show{transform:translate(-50%,0)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){main,footer{margin-left:108px}.site-header{width:108px}.skip{left:120px}.hero-grid{grid-template-columns:1fr}.hero-facts{grid-template-columns:repeat(3,1fr);border-left:0;border-top:1px solid var(--text)}.tool-grid{grid-template-columns:1fr}.controls{border-right:0;border-bottom:1px solid var(--text)}.cards{grid-template-columns:repeat(2,1fr)}.related{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){main,footer{margin-left:0}.site-header{position:sticky;width:auto;height:auto;inset:auto}.nav{height:auto;min-height:64px;padding:8px 14px;flex-direction:row;align-items:center}.brand{flex-direction:row;font-size:1.15rem}.brand span:last-child{writing-mode:horizontal-tb;transform:none}.nav-links{margin:0 0 0 auto;flex-direction:row}.nav-links a{min-height:42px;padding:6px 8px}.nav-links a:nth-child(n+4){display:none}.icon-btn{margin:0 0 0 3px}.skip{left:10px}.wrap{width:min(100% - 28px,var(--max))}h1{font-size:clamp(2.65rem,14vw,4.6rem)}.masthead{padding-top:20px}.hero-facts{grid-template-columns:1fr}.tool-top{align-items:flex-start;flex-direction:column;padding:12px 0}.quick-grid{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:1fr}.shortcut{grid-template-columns:1fr}.anatomy{grid-template-columns:1fr}.related{grid-template-columns:repeat(2,1fr)}.section{padding:54px 0}.footer-row{display:block}.footer-links{margin-top:16px}}
@media(max-width:430px){.nav-links a:nth-child(n+3){display:none}.quick-grid,.related{grid-template-columns:1fr}.hero-fact{padding-inline:12px}.tab{min-width:108px}.result-face{font-size:1.65rem}}
