/* A calmer, consistent interface for the pasture and account pages. */
:root{--forest:#25764e;--deep:#185a3b;--leaf:#47795a;--lime:#edf4e7;--paper:#f6f7f0;--card:#fff;--ink:#24382c;--muted:#728074;--line:#e5eadd;--gold:#f5c650;--gold-soft:#fff4d4;--red:#a94838;--shadow:0 5px 22px #203d2310;--radius:22px}
body{background:#f6f7f0;color:var(--ink);background-image:radial-gradient(ellipse at 95% 0,#edf2df,transparent 50%);line-height:1.6}
body:before{display:none}
button,input,select,textarea{font-family:var(--font)}
button{touch-action:manipulation}
a,button,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #77ab87;outline-offset:4px}
.app-shell{max-width:1180px;margin:0 auto;padding:0 30px}
.topbar{min-height:96px;padding:20px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;backdrop-filter:none;box-shadow:none;gap:16px;flex-wrap:nowrap}
.topbar-left{min-width:0}.topbar-brand{gap:11px}.topbar-brand strong{font-size:24px;letter-spacing:-.5px;color:#203c2a}
.brand-mark{background:#f8d666;color:#264b31;box-shadow:none;border-radius:15px;width:46px;height:46px;font-size:27px}
.portal-level{color:#6c7c62;background:none;border:0;padding:0;font-family:var(--font);font-size:10px;gap:7px;margin-top:0}
.portal-level-meter{width:40px;height:4px;background:#dbe4d2}.portal-level-meter span{background:#6aa370}
.topbar-right{flex-wrap:nowrap;gap:16px}.balance-mini{min-width:0;padding:0 18px 0 0;border:0;border-right:1px solid #dfe7d8;background:none;box-shadow:none;border-radius:0;display:flex;flex-direction:column;gap:1px}
.balance-mini small{font-size:9px;color:var(--muted);font-weight:500}.balance-mini b{font-size:19px;color:#2c4b34;font-weight:500;letter-spacing:-.3px}
.sound-switch{background:#edf2e7;color:#547254;border:0;box-shadow:none;width:34px;height:34px;font-size:17px;border-radius:50%}
.sound-switch:hover{background:#e1ebd8}.user-mini .avatar{border:0;background:#e8efdb;width:38px;height:38px;font-size:22px}
.user-mini strong{color:#314c36;font-size:12px}.user-mini small{color:#819078;font-size:10px}
.menu-toggle{min-height:38px;padding:8px 12px;background:#fff;color:#40513f;border:1px solid #e0e7d9;border-radius:12px;font:500 12px var(--font)}
.portal-quicknav{margin:0;padding:9px 0;gap:8px;border-bottom:1px solid var(--line)}
.portal-quicknav a{padding:10px 17px;min-height:42px;border:0;border-radius:12px;background:none;color:#75816f;font:500 13px var(--font)}
.portal-quicknav a:hover{background:#edf2e7;color:#254d32}.portal-quicknav a.active{background:#e5efd9;color:#32613a;box-shadow:none}.portal-quicknav a.active svg{stroke:#477b46}
.page-main{padding:28px 0 36px;min-height:65vh}
.page-heading{margin-bottom:25px;padding:0}.page-heading h1{color:#243e2a;font-size:34px;letter-spacing:-.6px;line-height:1.2;font-weight:500}
.eyebrow,.page-heading .eyebrow{font:600 10px var(--font);letter-spacing:1.5px;color:#769266;display:block;margin-bottom:9px}
.page-heading p{font-size:14px;color:#7b8778;line-height:1.65;margin-top:8px;max-width:650px}
.page-heading .heading-actions{margin-top:0}.btn{min-height:45px;padding:11px 21px;background:#28774f;border:1px solid #28774f;border-bottom:1px solid #28774f;border-radius:13px;box-shadow:none;color:#fff;font:500 13px var(--font);letter-spacing:0;gap:8px;transition:background .18s,transform .18s}
.btn:hover{background:#1c603e;color:#fff;transform:translateY(-1px)}.btn:disabled{opacity:.45;transform:none}
.btn-gold{background:#f5cc65;border-color:#f5cc65;color:#4b431c}.btn-gold:hover{background:#ebbc49;border-color:#ebbc49;color:#3b361a}
.btn-light{background:#f6f8f1;border:1px solid #e0e8d8;color:#416044;box-shadow:none}.btn-light:hover{background:#eaf0e2;color:#2b4e31}
.btn-soft{background:#e8f1e1;border:1px solid #e0ead9;color:#3b6a40;box-shadow:none}.btn-soft:hover{background:#dcebd3;color:#2c5730}
.btn-danger{background:#fff2ec;color:#a45140;border-color:#f2d8ce}.btn-sm{min-height:35px;padding:7px 12px;font-size:11px;border-width:1px}
.btn-full{width:100%}.text-link{color:#467d4c;font-size:12px;background:transparent;border:0;padding:0;font-weight:600;cursor:pointer;white-space:nowrap}
.panel,.goal-card{background:#fff;border:1px solid #e7ecdf;box-shadow:0 3px 16px #233d2204;border-radius:21px;padding:25px}
.panel h2,.panel h3,.goal-card h3{color:#2f4b33;font-weight:500}.panel h2{font-size:23px;letter-spacing:-.3px}.panel h3{font-size:20px}.panel-head{margin-bottom:19px;gap:15px}
.help,.muted,.panel p.help{color:#7a8778;font-size:12px;line-height:1.75}.section-gap{margin-top:22px}.stack{gap:20px}.grid-2{gap:20px}
.pill{background:#f0f4e9;border:1px solid #e1e9d7;color:#748364;font:500 10px var(--font);padding:5px 10px;border-radius:8px}
.pill.green{background:#e8f4e6;border-color:#dbeed7;color:#4d8148}.pill.orange{background:#fff4d9;border-color:#f5e7c5;color:#9b7e31}
.pill.red{background:#fff0e8;border-color:#f2ddd1;color:#a9684b}.pill.gray{background:#f1f3ee;border-color:#e4e8de;color:#7c8877}
.notice{padding:14px 17px;background:#eff6e9;border:1px solid #dce9d2;color:#57744b;border-radius:12px;font-size:12px;line-height:1.7;box-shadow:none}
.notice.warn{background:#fff8e8;border-color:#f0e4c2;color:#947937}.notice.error{background:#fff0eb;border-color:#edcfc3;color:#a15b45}.notice .text-link{color:inherit;text-decoration:underline}
.stat,.stat:nth-child(n){background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:none;padding:19px;min-height:125px;display:flex;flex-direction:column}
.stat-label{font-size:10px;color:#88917e;text-transform:none;letter-spacing:0;line-height:1.5;padding-right:30px}
.stat strong,.stat:nth-child(n) strong{color:#2b4c32;font-size:30px;margin:10px 0 5px;letter-spacing:-.5px;font-weight:500}
.stat small{color:#8c9586;font-size:10px}.stat-icon,.stat:nth-child(n) .stat-icon{background:#f0f5e8;color:#7b9867;position:absolute;right:15px;top:15px;width:29px;height:29px;border-radius:9px}
.stats-grid{gap:14px}.positive{color:#3d8d54}.negative{color:#b77555}.reward{color:#4c8248}
.filter-btn,.filters .filter-btn{background:none;border:1px solid #e0e8d7;color:#7d8b72;border-radius:11px;padding:8px 14px;font:500 12px var(--font);box-shadow:none}
.filter-btn.active,.filters .filter-btn.active{background:#e5efd9;border-color:#d4e2c6;color:#4e733c}.filters .filter-btn span{background:#ecf0e4;color:inherit}.filters .filter-btn.active span{background:#d2e2bf}
.animal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.animal-card,.happy-animal{border:1px solid #e1e8d7;border-radius:22px;background:#fff;box-shadow:0 3px 12px #38562b05;overflow:hidden}
.happy-animal:hover,.happy-animal:focus-within{border-color:#afc799;box-shadow:0 9px 26px #37552e12;translate:0 -3px}
.animal-art,.happy-art{aspect-ratio:1.6;background:#edf3e5}.animal-content{padding:18px;gap:12px}.animal-content h3{color:#354f32;font-size:23px;font-weight:500}
.animal-content>p,.animal-content .footnote,.animal-description{color:#8a9480;font-size:12px}.animal-content .animal-mood{color:#829574;font-size:11px}
.animal-specs{border-color:#e7ecdf}.animal-specs small{color:#89957d;font-size:10px}.animal-specs b{color:#395c37;font-size:20px;font-weight:500}
.animal-cycle-note{color:#8c967f;background:#f5f7ef;border-color:#e7eddd}.animal-cycle-note strong{color:#698653}
.animal-harvest{background:#fcfdf4;color:#4a703c;border:1px solid #dfe7ce;border-bottom:2px solid #cddbbc;box-shadow:0 4px 10px #263b2712;border-radius:11px;font-size:17px}
.animal-harvest:hover{background:#f0f5df;color:#466833}.pet-pill{background:#fcf3f0;border:1px solid #efddd6;color:#a17b6b;box-shadow:none;font-size:11px}
.shop-cycle-summary{background:#f7f9f1;border:1px solid #e6edda;color:#7e8f6c}.shop-cycle-summary strong{color:#54713d}
.progress-track{background:#edf1e5;border:0;height:5px}.progress-track>span{background:#9ebf7b}.progress-meta{color:#99a18f;font-size:10px}
.pasture-welcome{position:relative;isolation:isolate;overflow:hidden;border-radius:25px;min-height:263px;display:flex;align-items:center;padding:36px;margin-bottom:22px;background:#e7efda}
.pasture-welcome>div:first-child{z-index:2;max-width:57%}.pasture-welcome h1{font-size:39px;line-height:1.16;font-weight:500;color:#2d4c2e;letter-spacing:-.9px}
.pasture-welcome h1 span{font-size:28px}.pasture-welcome p{color:#7a8b68;font-size:14px;margin:10px 0 22px}.pasture-welcome .eyebrow{color:#809364;font-size:9px}
.welcome-scene{position:absolute;inset:0 0 0 38%;background:linear-gradient(90deg,#e7efda 0,#e7efda00 35%),url('/art/hero-farm.jpg') center/cover;z-index:-1;opacity:.83}
.welcome-stamp{position:absolute;bottom:14px;right:24px;padding:3px 9px;border-radius:5px;background:#fff9d3cd;color:#667248;font-size:9px;letter-spacing:.5px}
.pasture-balance-grid{grid-template-columns:1fr 1fr;gap:20px}
.balance-focus,.collect-focus{background:#fff;border:1px solid #e0e8d5;color:#6a7f57;border-radius:19px;padding:22px 25px;box-shadow:none}
.balance-focus{background:#fffaf0;border-color:#f1e7ca}.balance-focus:after{font-size:75px;right:30px;top:12px;opacity:.12}
.focus-label{font-size:10px;font-weight:500;letter-spacing:.2px;text-transform:none}.focus-number,.collect-focus .focus-number{color:#456b38;font-size:39px;text-shadow:none;line-height:1.15;margin:11px 0 6px;font-weight:500;letter-spacing:-.8px}
.balance-focus .focus-number{color:#917537}.focus-hint{font-size:10px;color:#8c967d;opacity:1}.balance-focus .btn{margin-top:15px;background:none;border:0;color:#8d804b;padding:0;min-height:24px;font:500 12px var(--font)}
.focus-bottom{margin-top:13px}.live-dot{background:#edf6e5;color:#83a266;border:0;font-size:9px;padding:4px 9px}.live-dot:before{background:#93b878;box-shadow:none}
.pasture-stats{margin-top:18px}.pasture-stats .stat{min-height:105px;padding:16px 18px}.pasture-stats .stat strong{font-size:25px;margin:8px 0 3px}.pasture-stats .stat small{font-size:9px}
.rex-companion{border:1px solid #e6e9dd;border-radius:17px;background:#efefe3;box-shadow:none;padding:14px 18px;margin:20px 0 29px;gap:14px}
.rex-companion>img{width:50px;height:50px;border:0;border-radius:14px;box-shadow:none}.rex-companion .eyebrow{display:none}.rex-companion h2{font-size:19px;color:#687052;margin:0 0 3px;font-weight:500}.rex-companion p{font-size:11px;color:#90937b}.rex-companion .btn{background:#fafbf5;border-color:#e0e5d4;color:#7b8264;min-height:37px;padding:8px 15px;font-size:11px}
.herd-heading{margin:12px 0 19px}.herd-heading h2{font-size:27px;color:#3d5734;font-weight:500}.herd-heading .eyebrow{display:none}.herd-heading h2 .herd-count{display:inline-flex;vertical-align:middle;justify-content:center;align-items:center;min-width:25px;height:25px;background:#e4edda;color:#83976d;font:500 12px var(--font);border-radius:50%;margin-left:8px}
.herd-heading .btn{font-size:12px;padding:9px 14px;min-height:39px}.pasture-help{color:#97a089;font-size:11px;line-height:1.7}
.money-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px 38px;border-radius:24px;background:#244c37;background-image:radial-gradient(ellipse at 90% 0,#3c6d46,transparent 70%);color:#f1f5e4}
.money-hero .eyebrow{color:#afc79c;font-size:9px;letter-spacing:1.7px}.money-hero h1{font-size:31px;font-weight:500;line-height:1.25;letter-spacing:-.4px;color:#f4f6e9;margin:0}
.money-hero p{font-size:12px;color:#b1c7a7;margin-top:8px}.money-label{display:block;font-size:11px;color:#b1c7a7;margin-top:26px}.money-value{display:block;font:500 49px/1.15 var(--display);letter-spacing:-1px;color:#f6edc9;margin-top:5px}
.money-actions{display:grid;gap:10px;min-width:180px;z-index:1}.money-actions .btn{width:100%;font-size:13px;min-height:44px}.money-actions .btn-light{background:#ffffff0b;border:1px solid #6b8b68;color:#e0ebd3}.money-actions .btn-light:hover{background:#ffffff18}
.money-shop-link{color:#b7cfa8;text-align:center;font-size:11px;padding:5px}.money-watermark{position:absolute;right:220px;bottom:-40px;font-size:180px;opacity:.07;z-index:-1;transform:rotate(-15deg)}
.section-tabs{display:flex;align-items:center;gap:5px;background:#e9eee1;padding:5px;border-radius:13px;margin:24px 0;width:max-content;max-width:100%}
.section-tabs button{padding:10px 21px;min-height:40px;border:0;border-radius:9px;color:#879178;background:transparent;font:500 12px var(--font);white-space:nowrap;cursor:pointer}
.section-tabs button[aria-pressed=true]{background:#fff;color:#416b37;box-shadow:0 2px 6px #283e2410}
.wallet-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:24px}.wallet-summary>div{display:flex;align-items:center;gap:13px;border:1px solid #e4eada;border-radius:17px;padding:19px;background:#f0f4e8;flex-wrap:wrap}
.summary-icon{width:39px;height:39px;display:grid;place-items:center;font-size:22px;background:#fff8de;border-radius:13px;flex-shrink:0}.wallet-summary>div:nth-child(2) .summary-icon{background:#e4edd8}
.wallet-summary strong{font-size:12px;color:#557249;font-weight:500}.wallet-summary p{font-size:10px;line-height:1.6;color:#8b987e;margin:3px 0 0}.wallet-summary .text-link{font-size:10px;margin-left:52px;line-height:1.2}
.simple-empty{text-align:center;padding:36px 18px}.simple-empty>span{display:grid;place-items:center;margin:0 auto 13px;background:#f0f4e8;border-radius:18px;width:55px;height:55px;color:#a1b88a;font-size:26px}
.simple-empty h3{font-size:21px;color:#657b52}.simple-empty p{font-size:12px;color:#9aa38e;margin:8px auto 19px;max-width:310px}
.movement-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:11px;background:#eef5e8;color:#7c9c62;font-size:19px}.movement-icon.out{background:#fcf1e4;color:#b99970}.movement-copy{flex:1;min-width:0}.movement-copy strong{font-size:12px;font-weight:500;color:#627453}.movement-copy small{display:block;font-size:10px;color:#a3ac98;margin-top:2px}.list-row{border-color:#edf0e5;gap:13px;padding:16px 0}.list-row>b{font-size:13px;font-weight:500;color:#597845}
.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0 0}.payment-options>button{display:flex;align-items:center;gap:13px;text-align:left;padding:18px;border:1px solid #e3e9da;border-radius:14px;background:#fbfcf8;color:#7c8b6c;min-height:83px}
.payment-options>button[aria-pressed=true]{background:#edf5e6;border-color:#9abb80;color:#4c7040}.payment-symbol{display:grid;place-items:center;font-size:25px;width:38px;height:38px;background:#e0f1df;color:#539b71;border-radius:12px}.crypto-symbol{background:#e2f1e9;color:#53a883}.payment-options strong{display:block;font-size:14px;font-weight:500}.payment-options small{display:block;color:#96a087;font-size:10px;margin-top:3px}.choice-check{margin-left:auto;color:#7ea65c;font-size:17px}
.deposit-form{border-top:1px solid var(--line);padding-top:24px;margin-top:26px;max-width:720px}.deposit-form h3{font-size:22px;margin-bottom:5px}.deposit-form .help{margin-bottom:22px}.deposit-form .form-grid{grid-template-columns:1fr 1fr}.deposit-form .form-grid>.field:first-child{grid-column:1/-1}
input,select,textarea{background:#fbfcf8;border:1px solid #dfe7d6;border-radius:11px;color:#506545;font-size:13px;min-height:45px;padding:11px 13px;box-shadow:none}
input::placeholder,textarea::placeholder{color:#b1baa7}input:focus,select:focus,textarea:focus{border-color:#9cb684;background:#fff;box-shadow:0 0 0 3px #8fac7312;outline:none}.field>span{font-size:11px;color:#819070;font-weight:500;margin-bottom:7px}.field small{color:#a5af98;font-size:10px}
.form-grid{gap:18px}.check-field{font-size:11px;line-height:1.75;color:#8c977e;margin:20px 0}.check-field input{accent-color:#6b9c52;width:16px;height:16px;min-height:16px;margin-top:3px;flex-shrink:0}.form-actions{border-color:var(--line)}.form-message{color:#ad6351}.password-field button{background:#eef2e6;color:#829267;min-height:25px}.password-field input{color:#506545}.form-actions .help{font-size:11px}
.withdraw-summary{display:grid;grid-template-columns:1.3fr 1fr 1fr;background:#fff;border:1px solid var(--line);padding:24px;border-radius:18px;margin:0 0 13px}.withdraw-summary>div{padding:0 22px;border-right:1px solid #edf0e5}.withdraw-summary>div:first-child{padding-left:0}.withdraw-summary>div:last-child{border:0}.withdraw-summary span{display:block;color:#98a18b;font-size:10px}.withdraw-summary strong{display:block;color:#537243;font:500 29px var(--display);margin-top:5px}
.quiet-note{font-size:11px;color:#95a77e;margin:10px 3px}.withdraw-form{max-width:800px}.withdrawal-row{padding:0 0 22px;border-bottom:1px solid var(--line);margin-bottom:20px}.withdrawal-row:last-child{border:0;margin-bottom:0}.withdrawal-detail{display:flex;justify-content:space-between;gap:12px;background:#f7f9f0;padding:10px 13px;border-radius:8px;font-size:11px;color:#8a9b77}.withdrawal-detail b{color:#678351;font-weight:500}.withdrawal-detail small{font-size:10px}.withdrawal-row form{margin-top:15px}.withdrawal-row form .btn{font-size:10px;min-height:32px;background:#f6f8f1;border-color:#e6ebdd;color:#8d987d}.transaction-reference{overflow-wrap:anywhere}
.table-wrap{border-color:var(--line);background:#fff;border-radius:13px}th{background:#f6f8f0;color:#99a38c;font-size:9px}td{border-color:#edf0e5;color:#6c7d5c}td small{color:#a4ad98}.empty{background:#f7faf1;border:1px dashed #d8e3cb;color:#6a8353;box-shadow:none}.empty h3{color:#6c8655}.empty p{color:#97a48b}
.wallet-card{background:#f2f6e9;border:1px solid #dfe8d2;color:#6b8155;box-shadow:none}.wallet-card .wallet-number{color:#62874b}.wallet-card small{color:#98a780}.wallet-card p,.wallet-card .pill{color:#8e9e77}
.hero-panel{background:#2a5138;border:0;box-shadow:none}.hero-copy{background:linear-gradient(90deg,#284f39f0,#284f3988)}.hero-copy h2{color:#f4f4df}.hero-art:before{background:linear-gradient(90deg,#284f39,transparent)}
.goal-card p{color:#8f9b81}.goal-card .reward{color:#74934f}.goal-card .progress-track{background:#eef2e4}.icon-circle{background:#eef4e5;color:#8ca574;border:0}.step-number{background:#edf3e3;color:#87a26c;border:0}
.checkout-summary{padding:0;border:1px solid var(--line)}.checkout-summary-body{padding:24px}.checkout-lines div{border-color:#e9eedf}.checkout-lines dt{color:#99a48c}.checkout-lines dd{color:#688252}.checkout-total{background:#f5f0db;color:#8e7c42;border:0}.qr-box{border:1px solid #e0e7d7;box-shadow:none;border-radius:17px}.pix-code{background:#f7faf1;color:#8c9d79}
.faq-list details{border-color:var(--line)}.faq-list summary{color:#667c52;font-size:17px}.faq-list summary:after{color:#a1b58d}.faq-list details p{color:#8b9b7a}.code-output{background:#f4f7ec;border-color:#c6d8af;color:#78915d}
.avatar{background:#edf3e2;border-color:#dee9cf}.avatar-choice{background:#f0f5e8;border-color:#e4ebd8}.avatar-choice[aria-pressed=true]{border-color:#9fbd82;box-shadow:0 0 0 3px #afca9418}.profile-banner{border-color:var(--line)}.message{background:#f1f6e9;color:#768965;border-color:#e4ecd9}.message.support{background:#fff7e4;border-color:#f1e6c9;color:#948456}.message strong{color:#6d9750}
.guide-disclosure{margin:34px 0 0;border-top:1px solid #e4eadd;padding-top:16px;color:#93a180;font-size:11px}.guide-disclosure>summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;width:max-content;max-width:100%}.guide-disclosure>summary::-webkit-details-marker{display:none}.guide-disclosure summary img{width:26px;height:26px;object-fit:cover;border-radius:50%;filter:saturate(.6)}.guide-disclosure summary>span:last-child{color:#b0bba2;margin-left:10px}.guide-disclosure-content{display:flex;align-items:center;gap:20px;padding:16px 0;font-size:12px;color:#92a17f}.guide-disclosure-content p{max-width:650px}
.portal-footer{padding:12px 0 28px;color:#a9b09d;font-size:10px;min-height:0}.portal-footer a{color:#93a181;text-decoration:none}.portal-footer a:hover{text-decoration:underline}.portal-dock{display:none}
.sidebar{left:auto;right:0;top:0;bottom:0;width:310px;max-height:100dvh;height:100dvh;background:#fff;border:0;border-left:1px solid #e3e9d9;border-radius:24px 0 0 24px;box-shadow:-14px 0 60px #304a2920;padding:28px 18px;overflow:auto;transform:translateX(105%)}.sidebar .brand{padding-right:24px}.sidebar .brand-name{color:#405b35;font-size:22px}.sidebar .brand small{color:#a0ad8f;font-size:10px}.menu-open .sidebar{transform:none}.menu-open .mobile-backdrop{background:#1d351c3b;backdrop-filter:blur(3px)}
.side-nav a{color:#889c75;border-radius:11px;padding:11px 13px;font-size:12px}.side-nav a:hover{background:#f2f6eb;color:#59774a}.side-nav a.active{background:#eaf2de;border:0;color:#567b41}.side-nav a.active:after{background:#92b376}.nav-group-label{color:#adba9b;letter-spacing:1.3px;font-size:9px;padding:22px 13px 8px}.sidebar-note{background:#f5f8ed;border:0;color:#99aa86;font-size:11px}.sidebar-note strong{color:#7f976a}.menu-dismiss{position:absolute;right:15px;top:17px;width:28px;height:28px;color:#8fa07c;background:#f1f5e8;border:0;border-radius:9px;display:grid;place-items:center;font-size:12px}
.auth-layout{background:#fff;border:1px solid #e3e9d9;border-radius:26px;box-shadow:0 12px 60px #3d592014;max-width:1060px;margin:30px auto}.auth-main{background:#fff}.auth-inner h2{color:#44623a;font-size:34px}.auth-inner>p{color:#9aa98c;font-size:13px}.auth-back,.auth-form-footer{color:#8c9e7d}.auth-tabs{background:#f1f5e8;border:1px solid #e8eedc;border-radius:12px}.auth-tabs a{color:#97a985;font:500 12px var(--font);border-radius:9px}.auth-tabs a.active{color:#567943;background:#fff;box-shadow:0 2px 6px #395c3010}.auth-story{background:#34573b}.auth-story:before{background:linear-gradient(180deg,#29452dd9,#29452b66 45%,#29452bfa),url('/art/hero-farm.jpg') center/cover}.auth-story-content h1{font-weight:500;color:#fbf5d9}.auth-footer{color:#b1bba4}
#portal-toast{bottom:28px;background:#315d3d;color:#f5f9e8;border:1px solid #5e8054;border-radius:14px;font-size:12px;box-shadow:0 8px 25px #30502b20}
@media(min-width:1400px){.app-shell{max-width:1220px}}
@media(max-width:1000px){.app-shell{padding:0 24px}.topbar-brand strong{font-size:22px}.topbar-right{gap:12px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.animal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wallet-summary{gap:13px}.money-hero{padding:30px}.money-hero h1{font-size:29px}.pasture-welcome{padding:30px;min-height:250px}.pasture-welcome h1{font-size:35px}.pasture-welcome>div:first-child{max-width:64%}.auth-layout{margin:24px}.welcome-scene{left:35%}}
@media(max-width:720px){.app-shell{padding:0 18px;margin-top:0}.topbar{min-height:79px;padding:14px 0;gap:9px}.topbar-left{width:auto}.topbar-brand strong{font-size:20px}.brand-mark{width:39px;height:39px;font-size:23px;border-radius:13px}.topbar-right{width:auto;gap:10px}.topbar-right .balance-mini,.topbar-right .sound-switch,.topbar-right .user-mini{display:none}.menu-toggle{min-height:35px;background:transparent;border:0;font-size:11px}.portal-level{font-size:8px;gap:4px}.portal-level-meter{width:25px;height:3px}.portal-quicknav{display:none}.page-main{padding:23px 0 30px;min-height:70vh}.page-heading h1{font-size:29px}.page-heading p{font-size:12px;line-height:1.65}.page-heading{gap:14px;margin-bottom:21px}.page-heading .heading-actions .btn{min-height:34px;font-size:10px;padding:8px 12px}.page-heading .eyebrow{font-size:8px}.panel{padding:21px;border-radius:19px}.panel h2{font-size:22px}.panel-head{margin-bottom:18px}.panel-head .pill{font-size:8px;padding:4px 7px}.btn{font-size:12px;min-height:43px;padding:11px 17px}.portal-dock{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;transform:none;width:100%;max-width:100%;padding:10px 14px calc(11px + env(safe-area-inset-bottom));gap:4px;border:0;border-top:1px solid #e3e9d7;border-radius:0;background:#fdfef9ed;backdrop-filter:blur(18px);box-shadow:0 -5px 20px #3f59230a;min-height:72px;z-index:50}.portal-dock a,.portal-dock button{min-height:47px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:6px 3px;background:none;border:0;box-shadow:none;color:#a0ad8d;font:500 9px var(--font);border-radius:12px}.portal-dock svg{width:20px;height:20px}.portal-dock a.active{background:#eaf2dd;color:#618746;border:0;box-shadow:none}.portal-footer{padding-bottom:102px;font-size:8px;gap:8px}.guide-disclosure{margin-top:26px;font-size:10px}.guide-disclosure-content{flex-direction:column;align-items:flex-start;gap:10px}#portal-toast{bottom:89px;font-size:11px}.money-hero{padding:26px;display:block;border-radius:23px}.money-hero h1{font-size:28px;max-width:245px}.money-hero p{max-width:230px;font-size:11px}.money-label{margin-top:24px;font-size:10px}.money-value{font-size:45px}.money-actions{display:grid;grid-template-columns:1fr 1fr;min-width:0;gap:10px;margin-top:23px}.money-shop-link{grid-column:1/-1;font-size:10px;padding:2px}.money-actions .btn{min-height:42px;font-size:12px}.money-watermark{right:-5px;bottom:76px;font-size:180px;opacity:.1}.section-tabs{width:100%;margin:20px 0;gap:4px;padding:4px}.section-tabs button{flex:1;font-size:11px;padding:9px 7px;min-height:38px}.wallet-summary{grid-template-columns:1fr;gap:12px;margin-bottom:20px}.wallet-summary>div{padding:16px;flex-wrap:nowrap;gap:10px}.wallet-summary .text-link{margin:0 0 0 auto;font-size:9px;white-space:nowrap}.wallet-summary strong{font-size:11px}.wallet-summary p{font-size:9px;max-width:220px}.summary-icon{width:34px;height:34px;font-size:20px;border-radius:11px}.simple-empty{padding:26px 5px}.simple-empty h3{font-size:21px}.simple-empty p{font-size:11px}.payment-options{gap:10px;margin-top:18px}.payment-options>button{padding:13px 11px;gap:9px;min-height:76px}.payment-options strong{font-size:12px}.payment-options small{font-size:8px}.payment-symbol{width:31px;height:31px;font-size:21px;border-radius:10px}.choice-check{font-size:13px}.deposit-form{padding-top:20px;margin-top:21px}.deposit-form .form-grid{grid-template-columns:1fr}.withdraw-summary{padding:19px 16px;grid-template-columns:1.2fr 1fr .7fr}.withdraw-summary>div{padding:0 12px}.withdraw-summary span{font-size:8px;line-height:1.5}.withdraw-summary strong{font-size:23px}.quiet-note{font-size:10px}.movement-copy strong{font-size:11px}.movement-copy small{font-size:9px}.list-row>b{font-size:12px}.withdrawal-detail{font-size:10px}.form-grid{grid-template-columns:1fr}.field>span{font-size:10px}.check-field{font-size:10px}.pasture-welcome{min-height:235px;padding:25px;border-radius:22px}.pasture-welcome h1{font-size:33px;max-width:240px}.pasture-welcome h1 span{font-size:23px}.pasture-welcome>div:first-child{max-width:76%}.pasture-welcome p{font-size:11px;max-width:190px;margin:9px 0 18px}.pasture-welcome .eyebrow{font-size:7px}.pasture-welcome .btn{min-height:36px;font-size:10px;padding:9px 12px}.pasture-welcome .btn-light{display:none}.welcome-scene{left:25%;opacity:.65}.welcome-stamp{font-size:6px;bottom:9px;right:13px;padding:3px 6px}.pasture-balance-grid{gap:12px}.balance-focus,.collect-focus{padding:17px;min-height:0;border-radius:16px}.focus-label{font-size:9px;letter-spacing:0}.focus-number,.collect-focus .focus-number{font-size:30px;margin:13px 0 5px}.focus-hint{font-size:8px;line-height:1.65}.balance-focus .btn{font-size:10px;margin-top:15px}.focus-bottom{display:block;margin-top:11px}.focus-bottom .focus-hint{display:none}.focus-bottom .btn{width:100%;font-size:10px;min-height:34px;padding:8px 10px}.live-dot{font-size:7px;padding:3px 5px}.live-dot:before{width:4px;height:4px}.pasture-stats{gap:11px;margin-top:13px}.pasture-stats .stat{min-height:99px;padding:14px}.pasture-stats .stat strong{font-size:24px;margin:9px 0 4px}.pasture-stats .stat-label{font-size:9px}.pasture-stats .stat small{font-size:8px}.stat-icon,.stat:nth-child(n) .stat-icon{width:24px;height:24px;right:10px;top:12px}.stat-icon svg{width:15px;height:15px}.rex-companion{padding:13px;gap:11px;margin:17px 0 24px}.rex-companion>img{width:41px;height:41px;border-radius:12px}.rex-companion h2{font-size:17px}.rex-companion p{font-size:9px}.rex-companion .btn{font-size:9px;padding:8px 10px;min-height:33px}.herd-heading{margin-bottom:17px;gap:12px}.herd-heading h2{font-size:25px}.herd-heading .btn{font-size:10px;padding:9px 11px;min-height:35px}.animal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.animal-content{padding:14px;gap:11px}.animal-content h3{font-size:20px}.animal-specs b{font-size:17px}.happy-art{aspect-ratio:1.2}.animal-harvest{font-size:13px;padding:6px 9px}.animal-content .btn{font-size:10px;min-height:35px;padding:8px}.animal-content .pet-pill{font-size:8px;padding:5px}.animal-cycle-note{font-size:9px}.animal-mood{font-size:9px!important}.animal-content>p{font-size:10px}.animal-name-row{flex-wrap:wrap;gap:7px}.shop-cycle-summary{font-size:10px;padding:9px}.animal-description{min-height:0}.sidebar{width:min(310px,90vw);bottom:0;max-height:100dvh;height:100dvh;border-radius:20px 0 0 20px}.auth-layout{margin:15px}.auth-story{min-height:200px}.auth-story-content h1{font-size:29px}.auth-main{padding:27px 22px}.auth-inner h2{font-size:30px}.grid-equal{grid-template-columns:1fr}}
@media(max-width:400px){.app-shell{padding:0 13px}.topbar-brand strong{font-size:19px}.pasture-welcome h1{font-size:29px}.pasture-welcome{padding:22px}.wallet-summary p{max-width:155px}.wallet-summary .text-link{font-size:8px}.money-hero{padding:23px}.money-hero h1{font-size:26px}.animal-grid{grid-template-columns:1fr}.animal-art,.happy-art{aspect-ratio:1.65}.animal-content h3{font-size:24px}.animal-content .btn{font-size:12px;min-height:41px}.animal-harvest{font-size:17px}.animal-specs b{font-size:20px}.animal-name-row{flex-wrap:nowrap}.animal-content .pet-pill{font-size:10px}.animal-mood{font-size:11px!important}.animal-cycle-note{font-size:11px}.animal-content>p{font-size:12px}}
.animal-buy-options{border-top:1px solid var(--line);padding-top:10px;color:#839371}.animal-buy-options summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;font-size:11px;padding:4px 0}.animal-buy-options summary::-webkit-details-marker{display:none}.animal-buy-options[open] summary{margin-bottom:12px}.animal-buy-options .btn{margin-top:8px}.invite-hero{padding:29px;background:#eff4e4;border:1px solid #dfe8d1;border-radius:22px}.invite-copy{display:flex;align-items:center;gap:18px;margin-bottom:24px}.invite-flower{display:grid;place-items:center;width:67px;height:67px;flex-shrink:0;background:#fff8df;border-radius:22px;font-size:37px}.invite-copy h2{font-size:26px;font-weight:500;color:#4d6c3c;max-width:550px;line-height:1.3}.invite-copy p{font-size:12px;color:#7e916a;margin-top:6px}.invite-hero .invite-link{max-width:740px;margin:8px 0 15px}.invite-hero input{background:#fbfdf6}.commission-total{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin:15px 0 22px}.commission-total>span:first-child{color:#849474;font-size:12px}.commission-total strong{font:500 35px var(--display);color:#5d8046}.commission-history{border-top:1px solid var(--line);padding-top:16px;color:#8ba275;font-size:12px}.commission-history summary{cursor:pointer}
/* Secondary copy remains readable on a bright screen. */
.help,.muted,.panel p.help{color:#75816b}.simple-empty p{color:#829174}.page-heading p{color:#74816a}.movement-copy small{color:#88967a}.wallet-summary p{color:#7e8e6c}.money-hero p,.money-label{color:#c1d3b5}.field>span{color:#728164}
@media(max-width:720px){.invite-hero{padding:21px}.invite-copy{gap:13px;align-items:flex-start;margin-bottom:22px}.invite-flower{width:45px;height:45px;font-size:26px;border-radius:15px}.invite-copy h2{font-size:23px}.invite-copy p{font-size:10px}.invite-link{flex-direction:column}.invite-hero .invite-link .btn{width:100%}.commission-total{gap:12px}.commission-total strong{font-size:31px}.commission-total>span:first-child{font-size:10px}.animal-buy-options summary{font-size:10px}}
@media(prefers-reduced-motion:reduce){.btn:hover,.happy-animal:hover{transform:none;translate:none}}
