.cns{position:fixed;z-index:70;left:20px;bottom:20px;width:min(440px,calc(100vw - 32px));display:flex;flex-direction:column;gap:14px;padding:18px 20px;border-radius:var(--r-m);border:1px solid var(--line);background:#0a110df0;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);box-shadow:0 24px 60px #00000080;animation:cns-in var(--t3) var(--ease) both}.cns-t p{margin:8px 0 6px;font-size:14.5px;line-height:1.5;color:var(--dim)}.cns-t p b{color:var(--iv);font-weight:600}.cns-t .lnk{font-size:13px}.cns-b{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.cns-b .btn{flex:1 1 auto}@keyframes cns-in{0%{opacity:0;transform:translateY(16px)}}@media (max-width: 820px){.cns{left:16px;right:16px;width:auto;bottom:calc(var(--tab-h) + 12px + env(safe-area-inset-bottom));padding:16px}.cns-t p{font-size:14px}}@media print{.cns{display:none!important}}.cns-ctl{border:1px solid var(--hair);border-radius:var(--r-s);padding:16px 18px;background:#ffffff05;margin:14px 0}.nav-links.oikos{gap:clamp(18px,2.2vw,34px);align-items:center}.nav-links.oikos a{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05;padding:6px 0 7px}.nav-links.oikos .nl-o{font-family:var(--mono);font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:var(--g);opacity:.75;margin-bottom:3px;transition:opacity var(--t1)}.nav-links.oikos .nl-n{font-family:var(--serif);font-size:16px;font-weight:500;letter-spacing:-.005em}.nav-links.oikos a.active .nl-n{font-weight:600}.nav-links.oikos a:hover .nl-o,.nav-links.oikos a.active .nl-o{opacity:1}.nav-links.oikos a.active:after{bottom:0}.nav.light .nav-links.oikos .nl-o{color:#8a6d2a}@media (max-width: 1100px){.nav-links.oikos{gap:16px}.nav-links.oikos .nl-n{font-size:15px}}@media (max-width: 960px){.nav-links.oikos .nl-o{display:none}}.nav-menu-btn{display:none!important}@media (max-width: 820px){.nav-menu-btn{display:inline-flex!important}}.nav-sheet{position:fixed;top:calc(var(--nav-h) + env(safe-area-inset-top));left:0;right:0;z-index:49;padding:10px var(--pad) 22px;background:#050807f5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(198,162,77,.2);animation:bz-drop var(--t2) var(--ease);max-height:calc(100vh - var(--nav-h));overflow:auto}.nav-sheet.light{background:#e8e0d1f7;color:var(--ink);border-bottom-color:#1412101a}@keyframes bz-drop{0%{opacity:0;transform:translateY(-8px)}}.nav-sheet a{display:flex;align-items:baseline;gap:12px;padding:14px 2px;border-bottom:1px solid var(--hair)}.nav-sheet.light a{border-bottom-color:#1412101a}.nav-sheet a:last-child{border-bottom:0}.nav-sheet .nl-o{font-family:var(--mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--g);min-width:52px}.nav-sheet.light .nl-o{color:#8a6d2a}.nav-sheet .nl-n{font-family:var(--serif);font-size:24px;font-weight:600}.nav-sheet .nl-d{margin-left:auto;font-size:13px;color:var(--mute);text-align:right}.nav-sheet.light .nl-d{color:#6b645a}.nav-sheet a.active .nl-n{color:var(--g2)}.nav-sheet.light a.active .nl-n{color:#8a6d2a}@media (min-width: 821px){.nav-sheet{display:none}}@font-face{font-family:Lora;src:url(/fonts/Lora-Variable.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Lora;src:url(/fonts/Lora-Italic-Variable.woff2) format("woff2");font-weight:400 700;font-style:italic;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JBMono.woff2) format("woff2");font-weight:100 800;font-display:swap}:root{--k: #050807;--k2: #0A110D;--k3: #101A14;--green: #2F5D46;--green-l: #4F8A6A;--g: #C6A24D;--g2: #E6CB86;--iv: #EFE9DC;--mute: #98A69C;--dim: #bfb9ab;--sand: #E8E0D1;--sand2: #DDD3C1;--ink: #141210;--red: #D8665A;--amber: #E0A04A;--line: rgba(198, 162, 77, .18);--hair: rgba(239, 233, 220, .12);--serif: "Lora", Georgia, serif;--sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--r-s: 14px;--r-m: 18px;--r-l: 28px;--wrap: 1240px;--pad: clamp(18px, 4vw, 44px);--nav-h: 60px;--tab-h: 72px;--ease: cubic-bezier(.22, 1, .36, 1);--t1: .2s;--t2: .4s;--t3: .7s;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--k);color:var(--iv);font-family:var(--sans);font-size:17px;line-height:1.55;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}img,svg,video,canvas{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}::selection{background:#c6a24d59}:focus-visible{outline:2px solid var(--g2);outline-offset:3px;border-radius:6px}.xxl,.xl,.lg,.md,.sm,h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0}.xxl{font-size:clamp(52px,8.4vw,112px);line-height:.98;letter-spacing:-.03em}.xl{font-size:clamp(42px,5.8vw,76px);line-height:1.02;letter-spacing:-.025em}.lg,h1{font-size:clamp(34px,4.2vw,56px);line-height:1.05;letter-spacing:-.02em}.md,h2{font-size:clamp(27px,3vw,40px);line-height:1.1;letter-spacing:-.015em}.sm,h3{font-size:clamp(21px,2vw,28px);line-height:1.15}.it{font-style:italic;font-weight:400;color:var(--g2)}.eb{font-family:var(--mono);font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--g)}.lead{font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:#d4cebf}.body{color:var(--dim)}.cap{font-size:14px;color:var(--mute)}.mono{font-family:var(--mono)}.gold{color:var(--g)}.muted{color:var(--mute)}.center{text-align:center}.nowrap{white-space:nowrap}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}.narrow{max-width:760px}.section{padding:clamp(56px,9vw,120px) 0}.section.tight{padding:clamp(32px,5vw,64px) 0}.wrap.section,.wrap.section.tight{padding-left:var(--pad);padding-right:var(--pad)}.stack>*+*{margin-top:var(--gap, 16px)}.stack>a:not(.btn){display:table}.row{display:flex;gap:var(--gap, 14px);align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.grid{display:grid;gap:var(--gap, 22px)}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 960px){.g4,.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.g2,.g3{grid-template-columns:1fr}}.hair{height:1px;background:var(--hair);border:0;margin:28px 0}.page{min-height:calc(100vh - var(--nav-h));padding-top:var(--nav-h)}@media (max-width: 820px){.page{padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom))}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 26px;border-radius:999px;border:1px solid transparent;font-size:16px;font-weight:600;white-space:nowrap;letter-spacing:-.005em;transition:transform var(--t1) var(--ease),box-shadow var(--t1) var(--ease),background var(--t1) var(--ease),opacity var(--t1);background:#ffffff0a;border-color:#efe9dc5c;color:var(--iv)}.btn:hover{transform:scale(1.02)}.btn:active{transform:scale(.98)}.btn[disabled],.btn.disabled{opacity:.45;pointer-events:none}.btn.gold{background:linear-gradient(180deg,#eacf88,#c6a24d);color:#0b0b0a;border:0;box-shadow:0 6px 24px #c6a24d47,inset 0 1px #ffffff73}.btn.dark{background:#111;color:#fff;border-color:#111}.btn.light{background:var(--iv);color:var(--k);border-color:var(--iv)}.btn.ghost-dark{color:var(--ink);border-color:#14121040;background:transparent}.btn.danger{border-color:#d8665a99;color:#f0a198}.btn.sm{height:36px;padding:0 16px;font-size:14px}.btn.xs{height:30px;padding:0 12px;font-size:13px}.btn.block{width:100%}.lnk{color:var(--g2);border-bottom:1px solid rgba(230,203,134,.3);transition:border-color var(--t1)}.lnk:hover{border-color:var(--g2)}.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 14px;border-radius:999px;font-size:13px;border:1px solid rgba(239,233,220,.2);color:#d7d1c3;background:transparent;transition:all var(--t1) var(--ease)}.chip.on{background:var(--iv);color:var(--k);border-color:var(--iv);font-weight:600}.chip.ok{border-color:#4f8a6a99;color:#9fddb9;background:#4f8a6a24}.chip.warn{border-color:#e0a04a99;color:#f2c07f;background:#e0a04a1f}.chip.bad{border-color:#d8665a99;color:#f0a198;background:#d8665a1f}.chip.gold{border-color:#c6a24d99;color:var(--g2);background:#c6a24d1a}.chips{display:flex;gap:8px;flex-wrap:wrap}.card{border-radius:var(--r-l);background:linear-gradient(180deg,#101a14,#0a100d);border:1px solid rgba(255,255,255,.06);padding:clamp(20px,2.4vw,32px);position:relative;overflow:hidden}.card.flat{background:#ffffff06}.card.gold{border-color:#c6a24d73;background:linear-gradient(180deg,#c6a24d1a,#c6a24d08)}.card.link{transition:transform var(--t2) var(--ease),border-color var(--t2)}.card.link:hover{transform:translateY(-3px);border-color:#c6a24d59}.panel{border-radius:var(--r-m);border:1px solid var(--hair);background:#ffffff05}.poster{position:relative;aspect-ratio:2/3;border-radius:var(--r-m);overflow:hidden;background:linear-gradient(160deg,#1d2d28,#0a110d);box-shadow:0 20px 50px #0000008c}.poster img{width:100%;height:100%;object-fit:cover;transition:transform var(--t3) var(--ease)}.poster:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.78));pointer-events:none}.poster .pt{position:absolute;left:16px;right:16px;bottom:16px;z-index:2;font-family:var(--serif);font-weight:600;font-size:22px;line-height:1.08;color:#fff}.poster .pm{position:absolute;left:16px;top:14px;z-index:2;font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;color:#ffffffd9;text-transform:uppercase}a:hover .poster img{transform:scale(1.04)}.field{display:flex;flex-direction:column;gap:6px}.field label,.label{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}.input,select.input,textarea.input{height:48px;border-radius:14px;border:1px solid rgba(239,233,220,.16);background:#ffffff08;padding:0 16px;color:var(--iv);outline:none;transition:border-color var(--t1),background var(--t1);width:100%}textarea.input{height:auto;min-height:120px;padding:14px 16px;resize:vertical;line-height:1.5}.input:focus{border-color:var(--g);background:#ffffff0d}.input::placeholder{color:#6f7b73}.check{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--dim);cursor:pointer}.check input{accent-color:var(--g);width:18px;height:18px;margin-top:3px}.seg{display:inline-flex;padding:4px;border-radius:999px;background:#ffffff0d;border:1px solid var(--hair)}.seg button{border:0;background:transparent;height:38px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:600;color:var(--mute);transition:all var(--t2) var(--ease)}.seg button.on{background:var(--iv);color:var(--k)}.tbl{width:100%;border-collapse:collapse;font-size:15px}.tbl th{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--g);font-weight:500;padding:10px 12px;border-bottom:1px solid rgba(198,162,77,.4)}.tbl td{padding:12px;border-bottom:1px solid var(--hair);color:var(--dim);vertical-align:top}.tbl td.strong{color:var(--iv);font-weight:600}.tbl td.num,.tbl th.num{text-align:right;font-family:var(--mono);white-space:nowrap}.tbl tr:hover td{background:#ffffff04}.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}.notice{border-radius:14px;padding:14px 18px;border:1px solid var(--line);background:#c6a24d12;color:var(--dim);font-size:15px}.notice.err{border-color:#d8665a80;background:#d8665a1a;color:#f4b3ab}.notice.ok{border-color:#4f8a6a80;background:#4f8a6a1f;color:#a9e2c1}.nav{position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);padding-top:env(safe-area-inset-top);background:#0508079e;backdrop-filter:saturate(160%) blur(20px);-webkit-backdrop-filter:saturate(160%) blur(20px);border-bottom:1px solid rgba(198,162,77,.14);transition:background var(--t2) var(--ease)}.nav.light{background:#e8e0d1bd;color:var(--ink);border-bottom-color:#14121014}.brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:-.01em}.brand img{height:28px;width:auto}.brand i{font-weight:400;color:var(--g2)}.nav.light .brand i{color:#8a6d2a}.nav-links{display:flex;gap:32px;font-size:14px}.nav-links a{color:#d7d1c3;position:relative;padding:6px 0;transition:color var(--t1)}.nav.light .nav-links a{color:#3b362f}.nav-links a:hover{color:var(--iv)}.nav-links a.active{color:var(--iv);font-weight:600}.nav.light .nav-links a.active{color:var(--ink)}.nav-links a.active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--g);border-radius:2px}.nav-right{display:flex;align-items:center;gap:14px}.icon-btn{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;position:relative;transition:background var(--t1)}.icon-btn:hover{background:#ffffff0f}.icon-btn .badge{position:absolute;top:4px;right:2px;min-width:18px;height:18px;border-radius:9px;background:var(--g);color:#0b0b0a;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px}@media (max-width: 820px){.nav-links{display:none}}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none;height:calc(var(--tab-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#0a100dd1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(198,162,77,.14);justify-content:space-around;align-items:center}.tabbar a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:#8f9a91;min-width:60px}.tabbar a.active{color:var(--g2)}.tabbar svg{width:24px;height:24px}@media (max-width: 820px){.tabbar{display:flex}}.footer{border-top:1px solid var(--hair);padding:56px 0 40px;color:var(--mute);font-size:14px}.footer a:hover{color:var(--iv)}@media (max-width: 820px){.footer{padding-bottom:calc(40px + var(--tab-h))}}.scrim{position:fixed;inset:0;z-index:80;background:#00000080;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade var(--t2) var(--ease)}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:81;width:min(440px,100vw);background:var(--sand);color:var(--ink);display:flex;flex-direction:column;animation:slidein var(--t2) var(--ease);box-shadow:-30px 0 80px #0006;padding-top:env(safe-area-inset-top)}.modal{position:fixed;left:50%;top:50%;z-index:81;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border-radius:var(--r-l);background:#0c140f;border:1px solid var(--line);padding:28px;animation:pop var(--t2) var(--ease)}@keyframes fade{0%{opacity:0}}@keyframes slidein{0%{transform:translate(100%)}}@keyframes pop{0%{opacity:0;transform:translate(-50%,-46%) scale(.98)}}.reveal{opacity:0;transform:translateY(24px);filter:blur(6px);transition:opacity var(--t3) var(--ease),transform var(--t3) var(--ease),filter var(--t3) var(--ease);transition-delay:calc(var(--i, 0) * 60ms)}.reveal.in{opacity:1;transform:none;filter:none}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--t2);animation-timing-function:var(--ease)}::view-transition-group(poster){animation-duration:var(--t2);animation-timing-function:var(--ease)}.sand{background:var(--sand);color:var(--ink)}.sand .cap,.sand .muted{color:#6b645a}.sand .body,.sand .lead{color:#3f3a33}.sand .it,.sand .eb{color:#8a6d2a}.sand .chip{border-color:#1412102e;color:#3f3a33}.sand .chip.on{background:var(--ink);color:var(--sand);border-color:var(--ink)}.sand .input{border-color:#1412102e;background:#ffffff80;color:var(--ink)}.sand .hair{background:#1412101a}.sand .notice{color:#3f3a33}.prod-img{border-radius:24px;background:#efe8db;overflow:hidden;aspect-ratio:4/5}.prod-img img{width:100%;height:100%;object-fit:cover;transition:opacity var(--t2) var(--ease),transform var(--t3) var(--ease)}.spinner{width:28px;height:28px;border-radius:50%;border:2px solid rgba(198,162,77,.2);border-top-color:var(--g);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,#ffffff08,#ffffff12,#ffffff08);background-size:200% 100%;animation:sk 1.4s linear infinite;border-radius:12px}@keyframes sk{to{background-position:-200% 0}}.empty{text-align:center;padding:64px 16px;color:var(--mute)}.empty .sm{color:var(--iv);margin-bottom:8px}.qr{background:#fff;padding:14px;border-radius:18px;display:inline-block}.qr canvas,.qr img{width:220px;height:220px;image-rendering:pixelated}.kpi{border-radius:var(--r-m);border:1px solid var(--hair);padding:18px 20px;background:#ffffff05}.kpi .n{font-family:var(--mono);font-size:28px;color:var(--g2);font-weight:600}.kpi .l{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-top:4px}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:100;background:var(--iv);color:var(--k);padding:12px 20px;border-radius:999px;font-weight:600;font-size:15px;box-shadow:0 12px 40px #0006;animation:toast var(--t2) var(--ease);max-width:calc(100vw - 32px)}.toast.err{background:#f4b3ab}@media (max-width: 820px){.toast{bottom:calc(var(--tab-h) + 16px + env(safe-area-inset-bottom))}}@keyframes toast{0%{opacity:0;transform:translate(-50%,10px)}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:.12s!important;scroll-behavior:auto!important}.reveal{transform:none;filter:none}}
