/* Personal estates and long capital titles. No inline styles: strict CSP. */
#building .capital-hub-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;height:auto}
#building .capital-hub-heading>div:first-child{min-width:0}
#building .capital-hub-heading h2,#building .capital-hub-heading .muted{max-width:100%}
#building .capital-hub-heading h2,#building .capital-hub-hero h3{white-space:normal;overflow-wrap:anywhere;word-break:normal;hyphens:auto;line-height:1.08;text-wrap:balance}
#building .capital-hub-heading .page-heading-actions{position:static;flex:none;align-self:start}
#building .capital-hub-hero__copy{min-width:0;max-width:100%}
#building .capital-hub-hero h3{font-size:clamp(1.8rem,7.5vw,3rem)}
#sheetTitle{overflow-wrap:anywhere;hyphens:auto}
.estate-entry{display:grid;grid-template-columns:48px minmax(0,1fr) 18px;align-items:center;gap:13px;width:100%;margin:16px 0;padding:20px 17px;border:1px solid #8a693b;border-radius:18px;color:#ecd6aa;text-align:left;background:radial-gradient(ellipse at 88% 0,#29413777,transparent 65%),linear-gradient(120deg,#21170e,#111510);box-shadow:inset 0 1px #eacd8922}
.estate-entry svg{fill:none;stroke:currentColor;stroke-width:1.5;width:28px;height:28px}
.estate-entry__icon{display:grid;place-items:center;width:48px;height:52px;border:1px solid #b9925655;border-radius:12px;color:#e5bc71}
.estate-entry>span:nth-child(2){display:grid;gap:5px;min-width:0}
.estate-entry small{font-size:.52rem;letter-spacing:.12em;color:#c9a873}
.estate-entry b{font:700 1.3rem var(--serif);overflow-wrap:anywhere}
.estate-entry>span>span{font-size:.65rem;line-height:1.5;color:#beb9a4}
.estate-entry .estate-entry__arrow{width:18px}
.estate-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:12px 0 20px}
.estate-heading h2{font:700 clamp(1.8rem,7vw,2.7rem)/1.08 var(--serif);color:var(--cream);margin:7px 0;overflow-wrap:anywhere;hyphens:auto}
#estate,#estateContent,.estate-sheet{min-width:0}
#estateContent svg,.estate-sheet svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}
.estate-hero{position:relative;isolation:isolate;overflow:hidden;padding:27px 20px 19px;border:1px solid #94704488;border-radius:22px;background:radial-gradient(ellipse at 80% 0,#41614a88,transparent 65%),linear-gradient(140deg,#132723,#18291f 50%,#152119);margin-bottom:15px}
.estate-hero:before{content:'';position:absolute;inset:10% -12% -25% 30%;z-index:-1;opacity:.45;background:repeating-linear-gradient(26deg,transparent 0 34px,#b7aa6330 35px 37px,transparent 38px 63px);transform:rotate(-8deg);border-radius:50%}
.estate-hero .eyebrow{color:#e7c37e;font-size:.6rem}
.estate-hero h3{margin:8px 0;color:#f3e4c0;font:700 1.65rem var(--serif)}
.estate-hero p{font-size:.74rem;line-height:1.55;color:#c1c9b8;margin:8px 0}
.estate-hero-meta{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}
.estate-hero-meta span{border:1px solid #beaf7a44;border-radius:20px;padding:6px 10px;color:#e1d4b2;background:#0a171477;font-size:.62rem}
.estate-stock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:12px 0}
.estate-resource{min-width:0;border:1px solid #b48c4833;background:linear-gradient(155deg,#23180f,#0c0b08);border-radius:12px;padding:10px 7px;display:grid;gap:4px}
.estate-resource small{font-size:.58rem;color:#c0ad89;overflow-wrap:anywhere}
.estate-resource b{font-size:.89rem;color:#f2d495}
.estate-resource span{font-size:.52rem;color:#94b69b;line-height:1.4}
.estate-resource.is-full{border-color:#d2a04f99}
.estate-resource--coins{background:linear-gradient(150deg,#54401b66,#141008)}
.estate-collect{display:flex;width:100%;justify-content:center;align-items:center;gap:9px;min-height:48px}
.estate-note{font-size:.64rem;color:#a9a58f;line-height:1.65;margin:9px 0 18px;overflow-wrap:anywhere}
.estate-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:19px 0 14px}
.estate-tabs button{padding:13px 4px;border:1px solid #a17c483d;border-radius:10px;background:#100b07;color:#aa9b83;font-size:.65rem;font-weight:750;min-height:44px}
.estate-tabs button[aria-pressed=true]{color:#f2d69b;background:linear-gradient(135deg,#573618,#26170c);border-color:#b88c50}
.estate-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px;border:1px solid #8e795444;border-radius:20px;background:radial-gradient(ellipse at 50% 20%,#6f764322,transparent 70%),repeating-linear-gradient(90deg,transparent 0 47%,#b39c6322 48% 51%,transparent 52% 100%),#121c13}
.estate-lot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0;min-height:162px;padding:15px 8px 11px;border:1px solid #84714c88;border-radius:15px;background:radial-gradient(ellipse at 50% 65%,#92713b33,transparent 65%),linear-gradient(160deg,#243127,#171d17);color:#e8d9b6;text-align:center;box-shadow:0 8px 12px #0004,inset 0 1px #c9b27822}
.estate-lot b{font:700 .93rem var(--serif);white-space:normal;overflow-wrap:anywhere;hyphens:auto;margin:8px 0 5px;line-height:1.15}
.estate-lot small{font-size:.56rem;color:#b7b99e;line-height:1.4}
.estate-lot__level{position:absolute;top:7px;right:7px;font-size:.51rem;padding:3px 6px;border-radius:6px;border:1px solid #b2995b66;background:#0f1811;color:#dbc58c}
.estate-miniature{position:relative;width:67px;height:62px;margin:13px 0 0;filter:drop-shadow(0 7px 5px #0008)}
.estate-miniature:before{content:'';position:absolute;inset:14px 9px 1px;background:linear-gradient(90deg,#5e4830 65%,#34291e 66%);border:1px solid #b1985a;border-radius:3px}
.estate-miniature:after{content:'';position:absolute;left:1px;top:0;width:65px;height:30px;background:linear-gradient(145deg,#956040,#5c3525);clip-path:polygon(50% 0,100% 80%,92% 100%,8% 100%,0 80%)}
.estate-miniature svg{position:absolute;z-index:1;bottom:8px;left:25px;width:18px!important;height:18px!important;color:#ffe2a0;filter:drop-shadow(0 0 7px #d9ac49)}
.estate-lot[data-tier="2"] .estate-miniature:before{background:linear-gradient(90deg,#8a7c58 65%,#564c35 66%);border-color:#d9c88e}
.estate-lot[data-tier="3"] .estate-miniature:after{background:linear-gradient(145deg,#b49756,#4c695b)}
.estate-lot[data-key="manor"] .estate-miniature{transform:scale(1.13)}
.estate-lot[data-key="academy"] .estate-miniature:after{background:linear-gradient(145deg,#647a7b,#283f4d)}
.estate-lot[data-key="farm"] .estate-miniature:after{background:linear-gradient(145deg,#a57c34,#786230)}
.estate-lot.is-empty{border-style:dashed;background:#17221bb3;box-shadow:none}
.estate-lot.is-empty .estate-miniature{opacity:.3;filter:grayscale(1)}
.estate-lot.is-building{border-color:#deb369;box-shadow:0 0 0 1px #dab45f22,0 5px 20px #e9b05618}
.estate-lot.is-building small{color:#f1ca83}
.estate-lot.is-available:focus-visible,.estate-lot:focus-visible,.estate-tabs button:focus-visible{outline:2px solid #f4d285;outline-offset:3px}
.estate-section{padding:18px 15px;margin-bottom:14px;border:1px solid #a385513d;border-radius:17px;background:linear-gradient(145deg,#21170d88,#0c0b08)}
.estate-section h3{font:700 1.25rem var(--serif);color:#eddbb6;margin:0 0 9px}
.estate-section p{font-size:.7rem;line-height:1.6;color:#bcb49e;margin:6px 0 13px}
.estate-card-list{display:grid;gap:10px}
.estate-card{padding:14px 12px;min-width:0;border:1px solid #9d7e4640;border-radius:12px;background:#0b0d0988}
.estate-card h4{font:700 1rem var(--serif);color:#e3d3ad;margin:0 0 6px;overflow-wrap:anywhere;hyphens:auto}
.estate-card p{font-size:.68rem;margin:7px 0;color:#bcb39b;line-height:1.6}
.estate-card .primary,.estate-card .secondary,.estate-sheet .primary{min-height:44px;width:100%;font-size:.73rem;margin-top:8px;padding:11px}
.estate-card.is-claimed{opacity:.65}
.estate-cost{display:flex;gap:5px 9px;flex-wrap:wrap;margin:10px 0;font-size:.64rem;color:#d1be92;line-height:1.6}
.estate-cost .is-short{color:#edaa96}
.estate-reward{color:#a8cba7!important}
.estate-progress{width:100%;height:7px;border:0;accent-color:#bfa369;background:#333326;border-radius:8px;margin:8px 0}
.estate-progress::-webkit-progress-bar{border-radius:8px;background:#333326}
.estate-progress::-webkit-progress-value{background:linear-gradient(90deg,#8a713f,#e7c582);border-radius:8px}
.estate-job-top{display:flex;justify-content:space-between;gap:10px;align-items:center;line-height:1.5}
.estate-job-top b{font-size:.7rem;color:#e2cba1}
.estate-job-top span{font-size:.62rem;color:#b8c8a2;flex-shrink:0}
.estate-jobs{margin:13px 0}
.estate-jobs .estate-card{padding:10px 12px}
.estate-jobs .estate-progress{margin-bottom:0}
.estate-work-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.estate-work-choices button{min-height:50px;font-size:.64rem;padding:9px 4px}
.estate-sheet{padding-bottom:14px}
.estate-sheet p{font-size:.8rem;line-height:1.6;color:#bfb7a4}
.estate-sheet .estate-miniature{margin:10px auto 20px;transform:scale(1.15)}
.estate-sheet .estate-cost{font-size:.75rem}
.estate-status{min-height:22px;font-size:.72rem;color:#e5b68c;line-height:1.6;margin:10px 0}
.estate-next{display:block;width:100%;padding:14px;text-align:left;border:1px solid #c6a66966;border-radius:13px;background:#31230e66;color:#e4cea1;line-height:1.6;font-size:.7rem;margin-bottom:14px}
.estate-next b{display:block;font:700 1rem var(--serif);margin:3px 0 5px}
@media(max-width:520px){
  #building .capital-hub-heading{grid-template-columns:minmax(0,1fr);gap:8px;padding-top:10px;min-height:0}
  #building .capital-hub-heading>div:first-child{grid-row:2;grid-column:1}
  #building .capital-hub-heading .page-heading-actions{grid-row:1;grid-column:1;justify-self:end;gap:8px}
  #building .capital-hub-heading h2{max-width:100%;font-size:clamp(1.8rem,7.6vw,2.55rem)}
  #building .capital-hub-heading .muted{max-width:100%}
  #building .capital-hub-hero h3{font-size:clamp(1.85rem,7.8vw,2.7rem)}
  #building .capital-hub-hero p{max-width:100%;overflow-wrap:anywhere}
}
@media(max-width:360px){.estate-map{gap:8px;padding:10px}.estate-lot{min-height:152px;padding-inline:5px}.estate-lot b{font-size:.85rem}.estate-stock{grid-template-columns:repeat(3,minmax(0,1fr))}.estate-heading .eyebrow{font-size:.51rem;letter-spacing:.1em}}
@media(min-width:760px){.estate-map{grid-template-columns:repeat(5,minmax(0,1fr))}.estate-stock{grid-template-columns:repeat(7,minmax(0,1fr))}.estate-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
