.auth .form h1{font-size:1.8rem}.auth-msg{border-radius:8px;padding:10px 14px;font-size:14px;background:var(--red-soft);border:1px solid #ecc9c1;color:var(--red)}.auth-msg.ok{background:var(--forest-soft);border-color:#cfdecf;color:var(--forest)}.auth .warn{display:grid;gap:8px}.auth .warn b{font-weight:600}.auth-actions{display:flex;gap:10px;flex-wrap:wrap}.auth-actions .btn{flex:1 1 auto}.field .err{font-size:13px}.input[aria-invalid=true]{border-color:var(--red)}.auth-ic{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--forest-soft)}.auth-ic svg{width:26px;height:26px;stroke:var(--forest);fill:none;stroke-width:1.7}.auth-ic.amber{background:var(--amber-soft)}.auth-ic.amber svg{stroke:var(--amber)}.auth-ic.red{background:var(--red-soft)}.auth-ic.red svg{stroke:var(--red)}.auth-ic .spinner{width:26px;height:26px}a.link{text-decoration:none}a.link:hover{text-decoration:underline}.warn .link{color:#7a4a14;font-weight:600;text-decoration:underline;justify-self:start;text-align:left}.warn .link[disabled]{opacity:.6;cursor:default;text-decoration:none}:root{--bg: #ffffff;--surface: #ffffff;--soft: #f6f7f3;--ink: #15281d;--muted: #6b726a;--line: #e9e8e2;--line-2: #dcdbd3;--forest: #123B2B;--forest-2: #0B2519;--forest-soft: #e9f1ea;--side-1: #071C13;--side-2: #0E2E21;--gold: #C9A44C;--gold-2: #E3C77A;--gold-text: #7E601A;--terra: #9C5233;--terra-soft: #F6E8E1;--cream: #F3EDE0;--amber: #b8742c;--amber-soft: #fbf0e2;--red: #a83b2c;--red-soft: #f8e6e2;--blue: #2c5a8a;--shadow: 0 1px 2px rgba(18, 40, 26, .04), 0 6px 18px rgba(18, 40, 26, .05);--font-logo: "Playfair Display", Georgia, serif;--font-head: "Playfair Display", Georgia, "Times New Roman", serif;--font-ui: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:15px;line-height:1.5;font-variant-numeric:lining-nums}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}input[type=checkbox]{accent-color:var(--forest)}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}h1,h2,h3{font-family:var(--font-head);font-weight:500;margin:0;text-wrap:balance;color:var(--ink)}.app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.side{position:sticky;top:0;align-self:start;height:100vh;overflow-x:hidden;overflow-y:auto;isolation:isolate;background:radial-gradient(90% 38% at 100% 72%,rgba(42,100,62,.32) 0%,transparent 70%),linear-gradient(180deg,var(--side-2) 0%,var(--side-1) 58%,#06190f 100%);color:#e9eee6;padding:28px 0 20px;display:flex;flex-direction:column;gap:26px}.side>*,.auth .art>*{position:relative;z-index:1}.side>.leaves,.auth .art>.leaves{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.logo{padding:0 20px;display:grid;gap:10px}.logo svg{display:block;width:100%;height:auto}.navgroup{display:grid;gap:2px}.navgroup .lbl{font-family:var(--font-body);font-weight:600;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:#b9c4b5;padding:0 24px 8px}.nav{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:none;border:0;color:#eef2ea;font-family:var(--font-ui);font-size:15px;padding:11px 24px 11px 20px;border-left:4px solid transparent}.nav:hover{background:#ffffff0a}.nav[aria-current=page]{background:linear-gradient(90deg,#4a7a5273,#4a7a5224);border-left-color:var(--gold);color:#fff}.nav svg{width:20px;height:20px;flex:none;stroke:#e3e9df;fill:none;stroke-width:1.5}.nav .soon{margin-left:auto;font-family:var(--font-body);font-size:10px;letter-spacing:.06em;color:var(--gold);border:1px solid rgba(201,161,74,.5);border-radius:999px;padding:1px 7px}.side .foot{margin-top:auto;margin-inline:16px;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:16px 16px 64px;font-size:12.5px;color:#dfe5da;display:grid;gap:4px;background:#ffffff05}.side .foot b{color:#fff;font-weight:600}.side .foot svg{position:absolute;left:0;bottom:0;width:100%;height:64px;pointer-events:none}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#5fd08a;margin-right:6px}.main{min-width:0;display:flex;flex-direction:column}.top{background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding-block:12px;padding-left:max(16px,32px);padding-right:max(16px,env(safe-area-inset-right,0px),32px)}.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:8px;padding:6px 10px}.crumbs{font-family:var(--font-head);font-size:14.5px;min-width:0;color:var(--ink)}.crumbs .brand{font-size:17px}.crumbs .sep{color:#c3c5bc;margin:0 10px}.top .tools{margin-left:auto;display:flex;align-items:center;gap:10px}.ib{position:relative;width:40px;height:40px;border-radius:50%;border:0;background:none;display:grid;place-items:center;color:var(--ink)}.ib:hover,.langw:hover{background:var(--soft)}.ib svg,.langw svg{width:22px;height:22px;stroke:var(--ink);fill:none;stroke-width:1.6}.ib .badge{position:absolute;top:3px;right:3px;min-width:18px;height:18px;border-radius:999px;background:var(--forest);color:#fff;font:600 10.5px/14px var(--font-body);text-align:center;padding:0 4px;border:2px solid var(--surface)}.langw{display:flex;align-items:center;gap:2px;border-radius:999px;padding:0 4px 0 9px;height:40px;cursor:pointer}.lang{border:0;background:none;font-family:var(--font-body);font-size:13px;padding:4px 2px;cursor:pointer}.avatar{width:40px;height:40px;border-radius:50%;background:var(--forest);color:#fff;display:grid;place-items:center;font-family:var(--font-ui);font-size:15px}.who{font-family:var(--font-ui);font-size:14.5px;line-height:1.25}.who small{display:block;font-family:var(--font-body);color:var(--muted);font-size:11.5px}.content{padding-block:30px 28px;padding-left:max(16px,32px);padding-right:max(16px,env(safe-area-inset-right,0px),32px);display:grid;gap:22px;min-width:0}.foot-line{display:flex;justify-content:space-between;gap:6px 16px;flex-wrap:wrap;padding-top:8px;font-size:12.5px;color:var(--muted)}.foot-line b{font-family:var(--font-head);font-weight:400;color:var(--ink)}.eyebrow{font-family:var(--font-body);font-weight:600;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text)}.eyebrow i{font-style:normal;color:var(--amber)}.pagehead{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:flex-end;justify-content:space-between}.pagehead h1{font-size:clamp(1.9rem,3.4vw,2.6rem);margin-top:6px;letter-spacing:-.005em}.pagehead p{color:var(--muted);margin:6px 0 0;max-width:72ch;font-family:var(--font-ui);font-size:16px}.btn{border-radius:8px;padding:11px 20px;border:1px solid transparent;font-family:var(--font-ui);font-size:15px;font-weight:600;display:inline-flex;gap:8px;align-items:center;justify-content:center}.btn.primary{background:var(--forest);color:#fff}.btn.primary:hover{background:var(--forest-2)}.btn.line{background:var(--surface);border-color:var(--line-2);color:var(--ink)}.btn.line:hover{background:var(--soft)}.btn.danger{background:var(--surface);border-color:#e2b9b1;color:var(--red)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn.sm{padding:6px 12px;font-size:13.5px;border-radius:8px}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px;min-width:0;box-shadow:var(--shadow)}.card h2{font-size:1.18rem}.card .sub{color:var(--muted);font-size:14px;margin-top:2px}.grid{display:grid;gap:18px}.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))}.g-main{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}@media(max-width:1100px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.g2,.g3,.g4{grid-template-columns:minmax(0,1fr)}}.kpi{display:grid;grid-template-columns:50px minmax(0,1fr);gap:2px 16px;align-items:start}.kpi .ic{width:50px;height:50px;border-radius:50%;background:var(--forest-soft);display:grid;place-items:center;grid-row:span 3}.kpi .ic svg{width:22px;height:22px;stroke:var(--forest);fill:none;stroke-width:1.7}.kpi .ic.amber{background:var(--amber-soft)}.kpi .ic.amber svg{stroke:var(--amber)}.kpi .t{font-family:var(--font-ui);font-size:15px;padding-top:2px}.kpi .v{font-family:var(--font-head);font-size:1.55rem;line-height:1.15;font-variant-numeric:lining-nums tabular-nums;margin-top:4px}.kpi .n{grid-column:2;color:var(--muted);font-size:13.5px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 8px;align-items:end}.kpi .n svg{width:84px;height:30px;flex:none}.pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 10px;font-family:var(--font-body);font-size:12px;font-weight:600;white-space:nowrap}.pill.green{background:var(--forest-soft);color:var(--forest)}.pill.amber{background:var(--amber-soft);color:var(--amber)}.pill.red{background:var(--red-soft);color:var(--red)}.pill.gray{background:#eeeee9;color:var(--muted)}.pill.blue{background:#e4ecf5;color:var(--blue)}.pill.cafe{background:var(--forest-soft);color:var(--forest)}.pill.cacao{background:var(--terra-soft);color:var(--terra)}.pill.dark{background:#fffffff0;color:var(--forest);box-shadow:0 1px 4px #00000024}.field{display:grid;gap:6px;min-width:0}.field>span{font-size:13.5px;font-weight:600}.field>span em{color:var(--red);font-style:normal}.input,select.input,textarea.input{width:100%;border:1px solid var(--line-2);border-radius:8px;padding:10px 14px;background:var(--surface);font-family:var(--font-body)}textarea.input{min-height:88px;resize:vertical}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line-2);background:var(--surface);border-radius:8px;padding:7px 14px;font-size:14px}.chip:hover{background:var(--soft)}.chip[aria-pressed=true]{background:var(--forest);border-color:var(--forest);color:#fff}.hint{font-size:12.5px;color:var(--muted)}.warn{background:var(--amber-soft);border:1px solid #f0dfc4;color:#7a4a14;border-radius:8px;padding:10px 14px;font-size:14px}.err{color:var(--red);font-size:13px}.photo{border-radius:12px;position:relative;overflow:hidden;background-color:#3d5f30;background-size:cover;background-position:center;min-height:120px}.photo.thumb,.thumb{width:64px;height:46px;min-height:0;border-radius:8px;flex:none;display:inline-block}.photo.thumb.sm,.thumb.sm{width:44px;height:32px;border-radius:6px}.thumb.noimg{background:var(--soft);border:1px dashed var(--line-2)}.photo.cmp-img{display:block;width:170px;max-width:100%;height:96px;min-height:0;border-radius:8px;margin-bottom:8px}.cell-img{display:flex;align-items:center;gap:10px}.photo.prod-cafe{background-image:url(/img/prod-cafe.jpg)}.photo.prod-cacao{background-image:url(/img/prod-cacao.jpg)}.photo.cfg-cafe{background-image:url(/img/cfg-cafe.jpg)}.photo.cfg-cacao{background-image:url(/img/cfg-cacao.jpg)}.photo.adu-buque{background-image:url(/img/adu-buque.jpg)}.photo.adu-puerto{background-image:url(/img/adu-puerto.jpg)}.photo.adu-bodega{background-image:url(/img/adu-bodega.jpg)}.photo.adu-aereo{background-image:url(/img/adu-aereo.jpg)}.ag-logo{width:48px;height:48px;border-radius:12px;background:var(--forest);color:#e3cf96;display:grid;place-items:center;font-family:var(--font-head);font-size:16px;margin-top:-34px;border:3px solid var(--surface);position:relative;box-shadow:var(--shadow)}.ag-cover{min-height:220px}.donut{display:grid;grid-template-columns:132px minmax(0,1fr);gap:18px;align-items:center}.donut svg,.gauge svg{width:132px;height:132px;display:block}.d-big{font-family:var(--font-head);font-size:22px;fill:var(--ink);text-anchor:middle;font-variant-numeric:lining-nums tabular-nums}.d-sub{font-family:var(--font-body);font-size:10.5px;fill:var(--muted);text-anchor:middle}.legend{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14px;min-width:0}.legend li{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:center}.legend i{width:10px;height:10px;border-radius:50%}.legend b{font-weight:600;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}.legend small{color:var(--muted);font-weight:400;margin-left:6px}@media(max-width:480px){.donut{grid-template-columns:minmax(0,1fr);justify-items:center}.legend{width:100%}}.plano{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:center}.plano.wide{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}@media(max-width:900px){.plano.wide{grid-template-columns:minmax(0,1fr)}}.plan{width:100%;height:auto;border-radius:10px;border:1px solid var(--line);display:block}.plan .pl-t,.plan .pl-s,.plan .pl-k{font-family:var(--font-body);text-anchor:middle;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}.plan .pl-t{font-size:12.5px;font-weight:600;fill:#15281d}.plan .pl-s{font-size:11.5px;fill:#3d463e}.plan .pl-k{font-size:12px;fill:#6b726a;text-anchor:start}.seal-box{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:center}.seal-box .seal{width:96px}.seal-box .seal.off{opacity:.45;filter:grayscale(.4)}.seal-box .qrw{display:flex;gap:10px;align-items:center}.seal-box .qrw svg{width:54px;height:54px;flex:none;border-radius:4px}.seal-box code{font-family:var(--font-body);font-size:12px;letter-spacing:.08em;color:var(--gold-text)}.kit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.kit figure{margin:0;display:grid;gap:6px}.kit .pc{height:132px;border-radius:8px;position:relative;overflow:hidden;color:var(--cream);display:grid;align-content:end;padding:7px;min-height:0}.kit .pc:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0b251900 35%,#0b2519e0)}.kit .pc>*{position:relative}.kit .pc b{font-family:var(--font-head);font-weight:500;font-size:11.5px;line-height:1.2}.kit .pc small{font-size:8.5px;color:#dfe5db;line-height:1.25}.kit .pc.dt{background:var(--forest);align-content:center;text-align:left}.kit .pc.dt:before{display:none}.kit .pc.dt b{font-size:20px;color:var(--gold-2)}.kit .pc .mk{position:absolute;top:7px;left:7px;width:14px}.kit figcaption{font-size:11.5px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:4px}.kit figcaption button{border:0;background:none;color:var(--forest);font:600 11.5px var(--font-body);padding:0;cursor:pointer}.gallery{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:10px}.gallery .photo{min-height:200px}@media(max-width:760px){.gallery{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.gallery .photo{min-height:130px}.gallery .photo:first-child{grid-column:1 / -1;min-height:180px}}.pcards{display:grid;grid-template-columns:repeat(2,minmax(0,240px));gap:14px}.pcard{padding:0;border:1px solid var(--line-2);border-radius:10px;overflow:hidden;background:var(--surface);text-align:left;display:grid;box-shadow:var(--shadow)}.pcard .photo{border-radius:0;min-height:96px}.pcard .pc-t{display:flex;gap:10px;align-items:center;padding:10px 12px}.pcard small{display:block;color:var(--muted);font-size:12.5px;font-style:italic}.pcard .radio{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-2);flex:none}.pcard[aria-pressed=true]{border-color:var(--forest);box-shadow:0 0 0 2px var(--forest-soft)}.pcard[aria-pressed=true] .radio{border:5px solid var(--forest)}@media(max-width:480px){.pcards{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.photo .tagtl{position:absolute;right:10px;bottom:10px}.photo .tagtr{position:absolute;right:10px;top:10px}.map{position:relative;border-radius:10px;overflow:hidden;min-height:260px;border:1px solid var(--line);background:radial-gradient(26% 32% at 30% 42%,#c9dcc5 0%,#d3e3cf 55%,transparent 72%),radial-gradient(20% 28% at 63% 30%,#cfe0cb 0%,#d8e7d4 55%,transparent 72%),radial-gradient(16% 24% at 52% 74%,#c6d9c2 0%,#d2e2ce 55%,transparent 72%),radial-gradient(13% 17% at 83% 66%,#d0e1cc 0%,transparent 72%),repeating-linear-gradient(0deg,rgba(31,74,50,.05) 0 1px,transparent 1px 44px),repeating-linear-gradient(90deg,rgba(31,74,50,.05) 0 1px,transparent 1px 44px),#eef3ef}.map .pin{position:absolute;width:22px;height:22px;border-radius:50%;transform:translate(-50%,-50%);background:var(--forest);border:3px solid #fff;box-shadow:0 0 0 1px #123f2940,0 2px 6px #00000038}.map .pin:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:#fff}.map .pin.red{background:var(--amber)}.map .lbl{position:absolute;color:var(--ink);font-family:var(--font-head);font-size:12.5px;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 2px #fff;white-space:nowrap}.map .ctrl{position:absolute;left:12px;top:12px;display:grid;gap:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}.map .ctrl span{width:32px;height:32px;display:grid;place-items:center;font-weight:600;color:var(--ink)}.map .ctrl span+span{border-top:1px solid var(--line)}.map .seg{position:absolute;right:12px;top:12px;display:flex;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;font-family:var(--font-body);font-size:12.5px;box-shadow:var(--shadow)}.map .seg span{padding:6px 12px}.map .seg span:first-child{background:var(--forest);color:#fff}.map .empty{position:absolute;inset:auto 12px 12px 12px;display:flex;gap:8px;align-items:center;color:#7a4a14;padding:9px 14px;background:var(--amber-soft);border:1px solid #f0dfc4;border-radius:8px;font-size:13.5px}.lots{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.lot{display:grid;gap:10px;padding:0;overflow:hidden}.lot .photo{border-radius:0;min-height:132px}.lot .body{padding:0 16px 16px;display:grid;gap:10px}.lot h3{font-size:1.08rem}.lot .loc,.loc{color:var(--muted);font-size:13px;display:flex;gap:5px;align-items:center}.loc svg{width:14px;height:14px;stroke:var(--muted);fill:none;stroke-width:1.6;flex:none}.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.facts>div{display:flex;gap:6px;align-items:flex-start;min-width:0}.facts>div>div{display:grid;min-width:0}.facts svg{width:16px;height:16px;stroke:var(--forest);fill:none;stroke-width:1.6;flex:none;margin-top:2px}.btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;flex:none}.btn.block{width:100%}.attr{display:flex;gap:10px;align-items:flex-start;min-width:0}.attr .ai{width:32px;height:32px;border-radius:50%;background:var(--forest-soft);display:grid;place-items:center;flex:none}.attr .ai svg{width:16px;height:16px;stroke:var(--forest);fill:none;stroke-width:1.6}.attr>div{min-width:0}.attr b{font-weight:600}.stars{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted);font-family:var(--font-body)}.stars b{color:var(--ink);font-weight:600}.st{position:relative;display:inline-block;width:80px;height:16px;flex:none}.st svg{position:absolute;left:0;top:0;width:80px;height:16px}.st .fg{position:absolute;left:0;top:0;bottom:0;overflow:hidden}.rv-big{font-family:var(--font-head);font-size:2.3rem;line-height:1;font-variant-numeric:lining-nums tabular-nums}.bk-row.rv span{display:flex;align-items:center;gap:4px;font-variant-numeric:lining-nums tabular-nums}.bk-row.rv svg{width:13px;height:13px;fill:var(--gold);stroke:none}.meter.gold i{background:var(--gold)}.review{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:6px}.review p{margin:0;font-size:14.5px}.rv-h{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.rv-h .st{margin-left:auto}.avatar.sm{width:32px;height:32px;font-size:12px;flex:none}.rate{display:flex;gap:6px}.rate-b{background:none;border:0;padding:2px}.rate-b svg{width:32px;height:32px;stroke:var(--gold);fill:none;stroke-width:1.5}.rate-b[aria-pressed=true] svg{fill:var(--gold)}.hub{position:relative;overflow:hidden;isolation:isolate;min-height:100vh;display:flex;flex-direction:column;color:#eef2ea;background:radial-gradient(55% 45% at 88% 8%,rgba(201,161,74,.16),transparent 62%),radial-gradient(70% 60% at 0% 100%,rgba(42,110,66,.45),transparent 66%),linear-gradient(160deg,var(--side-2) 0%,var(--side-1) 62%,#06190f 100%)}.hub:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 48px),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 48px);-webkit-mask-image:radial-gradient(80% 70% at 50% 40%,#000 30%,transparent 85%);mask-image:radial-gradient(80% 70% at 50% 40%,#000 30%,transparent 85%)}.hub>.hub-bg,.hub>.leaves{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}.hub>.leaves{opacity:.8}.hub-bg .contour polyline{fill:none;stroke:#78be8c21;stroke-width:1}.hub-bg .net line{stroke:#c9a14a33;stroke-width:1}.hub-bg .nodes circle{fill:#e2cc8ca6}.hub-bg .nodes .pulse{fill:#e3c77f;animation:hubpulse 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes hubpulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.35;transform:scale(1.8)}}@media(prefers-reduced-motion:reduce){.hub-bg .nodes .pulse{animation:none}}.hub-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:18px;padding-left:max(16px,40px);padding-right:max(16px,env(safe-area-inset-right,0px),40px)}.hub-logo{display:block;width:190px}.hub-logo svg{display:block;width:100%;height:auto}.hub-tools{display:flex;align-items:center;gap:10px}.hub .langw:hover{background:#ffffff14}.hub .langw svg{stroke:#e3e9df}.hub .lang{color:#eef2ea}.hub .lang option{color:var(--ink)}.hub .avatar{background:#c9a14a38;color:#f1e2b4;box-shadow:inset 0 0 0 1px #c9a14a80}.hub .who small{color:#b9c6b6}.hub-main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding-block:28px 40px;padding-left:max(16px,40px);padding-right:max(16px,env(safe-area-inset-right,0px),40px);display:grid;gap:30px;align-content:start}.hub-hello .eyebrow{color:#b8d3bd}.hub-hello .eyebrow i{color:var(--gold-2)}.hub-hello h1{color:#fff;font-size:clamp(2.1rem,4.6vw,3.4rem);margin-top:8px}.hub-hello p{margin:8px 0 0;color:#cdd8ca;font-size:17px;max-width:60ch}.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:16px}.tile{position:relative;display:grid;gap:8px;align-content:start;text-align:left;color:inherit;padding:20px;min-height:168px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.13);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .15s,border-color .15s,transform .15s}button.tile:hover{background:#ffffff17;border-color:#c9a14a8c;transform:translateY(-2px)}.tile.main{background:linear-gradient(135deg,#c9a14a42,#c9a14a12);border-color:#c9a14a8c}.tile.off{opacity:.55}.tile-ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#c9a14a24;box-shadow:inset 0 0 0 1px #c9a14a4d;margin-bottom:4px}.tile-ic svg{width:22px;height:22px;stroke:#e3c77f;fill:none;stroke-width:1.6}.tile-t{font-family:var(--font-head);font-size:1.08rem;color:#fff}.tile-d{font-size:14px;color:#c3cfc0}.tile-b{position:absolute;top:18px;right:18px;font-family:var(--font-body);font-size:12px;font-weight:600;color:#1c1a12;background:var(--gold-2);border-radius:999px;padding:2px 9px}.tile-go{position:absolute;right:18px;bottom:18px;opacity:.55;transition:opacity .15s,transform .15s}.tile-go svg{width:18px;height:18px;stroke:#e3e9df;fill:none;stroke-width:1.8}button.tile:hover .tile-go{opacity:1;transform:translate(3px)}@media(prefers-reduced-motion:reduce){.tile,.tile-go{transition:none}button.tile:hover{transform:none}}.hub-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:#9fb0a0;padding-block:16px;padding-left:max(16px,40px);padding-right:max(16px,env(safe-area-inset-right,0px),40px);border-top:1px solid rgba(255,255,255,.08)}@media(max-width:600px){.hub .who{display:none}.hub-logo{width:132px}}.hub-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px 32px;align-items:end}@media(max-width:860px){.hub-head{grid-template-columns:minmax(0,1fr)}}.hs{position:relative;min-width:0}.hs-box{display:flex;align-items:center;gap:10px;background:#fffffff5;border-radius:12px;padding:2px 8px 2px 14px;box-shadow:0 10px 30px #00000040}.hs-box:focus-within{box-shadow:0 0 0 3px #dcbc72b3,0 10px 30px #00000040}.hs-box svg{width:20px;height:20px;stroke:var(--muted);fill:none;stroke-width:1.8;flex:none}.hs-box input{flex:1;min-width:0;border:0;background:none;padding:13px 4px;font-family:var(--font-body);font-size:16px;color:var(--ink);outline:none}.hs-hint{font-size:12.5px;color:#a9b9a8;margin-top:8px}.hs-res{position:absolute;left:0;right:0;top:54px;z-index:5;background:var(--surface);color:var(--ink);border-radius:12px;box-shadow:0 16px 40px #00000059;padding:6px;display:grid;max-height:360px;overflow:auto}.hs-res[hidden]{display:none}.hs-item{display:flex;gap:10px;align-items:center;width:100%;background:none;border:0;text-align:left;padding:8px 10px;border-radius:8px;color:var(--ink)}.hs-item:hover,.hs-item:focus-visible{background:var(--soft)}.hs-item b{display:block;font-weight:600;font-size:14.5px}.hs-empty{padding:12px;color:var(--muted);font-size:14px}.hub-cont{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:14px 16px;border-radius:14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.13);border-left:3px solid var(--gold)}.hub-cont .tt{flex:1;min-width:200px;display:grid;gap:2px}.hub-cont .eyebrow{color:var(--gold-2);font-size:11px}.hub-cont b{color:#fff;font-family:var(--font-head);font-weight:400;font-size:1.05rem}.hub-cont .hint,.hcard .hint{color:#b9c6b6}.hub-cont .photo.thumb{width:76px;height:54px}.btn.gold{background:var(--gold-2);color:#1c1a12}.btn.gold:hover{background:#e7c97f}.hub .hub-cont .ai,.hub .hcard .ai{background:#c9a14a24}.hub .hub-cont .ai svg,.hub .hcard .ai svg{stroke:#e3c77f}.hub-row{display:grid;gap:16px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}.hub-row.three{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr)}@media(max-width:980px){.hub-row,.hub-row.three{grid-template-columns:minmax(0,1fr)}}.hcard{padding:18px 20px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);display:grid;gap:12px;align-content:start;min-width:0}.hcard h2{color:#fff;font-size:1.08rem}.hlist{display:grid}.hlist>button,.hlist>.hli{display:flex;gap:12px;align-items:center;width:100%;background:none;border:0;border-top:1px solid rgba(255,255,255,.08);padding:10px 0;text-align:left;color:inherit;font-size:14.5px}.hlist>:first-child{border-top:0}.hlist .tt{flex:1;min-width:0;display:grid;gap:2px}.hlist time{font-size:12px;color:#9fb0a0;font-family:var(--font-body)}.hlist>button:hover .tt>span:first-child{text-decoration:underline;text-underline-offset:3px}.wx-now{display:flex;gap:14px;align-items:center}.wx-now>svg{width:46px;height:46px;stroke:#e3c77f;fill:none;stroke-width:1.4;flex:none}.wx-t{font-family:var(--font-head);font-size:2.3rem;line-height:1;color:#fff}.wx-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.wx-days div{background:#ffffff0d;border-radius:10px;padding:8px 4px;display:grid;gap:4px;justify-items:center;font-size:13px}.wx-days svg{width:20px;height:20px;stroke:#e3c77f;fill:none;stroke-width:1.5}.wx-days b{color:#fff;font-weight:600}.steps{margin:0;padding-left:22px;display:grid;gap:8px}.faq details{border-top:1px solid var(--line);padding:10px 0}.faq details:first-child{border-top:0}.faq summary{cursor:pointer;font-weight:600}.faq p{margin:6px 0 0;color:#3d463e}.copyrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.copyrow code{font-family:var(--font-body);font-size:15px;background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:6px 10px;-webkit-user-select:all;user-select:all}.hub-help{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;color:#c3cfc0;font-size:14px}.hub-help button{display:inline-flex;gap:8px;align-items:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.14);color:#eef2ea;border-radius:999px;padding:7px 14px;font-size:14px}.hub-help button:hover{border-color:#c9a14a8c;background:#ffffff1a}.hub-help svg{width:16px;height:16px;stroke:#e3c77f;fill:none;stroke-width:1.7}.card.pp{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);padding:0;overflow:hidden}.pp-img{border-radius:0;min-height:100%}.pp-body{padding:20px 22px;display:grid;gap:10px;align-content:start;min-width:0}.pp-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.pp-row .gauge svg{width:112px;height:112px}@media(max-width:640px){.card.pp{grid-template-columns:minmax(0,1fr)}.pp-img{min-height:170px}}.msgprev,.helpbar{display:flex;gap:12px;align-items:center;width:100%;background:none;border:0;padding:0;text-align:left;color:var(--ink)}.msgprev>svg{width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:1.8;flex:none}.msgprev .tt,.helpbar .tt{flex:1;min-width:0;display:grid;gap:2px}.msgprev .hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.helpbar{background:var(--forest-soft);border:1px solid #cfdecf;border-radius:12px;padding:14px 16px}.helpbar:hover{border-color:var(--forest)}.track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.track li{position:relative;display:grid;justify-items:center;gap:6px;font-size:13px;color:var(--muted);text-align:center}.track li span{width:14px;height:14px;border-radius:50%;border:2px solid var(--line-2);background:var(--surface);position:relative;z-index:1}.track li:not(:first-child):before{content:"";position:absolute;top:6px;right:50%;width:100%;height:2px;background:var(--line-2)}.track li.done:before,.track li.on:before{background:var(--forest)}.track li.done span{background:var(--forest);border-color:var(--forest)}.track li.on span{border-color:var(--forest);box-shadow:0 0 0 3px var(--forest-soft)}.track li.on,.track li.done{color:var(--ink)}.price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.price b{font-family:var(--font-head);font-size:1.2rem;font-weight:400;font-variant-numeric:lining-nums tabular-nums}.price small{color:var(--muted);font-size:12.5px}.dropzone{width:100%;border:1.5px dashed var(--line-2);border-radius:12px;background:var(--soft);padding:22px;display:flex;gap:14px;align-items:center;justify-content:center;text-align:left;color:var(--ink)}.dropzone>svg{width:30px;height:30px;stroke:var(--forest);fill:none;stroke-width:1.6;flex:none}.dropzone:hover{border-color:var(--forest)}.dropzone.has{padding:0;display:block;position:relative;border-style:solid;overflow:hidden}.dropzone.has .photo{min-height:180px;border-radius:0}.dz-t{position:absolute;left:10px;bottom:10px;background:#fffffff0;border-radius:999px;padding:3px 10px;font-size:12.5px;font-family:var(--font-body)}.more{border:1px solid var(--line);border-radius:10px;padding:0 14px}.more summary{cursor:pointer;padding:12px 0;color:var(--forest);font-weight:600}.more[open] summary{border-bottom:1px solid var(--line);margin-bottom:12px}.more-b{display:grid;gap:14px;padding-bottom:14px}.offline{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted);font-family:var(--font-body)}.offline svg{width:15px;height:15px;stroke:var(--forest);fill:none;stroke-width:2;flex:none}.cfg{display:grid;grid-template-columns:minmax(0,236px) minmax(0,1fr);gap:22px;align-items:start}.cfg-nav{display:grid;gap:2px;position:sticky;top:60px}.cfg-nav button{display:flex;gap:12px;align-items:center;background:none;border:0;border-left:3px solid transparent;padding:11px 14px;text-align:left;font-size:15px;border-radius:0 8px 8px 0;color:var(--ink)}.cfg-nav button:hover{background:var(--soft)}.cfg-nav button svg{width:18px;height:18px;stroke:var(--ink);fill:none;stroke-width:1.6;flex:none}.cfg-nav button[aria-current=true]{background:var(--forest-soft);border-left-color:var(--forest)}@media(max-width:900px){.cfg{grid-template-columns:minmax(0,1fr)}.cfg-nav{position:static;display:flex;overflow-x:auto;border-bottom:1px solid var(--line)}.cfg-nav button{white-space:nowrap;border-left:0;border-bottom:2px solid transparent;border-radius:0}.cfg-nav button[aria-current=true]{border-bottom-color:var(--forest)}}.ai{width:32px;height:32px;border-radius:50%;background:var(--forest-soft);display:grid;place-items:center;flex:none}.ai svg{width:16px;height:16px;stroke:var(--forest);fill:none;stroke-width:1.6}.trow{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.trow:last-child{border-bottom:0}.card.trow{border-bottom:1px solid var(--line)}.trow .tt{display:grid;gap:2px;flex:1;min-width:0}.tgl{width:42px;height:24px;border-radius:999px;border:0;background:#d3d6cf;position:relative;flex:none;padding:0;transition:background .15s}.tgl:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:left .15s}.tgl[aria-checked=true]{background:var(--forest)}.tgl[aria-checked=true]:after{left:21px}.tgl[disabled]{opacity:.5;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.tgl,.tgl:after{transition:none}}.org{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:start}@media(max-width:600px){.org{grid-template-columns:minmax(0,1fr)}}.logo-box{width:108px;height:108px;border-radius:12px;background:var(--forest);display:grid;place-items:center;color:#e3cf96;font-family:var(--font-head);font-size:28px}.logo-box.light{background:var(--cream);border:1px solid var(--line);padding:12px}.logo-box svg{width:100%;height:auto;display:block}.pcard .radio.sq{border-radius:4px}.wrow{display:grid;grid-template-columns:minmax(0,1fr) 84px;gap:10px;align-items:center;font-size:14.5px}.wrow.total{border-top:1px solid var(--line);padding-top:10px}.wrow.total b:last-child{text-align:right;padding-right:12px;font-variant-numeric:lining-nums tabular-nums}.filters{display:grid;gap:18px;align-content:start}.fhead{display:flex;justify-content:space-between;align-items:center}.link{background:none;border:0;color:var(--forest);font-family:var(--font-ui);font-size:14.5px;padding:0}.link:hover{text-decoration:underline}.fgroup{display:grid;gap:8px;border:0;margin:0;padding:0;min-width:0}.flabel{font-size:14.5px;padding:0;color:var(--ink)}.seg2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.segb{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line-2);background:var(--surface);border-radius:8px;padding:9px 10px;font-size:14.5px}.segb svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}.segb[aria-pressed=true]{background:var(--forest);border-color:var(--forest);color:#fff}.chk{display:flex;align-items:center;gap:9px;font-size:14.5px;color:#3d463e;cursor:pointer}.chk input{width:16px;height:16px;margin:0;flex:none}.chk small{margin-left:auto;color:var(--muted);font-family:var(--font-body);font-variant-numeric:lining-nums tabular-nums}.rhead{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end;justify-content:space-between;border-bottom:1px solid var(--line)}.tabs{display:flex;flex-wrap:wrap}.tab{background:none;border:0;border-bottom:2px solid transparent;padding:10px 14px;font-size:15px;color:var(--muted);margin-bottom:-1px}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--forest)}.rtools{display:flex;gap:10px;align-items:center;padding-bottom:8px;flex-wrap:wrap}.rtools label{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--muted)}.input.sm{padding:6px 10px;width:auto}.viewtog{display:flex;border:1px solid var(--line-2);border-radius:8px;overflow:hidden}.viewtog button{background:var(--surface);border:0;padding:6px 10px;display:flex;gap:6px;align-items:center;font-size:13.5px}.viewtog button+button{border-left:1px solid var(--line-2)}.viewtog button[aria-pressed=true]{background:var(--forest-soft);color:var(--forest)}.viewtog svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}.fchips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.fchip{display:inline-flex;align-items:center;gap:4px;border:1px solid #c9d8c9;background:var(--forest-soft);color:var(--forest);border-radius:999px;padding:3px 6px 3px 11px;font-family:var(--font-body);font-size:12.5px}.fchip svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2}.facts b{font-size:14px;font-variant-numeric:lining-nums tabular-nums}.facts small{color:var(--muted);font-size:11.5px}.compare-chk{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-weight:600;color:#4d564d;font-size:13px;padding:9px 12px;background:var(--soft);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}.scroll{overflow-x:auto}.stepper{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.step{position:relative;display:grid;justify-items:center;gap:6px;text-align:center;font-size:13px;color:var(--muted);background:none;border:0;padding:0}.step:not(:first-child):before{content:"";position:absolute;top:16px;left:calc(-50% + 20px);right:calc(50% + 20px);height:1px;background:var(--line-2)}.step.on:before,.step.done:before{background:var(--forest)}.step .c{position:relative;width:32px;height:32px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;background:var(--soft);font-weight:600}.step.on .c{background:var(--forest);color:#fff;border-color:var(--forest)}.step.done .c{background:var(--forest-soft);color:var(--forest);border-color:#c9d8c9}.step.on{color:var(--ink);font-weight:600}@media(max-width:640px){.step span.t{display:none}}.meter{height:8px;background:#ecebe4;border-radius:999px;overflow:hidden}.meter i{display:block;height:100%;background:var(--forest);border-radius:999px}.dims{display:grid;gap:12px}.dim{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:14px}.dim b{font-variant-numeric:lining-nums tabular-nums}.bk{display:grid;gap:8px}.bk-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 44px;gap:10px;align-items:center;font-size:13px}.bk-row b{text-align:right;font-variant-numeric:lining-nums tabular-nums}.chat{display:grid;grid-template-columns:280px minmax(0,1fr);gap:0;padding:0;overflow:hidden;min-height:460px}.chat .list{border-right:1px solid var(--line)}.conv{display:grid;gap:2px;padding:14px 16px;border-bottom:1px solid var(--line);background:none;border-left:3px solid transparent;text-align:left;width:100%;border-top:0;border-right:0}.conv.on{background:var(--forest-soft);border-left-color:var(--forest)}.conv small{color:var(--muted)}.msgs{display:flex;flex-direction:column;gap:10px;padding:18px;min-height:340px}.msg{max-width:75%;padding:10px 14px;border-radius:14px;background:#f0efe9;font-size:14px}.msg.me{align-self:flex-end;background:var(--forest);color:#fff}.msg small{display:block;opacity:.7;font-size:11px;margin-top:2px}.composer{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}@media(max-width:760px){.chat{grid-template-columns:minmax(0,1fr)}.chat .list{border-right:0;border-bottom:1px solid var(--line)}}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f191280;z-index:80;display:grid;place-items:center;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:16px}.modal{background:var(--surface);border-radius:16px;max-width:520px;width:100%;padding:24px;display:grid;gap:16px;max-height:90%;overflow:auto}.toast{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:90;background:var(--forest-2);color:#fff;padding:12px 18px;border-radius:10px;font-size:14px;box-shadow:0 6px 24px #00000040}.auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh}.auth .art .logo{padding:0;max-width:260px}.auth .art{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(90% 38% at 100% 72%,rgba(42,100,62,.32) 0%,transparent 70%),linear-gradient(180deg,var(--side-2) 0%,var(--side-1) 58%,#06190f 100%);color:#e7ece5;padding:48px;display:grid;align-content:space-between;gap:24px}.auth .art h2{font-size:2rem;color:#fff}.auth .art p{color:#cdd5c8;max-width:40ch;font-family:var(--font-head)}.auth .form{padding-block:48px;padding-left:max(16px,40px);padding-right:max(16px,env(safe-area-inset-right,0px),40px);display:grid;align-content:center;gap:18px;max-width:520px;width:100%;justify-self:center}.roles-pick{display:grid;gap:10px}.role-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:2px 12px;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:14px}.role-card .ic{grid-row:span 2;width:40px;height:40px;border-radius:50%;background:var(--forest-soft);display:grid;place-items:center}.role-card small{color:var(--muted)}.role-card[aria-pressed=true]{border-color:var(--forest);box-shadow:0 0 0 2px var(--forest-soft)}.role-card:hover{border-color:var(--forest);background:var(--soft)}.imp{display:grid;grid-template-columns:170px minmax(0,1fr);gap:22px;align-items:center}.imp-ring{width:150px;height:150px;display:block}.imp-row{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start}.imp-row>div{display:grid;gap:5px;min-width:0}.imp-l{display:flex;justify-content:space-between;gap:8px;font-size:14px}.imp-l b{font-weight:600;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}.imp-row small{color:var(--muted);font-size:12px}@media(max-width:600px){.imp{grid-template-columns:minmax(0,1fr);justify-items:center}.imp>div:last-child{width:100%}}.pw{position:relative}.pw .input{padding-right:46px}.pw-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;background:none;border-radius:8px;display:grid;place-items:center;color:var(--muted)}.pw-eye:hover{background:var(--soft);color:var(--ink)}@media(max-width:860px){.auth{grid-template-columns:minmax(0,1fr)}.auth .art{padding:28px 20px}}.ob{position:relative;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);color:var(--cream);overflow:hidden;isolation:isolate;background:radial-gradient(55% 65% at 34% 50%,rgba(201,164,76,.11),transparent 70%),linear-gradient(160deg,var(--side-2) 0%,var(--side-1) 62%,#04120b 100%)}.ob-scene{display:grid;place-items:center;min-width:0}.ob-scene svg{display:block;width:100%;height:100%;max-height:100vh}.ob .L{opacity:0;transition:opacity 1s ease,transform 1.3s cubic-bezier(.5,0,.2,1);transform-box:view-box;transform-origin:500px 430px}.ob .draw{fill:none;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.9s cubic-bezier(.6,0,.2,1) var(--d, 0s)}.ob .L-terr .draw{stroke:#c9a44c57;stroke-width:1}.ob .L-dims .arc{stroke:var(--gold);stroke-width:3;stroke-linecap:round}.ob .L-dims .nd{fill:var(--gold-2)}.ob .lb{fill:#e9dfc6;font:500 15px var(--font-body);letter-spacing:.03em;opacity:0;transition:opacity .8s ease var(--d, 0s)}.ob .L-net .draw{stroke:#e3c77a80;stroke-width:1.2}.ob .L-net .nd2{fill:var(--gold-2)}.ob .L-net .pl{fill:none;stroke:var(--gold-2);stroke-width:1;animation:obpulse 3s ease-out infinite;transform-box:fill-box;transform-origin:center}.ob .L-burst{transform:scale(.55) translateY(40px)}.ob .glow{transform-box:fill-box;transform-origin:center;transition:transform 1.3s ease;animation:obbreath 6s ease-in-out infinite}.ob .core{transition:opacity .9s ease}.ob .pt{fill:var(--gold);opacity:.2;animation:obfloat 10s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}@keyframes obpulse{0%{transform:scale(1);opacity:.8}to{transform:scale(4.2);opacity:0}}@keyframes obbreath{50%{opacity:.6}}@keyframes obfloat{to{transform:translateY(-22px) rotate(14deg)}}.ob.s1 .L-terr,.ob.s2 .L-dims,.ob.s3 .L-burst,.ob.s4 .L-net{opacity:1}.ob.s1 .L-terr .draw,.ob.s2 .L-dims .draw,.ob.s4 .L-net .draw{stroke-dashoffset:0}.ob.s2 .L-dims .lb,.ob.s4 .L-net .lb{opacity:1}.ob.s3 .L-burst{transform:none}.ob.s3 .core{opacity:0}.ob.at-2 .L-terr{opacity:.6}.ob.at-3 .L-terr{opacity:.4}.ob.at-3 .L-dims{opacity:.16}.ob.at-3 .L-dims .lb{opacity:0}.ob.at-3 .glow{transform:scale(1.4)}.ob.at-4 .L-terr{opacity:.28}.ob.at-4 .L-dims{opacity:0}.ob.at-4 .L-burst{transform:scale(.48)}.ob-panel{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;gap:28px;padding-block:36px;padding-left:8px;padding-right:max(16px,env(safe-area-inset-right,0px),48px);min-width:0}.ob-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.ob-top .lg{width:170px}.ob-top .lg svg{display:block;width:100%;height:auto}.ob-skip{background:none;border:0;color:#b9c4b5;font:500 14px var(--font-body);padding:6px 0;cursor:pointer}.ob-skip:hover{color:#fff}.ob-copy{align-self:center;display:grid;gap:18px;max-width:30rem}.ob-copy>*{animation:obin .8s cubic-bezier(.2,.7,.2,1) both}.ob-copy>:nth-child(2){animation-delay:.08s}.ob-copy>:nth-child(3){animation-delay:.16s}@keyframes obin{0%{opacity:0;transform:translateY(14px)}}.ob-n{display:flex;gap:12px;align-items:center;font:600 12px var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}.ob-n i{font-style:normal;color:#8fa18f;letter-spacing:.1em}.ob-copy h1{color:#fff;font-size:clamp(2.1rem,3.6vw,3.2rem);line-height:1.08}.ob-copy p{margin:0;color:#c9d2c8;font-size:1.08rem;line-height:1.6}.ob-foot{display:grid;gap:20px}.ob-prog{display:flex;gap:8px}.ob-prog button{flex:1;height:23px;padding:10px 0;border:0;border-radius:2px;background:#f3ede02e;background-clip:content-box;cursor:pointer;transition:background-color .4s}.ob-prog button.done,.ob-prog button[aria-current=step]{background-color:var(--gold)}.ob-nav{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ob-nav .btn.ghost{background:transparent;color:#e3e8df;border-color:#f3ede047}.ob-nav .btn.ghost:hover{border-color:var(--gold)}@media(max-width:900px){.ob{grid-template-columns:minmax(0,1fr);align-content:start}.ob-scene{padding-top:56px}.ob-scene svg{max-height:44vh}.ob-panel{position:static;padding-block:0 32px;padding-left:max(16px,env(safe-area-inset-left,0px));gap:22px}.ob-top{position:absolute;top:14px;left:max(16px,env(safe-area-inset-left,0px));right:max(16px,env(safe-area-inset-right,0px))}.ob-top .lg{width:136px}.ob .lb{font-size:24px}}@media(prefers-reduced-motion:reduce){.ob .L,.ob .draw,.ob .lb,.ob .glow,.ob .core{transition:none}.ob .pt,.ob .pl,.ob .glow,.ob-copy>*{animation:none}}@media(max-width:900px){.app{grid-template-columns:minmax(0,1fr)}.side{position:fixed;inset:0 auto 0 0;width:260px;z-index:70;transform:translate(-100%);transition:transform .2s ease;overflow-y:auto}.side.open{transform:none}.menu-btn{display:inline-block}.who{display:none}}@media(prefers-reduced-motion:reduce){.side{transition:none}}:root{--color-earth: var(--forest);--color-earth-dark: var(--forest-2);--color-earth-light: var(--forest);--color-forest: var(--forest);--color-forest-dark: var(--forest-2);--color-emerald: #2a7a4b;--color-emerald-dark: var(--forest);--color-bg: var(--bg);--color-surface: var(--surface);--color-surface-alt: var(--soft);--color-border: var(--line);--color-border-light: var(--line);--color-text: var(--ink);--color-text-muted: var(--muted);--color-text-light: #9aa097;--color-text-earth: var(--forest);--color-success: #2a7a4b;--color-warning: var(--amber);--color-error: var(--red);--color-info: var(--blue);--font-sans: var(--font-ui);--font-serif: var(--font-head);--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 14px;--radius-2xl: 16px;--radius-full: 999px;--shadow-sm: var(--shadow);--shadow-md: var(--shadow);--shadow-lg: 0 8px 28px rgba(18, 40, 26, .1)}img{max-width:100%}a{color:var(--forest)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid var(--forest-soft);border-top-color:var(--forest);animation:spin .8s linear infinite;flex:none}.loading{display:flex;gap:12px;align-items:center;justify-content:center;padding:40px 16px;color:var(--muted);font-size:14px}.loading.full{min-height:100vh}.empty-state{display:grid;gap:8px;justify-items:center;text-align:center;padding:28px 16px}.empty-state .ai{width:44px;height:44px}.empty-state .ai svg{width:20px;height:20px}.empty-state b{font-family:var(--font-head);font-weight:500;font-size:1.1rem}.empty-state .hint{max-width:44ch}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.map.live{background:var(--soft)}.map.live .leaflet-container{font-family:var(--font-body);background:var(--soft)}.map.live .empty{z-index:500}.map-seg{position:absolute;right:12px;top:12px;z-index:500;display:flex;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}.map-seg button{border:0;background:none;padding:6px 12px;font-family:var(--font-body);font-size:12.5px;color:var(--ink)}.map-seg button[aria-pressed=true]{background:var(--forest);color:#fff}.map-pin{display:block;width:22px;height:22px;border-radius:50%;background:var(--forest);border:3px solid #fff;box-shadow:0 0 0 1px #123f2940,0 2px 6px #00000040;position:relative}.map-pin:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:#fff}.map-pin.red{background:var(--amber)}.leaflet-tooltip.map-lbl{background:none;border:0;box-shadow:none;padding:0;color:var(--ink);font-family:var(--font-head);font-size:12.5px;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 2px #fff}.leaflet-tooltip.map-lbl:before{display:none}.acct{position:relative}.acct-btn{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;text-align:left;border-radius:999px}.acct-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:75;min-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #12281a24;padding:6px;display:grid}.acct-menu .who-full{padding:10px 12px 12px;border-bottom:1px solid var(--line);margin-bottom:4px;font-size:14px;display:grid;gap:2px}.acct-menu .who-full small{color:var(--muted);overflow-wrap:anywhere}.acct-menu button{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;border-radius:8px;padding:9px 12px;text-align:left;font-size:14px;color:var(--ink)}.acct-menu button:hover{background:var(--soft)}.acct-menu button svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6;flex:none}.acct-menu .danger{color:var(--red)}.side-scrim{display:none}@media(max-width:900px){.side-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;background:#0f191273}}.side .foot .side-logout{margin-top:6px;justify-self:start;background:none;border:1px solid rgba(255,255,255,.22);color:#eef2ea;border-radius:8px;padding:5px 10px;font-size:12.5px;position:relative;z-index:1}.side .foot .side-logout:hover{border-color:var(--gold)}.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}.ok{color:#2a7a4b;font-size:13px}textarea.input{min-height:96px;resize:vertical}table{width:100%;border-collapse:collapse}a.nav,a.ib{text-decoration:none}.auth{position:relative}.auth-lang{position:absolute;top:14px;right:max(16px,env(safe-area-inset-right,0px));z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:999px}
