:root{
  --aw-bg:#fff;--aw-color:#202122;--aw-link:#0645ad;--aw-border:#a2a9b1;
  --aw-muted:#72777d;--aw-toc:#f8f9fa;--aw-orange:#D85A30;--aw-blue:#185FA5;
}
*{box-sizing:border-box}
body{margin:0;background:var(--aw-bg);color:var(--aw-color);font-family:Georgia,'Times New Roman',serif;font-size:15px;line-height:1.8}
a{color:var(--aw-link);text-decoration:none}
a:hover{text-decoration:underline}
.aw-link{color:var(--aw-link)}
.aw-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.aw-caret{color:var(--aw-blue);font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.aw-caret-direct{color:var(--aw-orange)}
.aw-caret-unsub{color:#000}
.aw-breadcrumb .aw-caret{animation:aw-pulse-caret 2s ease-in-out infinite;display:inline-block;transition:opacity 0.2s ease;margin-right:2px}
.aw-breadcrumb .aw-caret:hover{opacity:1!important;animation:none}
.aw-muted{color:var(--aw-muted)}
.aw-meta{font-size:13px;color:var(--aw-muted);margin:0 0 12px 0}
.aw-container{max-width:960px;margin:0 auto;padding:20px 16px}
.aw-h1{font-weight:400;font-size:32px;margin:0 0 4px 0;letter-spacing:0.5px}
/* Page H1 code (^XYZ) matches the top-right flap-card font (Courier New 900) */
.aw-h1.aw-mono{font-family:'Courier New',Courier,monospace;font-weight:900}
.aw-h1-caret{color:var(--aw-blue);font-weight:700;margin-right:1px;text-decoration:none}
.aw-h1-caret-direct{color:var(--aw-orange)}
.aw-h1-caret-unsub{color:#000}
.aw-h1-caret:hover{text-decoration:none;opacity:0.7}
.aw-subtitle{font-style:italic;color:var(--aw-muted);font-size:14px;margin:0 0 4px 0}
.aw-page-title{font-size:32px;color:var(--aw-text);font-weight:400;font-style:normal;margin:8px 0 12px 0;letter-spacing:0.2px;line-height:1.15}
/* S256 — ^CODE and page title share one row, baseline-aligned, wraps on narrow screens. */
.aw-h1-row{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin:0 0 12px 0}
.aw-h1-row .aw-h1{margin:0}
.aw-h1-row .aw-page-title{margin:0}
.aw-oem-badge{display:inline-flex;align-items:center;gap:4px;background:#16a34a;color:#fff;font-size:11px;font-weight:600;padding:3px 10px;border-radius:4px;letter-spacing:0.3px;white-space:nowrap;align-self:center}
/* S250 — Homepage hero: code-structure table left (flush right against title), title right (above-fold) */
.aw-hero-row{display:flex;gap:24px;align-items:center;margin:0 0 12px 0}
.aw-hero-table{flex:0 0 auto;margin:0 0 0 auto;font-size:12px;width:auto}
.aw-hero-table th,.aw-hero-table td{padding:3px 8px;font-size:12px;line-height:1.4}
.aw-hero-table th{font-size:11px}
.aw-hero-title{flex:0 0 auto;text-align:left}
@media (max-width:720px){.aw-hero-row{flex-direction:column;align-items:stretch;gap:12px}.aw-hero-title{text-align:center}.aw-hero-table{margin:0 auto}}
.aw-divider{border-bottom:1px solid var(--aw-border);margin:12px 0 20px 0}
/* S249 (bb) — Contents box positioned to right of node title */
.aw-title-row{display:flex;gap:24px;align-items:flex-start;margin-bottom:0}
.aw-title-block{flex:1;min-width:0}
.aw-toc{flex-shrink:0;width:220px;background:var(--aw-toc);border:1px solid var(--aw-border);padding:10px 14px;font-size:13px;border-radius:3px}
.aw-toc-head{font-weight:600;font-size:14px;margin-bottom:6px;color:var(--aw-color);display:flex;justify-content:space-between;align-items:center}
.aw-toc-broadcast{font-size:12px;font-weight:400;white-space:nowrap;background:#fff;border:1px solid var(--aw-border);padding:2px 10px;border-radius:12px;color:var(--aw-link)}
.aw-toc ol{margin:0;padding-left:22px;line-height:2}
.aw-toc li{font-size:13px}
.aw-toc a{color:var(--aw-link);text-decoration:none}
.aw-toc a:hover{text-decoration:underline}
@media (max-width:720px){.aw-title-row{flex-direction:column;gap:12px}.aw-toc{width:100%;order:2}}
.aw-h2{font-weight:400;font-size:22px;border-bottom:1px solid var(--aw-border);padding-bottom:4px;margin-top:24px}
.aw-breadcrumb{font-size:14px;margin-bottom:16px;color:var(--aw-color)}
.aw-table{border-collapse:collapse;width:100%;margin:12px 0}
.aw-table thead th{text-align:left;padding:6px 12px;font-weight:600;font-size:14px;border-bottom:2px solid var(--aw-border);background:var(--aw-toc)}
.aw-table tbody td{padding:6px 12px;font-size:14px;border-bottom:1px solid var(--aw-border)}
.aw-table tbody tr:nth-child(odd){background:var(--aw-toc)}
.aw-table-2col td:first-child{width:30%;color:var(--aw-muted)}
.aw-children{list-style:none;padding-left:0;margin:8px 0}
.aw-children li{padding:5px 0;font-size:14px;border-bottom:1px solid #eee}
.aw-children li:last-child{border-bottom:none}
/* S249: 3-column children grid + whole-row clickable */
.aw-children-3col{column-count:3;column-gap:24px}
.aw-children-3col li{break-inside:avoid;padding:6px 0;border-bottom:none}
.aw-children-link{display:block;text-decoration:none;color:var(--aw-color);padding:4px 6px;border-radius:3px;line-height:1.5}
.aw-children-link:hover{background:var(--aw-toc);text-decoration:none}
.aw-children-code{margin-right:0;color:var(--aw-link)}
.aw-children-name{color:var(--aw-color)}
.aw-children-link:hover .aw-children-name{color:var(--aw-link)}
@media (max-width:1000px){.aw-children-3col{column-count:2}}
@media (max-width:720px){.aw-children-3col{column-count:1}}
/* CS-198 Apple-to-Apple — competitor cards */
.aw-comp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:8px}
.aw-comp-card{display:block;padding:12px 14px;border:1px solid var(--aw-border);border-radius:6px;text-decoration:none;color:var(--aw-color);background:#fff;transition:border-color .15s}
.aw-comp-card:hover{border-color:var(--aw-link);text-decoration:none}
.aw-comp-head{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.aw-comp-code{font-size:12px;padding:2px 6px;background:var(--aw-toc);border-radius:3px;color:var(--aw-link);font-weight:600}
.aw-comp-name{font-weight:600;font-size:14px}
.aw-bore-badge{font-size:11px;padding:1px 6px;background:#dcfce7;color:#166534;border-radius:8px;font-weight:500}
.aw-comp-desc{font-size:13px;color:var(--aw-muted);margin:4px 0 0;line-height:1.5}
/* Country palette — uniform 25-letter grid for ^Q and ^Y level-2 nodes */
/* S249 (cc): locked to 3 columns desktop (was auto-fill which gave 4+ on wide
   screens). 26 cells in 3 cols → 9 rows × 3 = clean grid; the 26th overflow
   bucket sits in its own expander row below. 2 cols tablet, 1 col mobile. */
.aw-palette-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 16px}
@media (max-width:720px){.aw-palette-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.aw-palette-grid{grid-template-columns:1fr}}
.aw-palette-cell{display:block;padding:8px 10px;border:1px solid var(--aw-border);border-radius:4px;text-decoration:none;color:var(--aw-color);background:#fff;transition:border-color .15s}
.aw-palette-cell:hover{border-color:var(--aw-link);text-decoration:none}
.aw-palette-vacant{border-style:dashed;background:var(--aw-toc);opacity:.55;cursor:default}
.aw-palette-vacant:hover{border-color:var(--aw-border)}
.aw-palette-code{font-size:11px;font-weight:600;color:var(--aw-muted)}
.aw-palette-name{font-size:14px;margin-top:2px;line-height:1.3;color:var(--aw-link)}
.aw-palette-vacant .aw-palette-name{color:var(--aw-muted);font-style:italic}
.aw-overflow{margin-top:8px}
.aw-overflow-summary{cursor:pointer;font-weight:600;font-size:16px;padding:4px 0;list-style:revert}
/* S249 Piyush review — 3-col standard, matching .aw-children-3col */
.aw-overflow-list{list-style:none;padding-left:20px;margin-top:6px;column-count:3;column-gap:24px}
.aw-overflow-list li{margin-bottom:6px;break-inside:avoid;border-bottom:none;padding:2px 0}
@media (max-width:1000px){.aw-overflow-list{column-count:2}}
@media (max-width:720px){.aw-overflow-list{column-count:1}}
.aw-description{margin:8px 0 12px 0}
.aw-aka{margin:6px 0 10px 0;font-size:0.92em;line-height:1.5}
.aw-disambig{margin:4px 0 8px 0;font-size:0.9em;color:#555}
.aw-faq{margin:8px 0;padding:8px 12px;background:var(--aw-toc);border-left:3px solid var(--aw-blue)}
.aw-faq summary{cursor:pointer;font-weight:600;font-size:14px}
.aw-faq p{margin:6px 0 0 0;font-size:14px;color:var(--aw-color)}
.aw-faq-wrap{margin:8px 0}
.aw-intro-hint{font-size:12px;color:var(--aw-muted);margin:0 0 20px 0}

/* Header */
.aw-header{border-bottom:1px solid var(--aw-border);background:#fff;font-family:Georgia,'Times New Roman',serif}
.aw-header-inner{max-width:960px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
/* S250 — header brand block (replaces logo on left). Persistent across all pages. */
/* S254 — wrapped in blue rounded rectangle for click-affordance (home button); per Piyush "this box is an icon to press and come back to home". */
.aw-brand{order:1;display:inline-flex;flex-direction:row;align-items:center;gap:10px;text-decoration:none;line-height:1.2;flex-shrink:0;padding:8px 12px;border:none;border-radius:10px;background:#185FA5;box-shadow:0 2px 8px rgba(0,0,0,0.15);transition:background 0.15s ease, box-shadow 0.15s ease}
.aw-brand:hover{text-decoration:none;background:#1a6ab8;box-shadow:0 3px 12px rgba(0,0,0,0.2)}
.aw-brand:active{background:#14508a}
.aw-brand-mark{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;background:#fff;color:#185FA5;font-family:'Courier New',Courier,monospace;font-size:18px;font-weight:900;letter-spacing:1px;border-radius:6px;flex-shrink:0;line-height:1.2}
.aw-brand-text{display:flex;flex-direction:column}
.aw-brand-title{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:18px;color:#fff;letter-spacing:0.5px}
.aw-brand-sub{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:11px;color:rgba(255,255,255,0.75);margin-top:1px}
/* S250 — flip-card identity moved to right (after nav) */
/* S294 — explicit order:4 + margin-left:auto so the SEMM identity stays at the
   far right of the header even when items wrap on narrow viewports. */
.aw-flip-cards{order:4;margin-left:auto;display:inline-flex;align-items:center;gap:0;flex-shrink:0}
.aw-search-wrap{order:2}
.aw-nav{order:3}
.aw-logo-svg-wrap{display:inline-block;width:26px;height:26px;flex-shrink:0;margin-right:1px}
.aw-logo-svg{width:26px;height:26px;border-radius:3px;display:block}
/* S250 — LetterTile flip-card identity (vanilla port of React signature) */
.aw-tile{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:var(--aw-blue);color:#fff;font-family:Georgia,'Times New Roman',serif;font-size:16px;font-weight:600;border-radius:3px;margin:0 1px;perspective:100px;overflow:hidden;flex-shrink:0;line-height:1}
.aw-tile.is-flipping{animation:aw-flip 0.4s ease-in-out}
@keyframes aw-pulse-caret{0%,100%{opacity:1}50%{opacity:0.6}}
@keyframes aw-flip{0%{transform:rotateX(0deg)}50%{transform:rotateX(90deg)}100%{transform:rotateX(0deg)}}
.aw-search-wrap{flex:1;max-width:320px;position:relative}
.aw-search{display:flex;align-items:center;border:1px solid var(--aw-border);border-radius:2px;background:#fff}
.aw-search-caret{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:700;color:var(--aw-blue);padding:0 6px 0 10px;border-right:1px solid var(--aw-border);background:var(--aw-toc);line-height:30px}
.aw-search input{flex:1;padding:5px 8px;border:none;font-family:Georgia,serif;font-size:13px;outline:none}
.aw-search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--aw-border);border-top:none;max-height:300px;overflow-y:auto;box-shadow:0 4px 12px rgba(0,0,0,0.1);display:none;z-index:200}
.aw-search-results a{display:flex;align-items:baseline;gap:8px;padding:6px 10px;border-bottom:1px solid #eee;font-size:13px;color:var(--aw-color);text-decoration:none}
.aw-search-results a:hover{background:var(--aw-toc);text-decoration:none}
.aw-search-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;color:var(--aw-orange);min-width:60px}
.aw-search-name{flex:1}
.aw-search-lvl{color:var(--aw-muted);font-size:11px}
.aw-search-empty{padding:8px;color:var(--aw-muted);font-size:13px}
.aw-nav{display:flex;gap:16px;font-size:14px;flex-shrink:0;align-items:center}
.aw-nav a{color:var(--aw-link);text-decoration:none}

/* Code map */
.aw-codemap{margin:32px 0 0;padding:20px 24px;background:var(--aw-toc);border:1px solid var(--aw-border);border-radius:4px}
.aw-codemap-title{font-size:13px;font-weight:600;color:var(--aw-muted);margin:0 0 10px 0;text-transform:uppercase;letter-spacing:.5px}
.aw-codemap-tree{font-family:'Menlo','Consolas','DejaVu Sans Mono',monospace;font-size:13px;line-height:1.7;margin:0;overflow-x:auto;white-space:pre;color:var(--aw-color)}
.aw-codemap-tree .cm-caret{color:var(--aw-blue);font-weight:700}
.aw-codemap-tree .cm-letter{font-weight:700}
.aw-codemap-tree .cm-label{color:var(--aw-muted)}
.aw-codemap-tree .cm-pipe{color:var(--aw-border)}

/* Footer */
.aw-footer{border-top:1px solid var(--aw-border);margin-top:40px;padding:16px 0;text-align:center}
.aw-footer-text{font-size:12px;color:var(--aw-muted);margin:0}
.aw-muted-link{color:var(--aw-muted);text-decoration:none}

@media (max-width:720px){
  .aw-container{padding:12px}
  .aw-header-inner{flex-direction:column;gap:8px;align-items:stretch}
  .aw-search-wrap{max-width:100%}
  .aw-nav{justify-content:center}
}
