@font-face{font-family:Poppins;src:url(/fonts/poppins-400.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-500.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-600.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-700.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:VeeNode Khmer;src:url(/fonts/misans-khmer-regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0020,U+1780-17FF,U+19E0-19FF,U+200B-200D,U+25CC}@font-face{font-family:VeeNode Khmer;src:url(/fonts/misans-khmer-regular.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap;unicode-range:U+0020,U+1780-17FF,U+19E0-19FF,U+200B-200D,U+25CC}@font-face{font-family:VeeNode Khmer;src:url(/fonts/misans-khmer-semibold.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap;unicode-range:U+0020,U+1780-17FF,U+19E0-19FF,U+200B-200D,U+25CC}@font-face{font-family:VeeNode Khmer;src:url(/fonts/misans-khmer-semibold.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap;unicode-range:U+0020,U+1780-17FF,U+19E0-19FF,U+200B-200D,U+25CC}@font-face{font-family:VeeNode Khmer;src:url(/fonts/misans-khmer-semibold.woff2) format("woff2");font-style:normal;font-weight:800;font-display:swap;unicode-range:U+0020,U+1780-17FF,U+19E0-19FF,U+200B-200D,U+25CC}:root{--background: #faf9f5;--foreground: #3d3929;--card: #faf9f5;--card-foreground: #141413;--muted: #ede9de;--muted-foreground: #686660;--accent: #e9e6dc;--border: #dad9d4;--line: var(--border);--input-border: #b4b2a7;--field-bg: color-mix(in srgb, var(--muted) 40%, var(--card));--primary: #1760fa;--primary-top: #2f73ff;--primary-hover: #1554d8;--primary-border: #0d3fb3;--primary-soft: #edf3ff;--primary-foreground: #fff;--success-bg: #ebf8f0;--success-fg: #1d7043;--success-border: #c7e7d2;--danger: #d7474f;--ring: var(--primary);--hatch: color-mix(in srgb, var(--border) 35%, transparent);--shell-width: 768px;--header-height: 56px;--section-band-height: 32px;--footer-height: 84px;--route-min-height: calc(100vh - 172px) ;--font-sans: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-khmer: "VeeNode Khmer", "Poppins", "Noto Sans Khmer", "Leelawadee UI", sans-serif;--font-mono: "SFMono-Regular", "SF Mono", "Roboto Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:light}:root[data-theme=dark]{--background: #18181b;--foreground: #c3c0b6;--card: #18181b;--card-foreground: #faf9f5;--muted: #242421;--muted-foreground: #b7b5a9;--accent: #1a1915;--border: #3e3e38;--line: var(--border);--input-border: #52514a;--field-bg: color-mix(in srgb, var(--input-border) 30%, var(--card));--primary: #c8fc34;--primary-top: #d5ff5a;--primary-hover: #b5e329;--primary-border: #718f18;--primary-soft: #283318;--primary-foreground: #141413;--success-bg: #0e3420;--success-fg: #9deb8d;--success-border: #205339;--danger: #ff8c7e;color-scheme:dark}*{box-sizing:border-box}html{width:100%;min-width:320px;max-width:100%;overflow-x:clip;overscroll-behavior-x:none;background:var(--background);scroll-behavior:smooth;scroll-padding-top:72px}body{width:100%;max-width:100%;margin:0;overflow-x:visible;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom;color:var(--foreground);background:var(--background);font:400 14px/1.58 var(--font-sans);letter-spacing:-.012em;-webkit-font-smoothing:antialiased}html.theme-switching,html.theme-switching *,html.theme-switching *:before,html.theme-switching *:after{transition-property:background-color,color,border-color,box-shadow,fill,stroke,outline-color;transition-duration:.42s;transition-timing-function:cubic-bezier(.22,1,.36,1)}app-root{min-width:0;max-width:100%;display:block;overflow:visible}main,header,footer,section{min-width:0;max-width:100%}img,video,canvas{max-width:100%}html[lang=km] body{font-family:var(--font-khmer);font-size:15px;line-height:1.65;letter-spacing:normal;font-synthesis:none;font-kerning:normal;text-rendering:optimizeLegibility}html[lang=km] button,html[lang=km] input,html[lang=km] select,html[lang=km] textarea{font-family:inherit;letter-spacing:normal;font-synthesis:none}button,input,select,textarea{font:inherit}button{-webkit-appearance:none;appearance:none}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{color:var(--primary);text-underline-offset:3px}.shell{width:min(100%,var(--shell-width));margin-inline:auto;padding-inline:16px;border-inline:1px solid transparent}.page{min-height:var(--route-min-height);padding-block:0 56px}.page-plane{padding-block:40px}.route-label{position:relative;height:var(--section-band-height);min-height:var(--section-band-height);display:flex;align-items:center;gap:8px;margin:0 -16px;padding:0 16px;background:color-mix(in srgb,var(--muted) 20%,transparent);color:var(--muted-foreground);font-size:10px;font-weight:500;letter-spacing:.02em}.route-label:before{width:5px;height:5px;border-radius:50%;background:var(--primary);content:""}.route-label:after{position:absolute;right:calc(50% - 50vw);bottom:-1px;left:calc(50% - 50vw);height:1px;background:var(--border);content:"";pointer-events:none}.hatch-divider{position:relative;height:var(--section-band-height);min-height:var(--section-band-height);margin-inline:-16px}.hatch-divider:before{position:absolute;inset:0 calc(50% - 50vw);box-sizing:border-box;border-top:1px solid var(--border);background:repeating-linear-gradient(315deg,var(--hatch) 0 1px,transparent 1px 8px);content:"";pointer-events:none}.hatch-divider:after{position:absolute;right:calc(50% - 50vw);bottom:-1px;left:calc(50% - 50vw);height:1px;background:var(--border);content:"";pointer-events:none}:root[data-theme=dark] .hatch-divider:before{background:repeating-linear-gradient(315deg,color-mix(in srgb,var(--hatch) 40%,transparent) 0 1px,transparent 1px 8px)}.eyebrow{margin:0 0 9px;color:var(--primary);font-size:11px;font-weight:600;letter-spacing:.025em}.page-title{margin:0;color:var(--card-foreground);font-size:clamp(30px,6vw,46px);font-weight:500;line-height:1.18;letter-spacing:-.035em}.lead{max-width:650px;margin:14px 0 0;color:var(--muted-foreground);font-size:15px;line-height:1.7}.blueprint-card,.panel{position:relative;border:1px solid var(--border);background:var(--card);color:var(--card-foreground)}.bp-corner{position:absolute;z-index:3;display:block;width:12px;height:12px;border:1px solid var(--border);border-radius:3px;background:var(--background);pointer-events:none}.bp-corner.tl{top:-6px;left:-6px}.bp-corner.tr{top:-6px;right:-6px}.bp-corner.bl{bottom:-6px;left:-6px}.bp-corner.br{right:-6px;bottom:-6px}.panel-header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}.panel-header h2{display:flex;align-items:center;gap:8px;margin:0;color:var(--card-foreground);font-size:16px;font-weight:600}.panel-header h2 .ui-icon{color:var(--primary)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:16px}.section-heading h2{margin:0;color:var(--card-foreground);font-size:clamp(21px,4vw,26px);font-weight:600;line-height:1.3}.section-heading p:last-child{margin:6px 0 0;color:var(--muted-foreground);font-size:12px}.section-heading a{flex:0 0 auto;font-size:11px;font-weight:600;text-decoration:none}.frame-grid{display:grid;gap:1px;overflow:hidden;background:var(--border)}.postal-code-display{position:relative;width:100%;min-height:108px;display:grid;place-items:center;margin:18px 0 14px;padding:20px 54px;overflow:hidden;border:1px solid var(--input-border);border-radius:14px;background-image:radial-gradient(circle at center,color-mix(in srgb,var(--primary) 7%,transparent),transparent 58%),linear-gradient(to right,color-mix(in srgb,var(--foreground) 8%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--foreground) 8%,transparent) 1px,transparent 1px);background-size:auto,36px 36px,36px 36px;background-color:var(--field-bg);color:var(--card-foreground);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.postal-code-display:hover{border-color:var(--primary);background-color:color-mix(in srgb,var(--primary) 4%,var(--field-bg));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.postal-code-display strong{position:relative;z-index:1;font:700 clamp(36px,7vw,50px)/1 var(--font-mono);letter-spacing:.14em;transition:color .18s ease}.postal-code-display:hover strong{color:var(--primary)}.postal-code-display .copy-mark{position:absolute;z-index:2;top:10px;right:10px;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--border);border-radius:5px;background:color-mix(in srgb,var(--card) 88%,transparent);color:var(--primary);transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.postal-code-display .copy-mark .ui-icon{width:17px;height:17px}.postal-code-display:hover .copy-mark{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:var(--card);transform:translateY(-1px)}html[lang=km] .route-label{font-size:11px;line-height:1.55;letter-spacing:normal}html[lang=km] .eyebrow{font-size:12px;line-height:1.55;letter-spacing:normal}html[lang=km] .page-title{font-weight:600;line-height:1.36;letter-spacing:normal}html[lang=km] .lead{line-height:1.75}html[lang=km] .panel-header h2,html[lang=km] .section-heading h2{line-height:1.5}html[lang=km] .section-heading p:last-child,html[lang=km] .section-heading a{line-height:1.65}.ui-icon{width:18px;height:18px;display:inline-block;flex:0 0 auto;vertical-align:-.2em;color:currentColor}.pill{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border-radius:999px;background:var(--muted);color:var(--muted-foreground);font-size:10px;font-weight:500}.font-en,code,kbd{font-family:var(--font-mono)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.feedback-state{display:grid;grid-template-columns:34px minmax(0,1fr) 28px;align-items:start;gap:12px;padding:15px 16px;border-top:1px solid color-mix(in srgb,var(--danger) 32%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--card))}.feedback-icon{width:34px;height:34px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--danger) 32%,var(--border));border-radius:8px;background:var(--card);color:var(--danger)}.feedback-icon .ui-icon{width:17px;height:17px}.feedback-copy{min-width:0}.feedback-copy strong{color:var(--card-foreground);font-size:12px}.feedback-copy p{margin:3px 0 0;color:var(--muted-foreground);font-size:10px;line-height:1.55}.feedback-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:9px}.feedback-actions button,.feedback-actions a{min-height:30px;display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:var(--primary);font-size:10px;font-weight:600;text-decoration:none;cursor:pointer}.feedback-actions .ui-icon{width:13px;height:13px}.feedback-dismiss{width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted-foreground);cursor:pointer}.feedback-dismiss:hover{background:var(--muted);color:var(--card-foreground)}.feedback-dismiss .ui-icon{width:14px;height:14px}.green-note{min-height:50px;display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--success-border);border-radius:9px;background:var(--success-bg);color:var(--success-fg);font-size:11px;line-height:1.55}.green-note>.ui-icon{width:16px;height:16px}.green-note>span{min-width:0;flex:1}.green-note-link{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding-left:12px;border-left:1px solid color-mix(in srgb,var(--success-fg) 24%,transparent);color:inherit;font-size:10px;font-weight:600;text-decoration:none;white-space:nowrap}.green-note-link:hover{color:var(--primary)}.green-note-link .ui-icon{width:12px;height:12px}.location-note{margin:0 0 16px}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 16px;position:relative;overflow:hidden;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;transition:.3s cubic-bezier(.4,0,1,1)}.button .ui-icon{width:16px;height:16px}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.55}.button:not(.secondary):not(.ghost){border-color:var(--primary-border);background:linear-gradient(to bottom,var(--primary-top),var(--primary));box-shadow:inset 0 1px #ffffff40,inset 0 -2px #00000038,0 1px 2px #0000001f;color:var(--primary-foreground)}.button:not(.secondary):not(.ghost):hover:not(:disabled){border-color:var(--primary-hover);background:linear-gradient(to bottom,var(--primary-hover),var(--primary-hover));box-shadow:inset 0 1px #ffffff2e,0 2px 5px #00000024}.button:not(.secondary):not(.ghost):before{position:absolute;inset:0;background:linear-gradient(112deg,transparent 25%,rgba(255,255,255,.22) 48%,transparent 68%);content:"";opacity:0;pointer-events:none;transform:translate(-44%);transition:opacity .18s ease,transform .42s cubic-bezier(.22,1,.36,1)}.button:not(.secondary):not(.ghost):hover:not(:disabled):before{opacity:1;transform:translate(44%)}.button.secondary{border-color:var(--input-border);background:transparent;color:var(--foreground);font-weight:500}.button.secondary:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 52%,var(--input-border));background:var(--muted);color:var(--card-foreground)}.button.ghost{color:var(--foreground)}.button.ghost:hover:not(:disabled){background:var(--muted);color:var(--primary)}.button:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media(hover:hover)and (pointer:fine){html{scrollbar-gutter:stable}}@media(max-width:560px){.feedback-state{grid-template-columns:32px minmax(0,1fr) 28px;padding:14px 12px}.green-note{min-height:46px;align-items:center;padding:11px 12px}.green-note>.ui-icon{margin:0}.green-note-link{min-height:28px;align-self:center;justify-content:center;padding-left:10px}.location-note{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;column-gap:10px}.location-note>.ui-icon{justify-self:center}.location-note>span{align-self:center}.page{padding-bottom:44px}.page-plane{padding-block:28px}.route-label{font-size:9px}html[lang=km] .route-label{font-size:10px}.postal-code-display{min-height:92px;margin-block:16px 12px;padding:16px 46px 16px 16px}.postal-code-display strong{font-size:clamp(30px,10vw,40px);letter-spacing:.12em}.postal-code-display .copy-mark{top:8px;right:8px;width:30px;height:30px}.section-heading{align-items:flex-start;flex-direction:column;gap:6px}.section-heading a{align-self:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
