/* Ver 4: common information, companions, work surface and contextual actions. */
.v4{height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) 68px;overflow:hidden}
.v4 *{box-sizing:border-box}
.v4 .common-header{z-index:20;background:var(--paper,#faf7ef);border-bottom:1px solid #c6d4ca}
.v4 .topbar{position:static;height:auto;min-height:66px;gap:20px;padding:9px 20px;display:flex;flex-wrap:wrap}
.v4 .brand{min-width:160px}.v4 .brand small{display:block}.v4 .day-display{margin:0}.v4 .day-number{font-size:28px}
.v4 .header-actions{margin-left:auto}.v4 .header-actions [data-action=sound],.v4 .header-actions [data-action=save],.v4 .header-actions [data-action=guide]{display:none}
.v4 .weather-summary{position:relative;min-width:170px}.v4 .weather-effects{position:absolute;top:100%;width:min(390px,80vw);right:0;z-index:60;background:#fffdf7;padding:16px;box-shadow:0 8px 25px #123c4333}
.v4 .resourcebar{position:static;display:flex;flex-wrap:wrap;gap:5px;padding:4px 20px 8px;height:auto;min-height:0;justify-content:flex-start}
.v4 .resource{display:flex;gap:6px;min-height:32px;padding:4px 10px;white-space:normal;font-size:12px;border:1px solid #c9d7ce;border-radius:8px;background:#fffdf7;color:#234a46}
.v4 .resource strong{font-size:15px}.v4 .resource span{display:inline}
.v4 .workspace{display:grid;grid-template-columns:250px minmax(0,1fr) 310px;gap:0;min-height:0;height:auto;overflow:hidden}
.v4 #main-content{min-width:0;min-height:0;overflow:auto;padding:20px 22px 30px;scrollbar-gutter:stable;position:static;height:auto}
.v4 .content-grid{display:block;max-width:none;min-width:0;margin:0}
.v4 .companion-sidebar{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:14px 10px 10px;background:#f4f3e9;border-right:1px solid #cbd8ce}
.v4 .companion-sidebar h2{font-size:16px;display:flex;justify-content:space-between;margin:0 4px 10px}.v4 .companion-sidebar h2 small{font-size:12px;font-weight:500}
.v4 .companion-list{overflow:auto;min-height:0;display:flex;flex-direction:column;gap:10px;scrollbar-gutter:stable}
.v4 .companion-card{border:1px solid #c5d4c7;background:#fffcf4;border-radius:12px;flex:none;overflow:hidden}.v4 .companion-card.selected{border:2px solid #32756d}
.v4 .order-nui{display:grid;grid-template-columns:44px minmax(0,1fr);width:100%;height:auto;max-width:none;min-height:0;border:0;border-radius:0;background:transparent;color:inherit;padding:10px;gap:4px 7px;text-align:left;white-space:normal;touch-action:pan-y}
.v4 .order-nui>.nui{width:44px;height:49px;grid-row:1;object-fit:contain}
.v4 .order-nui>span{min-width:0;display:block}.v4 .order-nui>span:first-of-type{align-self:center}.v4 .order-nui b{font-size:14px;display:block;white-space:normal;overflow:visible;text-overflow:clip}
.v4 .activity-badge{font-size:11px;display:inline-block;margin-top:4px;background:#e6eee3;border-radius:5px;padding:1px 6px}
.v4 .order-nui .order-stats{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:3px 8px;line-height:1.6}.v4 .order-stats strong{font-size:14px;color:#193f3c}
.v4 .order-nui .hunger-line,.v4 .order-nui .location-line,.v4 .order-nui .order-work{grid-column:1/-1;display:block;font-size:12px;line-height:1.6;overflow:visible;white-space:normal;text-overflow:clip}
.v4 .order-nui .order-work{font-weight:700;color:#275d55;margin-top:3px}
.v4 .companion-details{width:100%;font-size:11px;border:0;border-top:1px solid #dfe4d8;border-radius:0;min-height:32px;background:#f1f4ea;color:#345b52}
.v4 .advance-panel{margin-top:auto;padding-top:12px;border-top:1px solid #cad6c7;flex:none}.v4 .advance-panel>b{font-size:11px;display:block;margin-bottom:7px}.v4 .advance-panel small{font-size:10px;display:block;margin-top:6px}
.v4 .advance{white-space:normal;font-size:12px;min-height:48px;height:auto;padding:10px;line-height:1.6}
.v4 .bottom-nav{z-index:30;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;background:#faf8ee;border-top:1px solid #c8d5ca;padding:5px 15px max(5px,env(safe-area-inset-bottom));height:68px}
.v4 .bottom-nav button{position:relative;border:0;background:transparent;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:44px;color:#335952}
.v4 .bottom-nav button.active{background:#e4eee2;box-shadow:inset 0 3px #347369}.v4 .bottom-nav b{font-size:14px}.v4 .notification-dot{font-size:8px;color:#9c6828;position:absolute;right:12%;top:9px}
.v4 .inspector{position:static;width:auto;height:auto;min-height:0;max-height:none;overflow:auto;border:0;border-left:1px solid #cbd8ce;border-radius:0;background:#fffcf4;padding:20px 16px 28px;box-shadow:none;margin:0;scrollbar-gutter:stable}
.v4 .inspector h2{font-size:22px;line-height:1.5;margin:7px 0 10px}.v4 .inspector h3{font-size:14px;margin:12px 0 8px}.v4 .inspector p{font-size:12px;line-height:1.85;margin:10px 0}.v4 .inspector small{font-size:11px;line-height:1.7}
.v4 .inspector .action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.v4 .action-tile{min-height:43px;font-size:12px;padding:6px;white-space:normal}.v4 .action-tile.selected,.v4 .food-item.selected{outline:2px solid #387a6b;background:#eaf2e6}
.v4 .destination-stock{border-block:1px solid #d8e0d2;padding:6px 0 10px}.v4 .destination-stock span{display:inline-block;font-size:12px;line-height:1.8;margin-right:8px}.v4 .environment-note{background:#f0f3e6;padding:9px;border-radius:7px}
.v4 .plan-estimate{display:grid;gap:7px;padding:12px;background:#edf3e9;border:1px solid #d4dfcf;border-radius:9px;margin:12px 0;font-size:12px}.v4 .plan-estimate>span{display:flex;justify-content:space-between}.v4 .plan-estimate b{font-size:13px}
.v4 .draft-status{border-left:3px solid #a18547;padding:7px 9px;background:#f6f0d9}.v4 .disabled-reason{color:#7c4931;background:#fff2e3;border-radius:6px;padding:8px;font-size:12px;line-height:1.7;display:block}
.v4 button:disabled{opacity:.68;cursor:not-allowed}.v4 select{max-width:100%;font-size:13px;min-height:42px}.v4 .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.v4 .sheet-close,.v4 .sheet-toggle{display:none}
.v4 .section-heading{align-items:flex-start;gap:10px;margin-bottom:16px}.v4 .section-heading h1{font-size:26px}.v4 .section-heading p{font-size:13px;line-height:1.8}.v4 .eyebrow{font-size:10px}
.v4 .nui-memos{font-size:12px;background:#f7efd9;border:1px solid #e3d9b8;border-radius:9px;padding:10px 12px;margin-bottom:16px}.v4 .nui-memos>div{display:flex;flex-wrap:wrap;gap:3px 10px;align-items:center}.v4 .nui-memos button{font-size:12px;min-height:32px}
.v4 .map-frame{min-height:0;aspect-ratio:3/2;width:100%;overflow:visible}.v4 .map-frame .island-art{border-radius:14px}.v4 .map-nui-label{font-size:10px;white-space:nowrap;overflow:visible;max-width:none;transform:none;line-height:1.25;background:#fffdf4eF;min-width:64px;padding:3px;border-radius:4px}.v4 .map-nui-label small{display:block;color:#456f5b;font-size:9px;font-weight:700}.v4 .map-nui{z-index:6}.v4 .map-pin{z-index:4}.v4 .map-key,.v4 .weather-note{display:none}
.v4 .map-bottom{font-size:11px;line-height:1.8;margin-top:20px}.v4 .map-bottom [data-action=escape]{display:none}.v4 .mobile-locations{display:flex;flex-wrap:wrap;gap:5px;padding-top:15px;max-height:none;overflow:visible}.v4 .mobile-locations button{font-size:11px;min-height:32px;white-space:normal}.v4 .island-forecast{display:flex;flex-wrap:wrap;gap:6px}.v4 .island-forecast .forecast-label{display:none}.v4 .island-forecast details{font-size:11px}
.v4 .nui-suggestions{margin-top:16px}.v4 .nui-suggestions article{flex-wrap:wrap}
.v4 .camp-life-layout,.v4 .night-prep-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.v4 .camp-life-layout .camp-scene{min-height:220px}.v4 .camp-actions{max-width:none}.v4 .chore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v4 .chore-button{min-width:0;white-space:normal;height:auto}.v4 .evening-shortcuts{flex-wrap:wrap}
.v4 .build-grid,.v4 .craft-grid,.v4 .route-grid,.v4 .recipe-grid,.v4 .craft-equipment,.v4 .status-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px}.v4 .build-card,.v4 .craft-card,.v4 .white-panel{min-width:0}.v4 .costs,.v4 .cost{flex-wrap:wrap;white-space:normal}.v4 .cost{font-size:11px}.v4 .cost-count{white-space:normal}
.v4 .section-tabs{display:flex;flex-wrap:wrap;overflow:visible;gap:6px}.v4 .section-tabs button{flex:1;white-space:normal;min-width:80px;min-height:42px}
.v4 .food-grid,.v4 .more-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(185px,100%),1fr));gap:10px}.v4 .food-item,.v4 .more-grid button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:14px;gap:6px;min-height:95px;white-space:normal;color:#2c5149;background:#f9faef;border:1px solid #d2ddca;border-radius:9px}.v4 .food-item strong{font-size:13px}.v4 .food-item small{font-size:11px;line-height:1.6}.v4 .food-hub>.section-tabs{margin-bottom:18px}.v4 .food-hub .white-panel{margin-bottom:14px}.v4 .selected-recipient{font-size:13px}
.v4 .breakfast-crew{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px}.v4 .breakfast-crew article{min-width:0}.v4 .table-scroll{max-width:100%;overflow:auto}.v4 .comfort-recipes{grid-template-columns:1fr}.v4 .inspector .actor-choice,.v4 .inspector .craft-maker{max-width:100%}
.v4 .event-stage{max-width:900px;margin:auto}.v4 .event-stage>p{font-size:15px;line-height:1.9}.v4 .event-stage h1{font-size:26px;line-height:1.6}.v4 .event-stage .event-animal{width:180px;height:180px;margin:20px auto}.v4 .event-choices,.v4 .night-options{display:grid;gap:10px}.v4 .night-option,.v4 .choice-button{width:100%;display:flex;flex-direction:column;gap:6px;align-items:flex-start;white-space:normal;padding:15px;margin-bottom:8px;text-align:left}.v4.event-active{grid-template-rows:auto minmax(0,1fr)}.v4 .event-stage .report-list{max-height:none}.v4 .ready-list li{margin:12px 0;line-height:1.8}
.v4 .full-section{min-width:0}.v4 [hidden]{display:none!important}
.v4.time-night #main-content{background:#e9ede4;color:#234a42}
.v4 .event-stage{background:#fffcf4;color:#234a42;padding:20px;border-radius:12px}
.v4 .companion-card button:disabled{opacity:1}
.v4 .camp-actions{order:-1}
.v4 .map-viewport{max-width:100%;overflow:auto;border-radius:14px;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
.v4 .map-viewport .map-frame{min-width:600px;min-height:400px;aspect-ratio:3/2;overflow:hidden}
.v4 .map-scroll-hint{font-size:11px;line-height:1.6;margin:8px 0 0}
.v4 .action-tile.selected{color:#234b42}
.v4 .order-nui{padding:7px;gap:2px 6px;grid-template-columns:30px minmax(0,1fr);line-height:1.3}
.v4 .order-nui>.nui{width:30px!important;min-width:30px;height:31px!important}
.v4 .order-nui>span:first-of-type{display:flex;align-items:center;justify-content:space-between;gap:4px}
.v4 .order-nui b{font-size:13px}.v4 .activity-badge{margin:0;font-size:9px;white-space:nowrap}
.v4 .order-nui .order-stats{line-height:1.35;gap:1px 6px;font-size:11px;margin:0}.v4 .order-stats>span{display:flex;justify-content:space-between}
.v4 .order-nui .hunger-line,.v4 .order-nui .location-line,.v4 .order-nui .order-work{font-size:11px;line-height:1.4}
.v4 .companion-details{min-height:25px;font-size:10px}
.v4 .companion-list{gap:7px}
@media(min-width:901px) and (max-height:850px){
 .v4 .topbar{min-height:54px;padding-block:6px}.v4 .resourcebar{padding-bottom:5px}.v4 .companion-sidebar{padding-top:8px}.v4 .companion-sidebar h2{margin-bottom:6px}.v4 .advance-panel{padding-top:7px}
 .v4.has-guest .companion-list{gap:4px}.v4.has-guest .order-nui{padding:4px 6px;gap:1px 5px}.v4.has-guest .order-nui>.nui{width:24px;height:24px}.v4.has-guest .order-nui{grid-template-columns:24px 1fr}.v4.has-guest .order-nui .order-stats{font-size:10px}.v4.has-guest .order-nui .hunger-line,.v4.has-guest .order-nui .location-line,.v4.has-guest .order-nui .order-work{font-size:10px;line-height:1.25}.v4.has-guest .companion-details{min-height:21px}
 .v4.has-guest .workspace{grid-template-columns:340px minmax(0,1fr) 285px}.v4.has-guest .companion-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:7px}.v4.has-guest .order-nui>span:first-of-type{display:block}.v4.has-guest .order-nui b{font-size:12px}.v4.has-guest .order-nui>.nui{width:24px!important;min-width:24px;height:28px!important}.v4.has-guest .order-nui .order-stats{font-size:10px}.v4.has-guest .companion-details{font-size:10px;min-height:32px}
}
@media(min-width:1600px){.v4 .workspace{grid-template-columns:270px minmax(0,1fr) 350px}.v4 #main-content{padding:24px 30px}.v4 .map-nui-label{font-size:11px}}
@media(max-width:1150px) and (min-width:901px){.v4 .workspace{grid-template-columns:220px minmax(0,1fr) 275px}.v4 #main-content{padding:15px 12px}.v4 .topbar{gap:12px}.v4 .section-heading h1{font-size:22px}.v4 .map-pin .pin-name{font-size:9px;padding:3px}.v4 .inspector{padding:14px 12px}.v4 .order-nui{padding:8px}}
@media(max-width:900px){
 .v4 .topbar .brand{flex:1 1 auto;min-width:125px;white-space:normal}.v4 .topbar .brand small b{display:inline;font-size:9px}.v4 .topbar .day-display{order:0;flex:0 0 auto;border:0;padding:0;gap:4px;margin:0}.v4 .topbar .day-display>span:last-child{display:block;font-size:10px;line-height:1.4}.v4 .topbar .day-display b{display:block;margin:0}.v4 .topbar .weather-summary{flex:0 0 67px}.v4 .topbar .weather-summary .weather-effects{left:auto;right:0}.v4 .topbar .weather-summary summary small{display:none}.v4 .companion-card button:disabled{opacity:1}
 .v4{grid-template-rows:auto minmax(0,1fr) 62px}.v4 .common-header{position:relative}.v4 .topbar{padding:8px 12px;gap:7px;min-height:0;flex-wrap:nowrap}.v4 .brand{min-width:0;font-size:13px}.v4 .brand-mark{display:none}.v4 .brand small{font-size:9px}.v4 .day-number{font-size:22px}.v4 .day-display{margin-left:auto;font-size:11px}.v4 .day-display small{display:none}.v4 .weather-summary{min-width:0;font-size:11px}.v4 .weather-summary summary{gap:3px}.v4 .weather-summary summary small,.v4 .header-actions{display:none}.v4 .weather-symbol{font-size:19px}.v4 .weather-effects{width:290px}
 .v4 .resourcebar{padding:4px 8px 7px;gap:4px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.v4 .resource{padding:4px;display:block;text-align:center;font-size:10px;min-height:36px;line-height:1.4}.v4 .resource strong{font-size:12px}
 .v4 .workspace{display:flex;flex-direction:column;overflow:hidden}.v4 .companion-sidebar{border:0;border-bottom:1px solid #c8d6ca;padding:8px;flex:none;display:grid;grid-template-columns:minmax(0,1fr);max-height:none}.v4 .companion-sidebar h2{display:none}.v4 .companion-list{display:flex;flex-direction:row;gap:8px;overflow-x:auto;overflow-y:hidden;scrollbar-gutter:auto;scroll-snap-type:x proximity;padding-bottom:3px}.v4 .companion-card{flex:0 0 208px;scroll-snap-align:start}.v4 .order-nui{grid-template-columns:30px minmax(0,1fr);padding:7px;gap:2px 5px;touch-action:pan-x}.v4 .order-nui>.nui{width:30px;height:33px}.v4 .order-nui b{font-size:12px}.v4 .activity-badge{font-size:9px;padding:0 4px;margin:0}.v4 .order-nui .order-stats{font-size:10px;gap:1px 4px}.v4 .order-stats strong{font-size:12px}.v4 .order-nui .hunger-line,.v4 .order-nui .location-line,.v4 .order-nui .order-work{font-size:10px;line-height:1.45}.v4 .companion-details{font-size:10px;min-height:26px}.v4 .advance-panel{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:7px;margin-top:2px}.v4 .advance-panel>b{font-size:10px;margin:0;max-width:42%}.v4 .advance-panel small{display:none}.v4 .advance-panel .advance{font-size:11px;padding:7px 10px;min-height:40px;max-width:230px;width:auto;flex:1}
 .v4 #main-content{flex:1;padding:14px 12px 65px;scrollbar-gutter:auto;overflow-x:hidden}.v4 .section-heading h1{font-size:22px}.v4 .section-heading p{font-size:12px}.v4 .section-heading .chip{font-size:10px}.v4 .bottom-nav{height:62px;padding:4px;gap:0}.v4 .bottom-nav button{flex-direction:column;gap:3px;min-height:48px;padding:5px 1px}.v4 .bottom-nav b{font-size:10px}.v4 .notification-dot{right:8%;top:6px}
 .v4 .inspector{display:none;position:fixed;left:0;right:0;bottom:62px;z-index:45;border:1px solid #c6d3c6;border-radius:18px 18px 0 0;max-height:72dvh;height:auto;padding:14px 18px 22px;box-shadow:0 -12px 40px #123c4338}.v4 .inspector.is-open{display:block}.v4 .sheet-close{display:block;margin-left:auto;position:sticky;top:0;z-index:2;border:1px solid #d2ddca;background:#fffdf6;border-radius:8px;padding:9px;min-height:38px;font-size:12px}.v4 .sheet-toggle{display:block;position:fixed;right:14px;bottom:76px;z-index:35;background:#285d53;color:white;padding:11px 15px;box-shadow:0 3px 12px #123c4322;border:0;border-radius:24px;font-size:12px}.v4.sheet-open .sheet-toggle{display:none}
 .v4 .map-frame{aspect-ratio:3/2;min-height:0}.v4 .map-pin .pin-name{font-size:9px;padding:2px 4px}.v4 .map-nui-label{font-size:9px;min-width:57px}.v4 .mobile-locations button{font-size:10px}.v4 .map-bottom{margin-top:12px}.v4 .map-bottom span{display:block}.v4 .island-forecast{font-size:10px}.v4 .forecast-label{display:none}.v4 .island-forecast>div{padding:5px 9px}.v4 .nui-memos{font-size:11px}.v4 .nui-memos button{font-size:11px}
 .v4 .map-viewport .map-pin .pin-name{font-size:11px;padding:3px 5px}.v4 .map-viewport .map-nui-label{font-size:10px;min-width:64px}
 .v4 .build-grid,.v4 .craft-grid,.v4 .recipe-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}.v4 .comfort-shortcuts{flex-wrap:wrap}.v4 .guest-camp-summary{flex-wrap:wrap}.v4 .status-tabs{flex-wrap:wrap}.v4 .food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v4 .food-item{padding:10px;min-width:0}.v4 .food-item strong{font-size:12px}
 .v4.event-active{grid-template-rows:auto minmax(0,1fr)}.v4.event-active .workspace{overflow-y:auto}.v4.event-active .companion-sidebar{flex:none}.v4.event-active #main-content{flex:none;overflow:visible;padding-bottom:8px}.v4.event-active .inspector{display:block;position:static;max-height:none;flex:none;border-radius:12px;margin:0 12px 20px;box-shadow:none}.v4.event-active .advance-panel{display:none}.v4 .event-stage h1{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.v4 *{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Ver 5.2: keep important companion information readable at narrow widths. */
.v4 .map-nui-label{font-size:12px}.v4 .map-nui-label small{font-size:11px}
.v4 select{font-size:14px}
@media(max-width:900px){
 .v4 .companion-card{flex-basis:224px}
 .v4 .order-nui b{font-size:14px}.v4 .activity-badge{font-size:11px}
 .v4 .order-nui .order-stats{font-size:12px}.v4 .order-stats strong{font-size:14px}
 .v4 .order-nui .hunger-line,.v4 .order-nui .location-line,.v4 .order-nui .order-work{font-size:12px;line-height:1.4}
 .v4 .companion-details{font-size:12px;min-height:34px}
 .v4 .advance-panel>b{font-size:12px}.v4 .advance-panel .advance{font-size:12px;min-height:42px}
}

.v4 .map-nui.provisional .map-nui-label{border:2px dashed #a65a13;background:#fff3cf;color:#633505}.v4 .map-nui.provisional .map-nui-label small{color:#633505;font-weight:700}.v4 .map-routes .draft-route{stroke-dasharray:1 1;stroke-width:.5}

.material-source{display:block;font-size:12px;line-height:1.5;white-space:normal;max-width:100%;overflow-wrap:anywhere}.material-hint{font-size:13px;line-height:1.6}.costs .cost{max-width:100%;flex-wrap:wrap;white-space:normal}.autosave-section{margin:20px 0;padding-bottom:14px;border-bottom:1px solid var(--line,#cad9cc)}.autosave-section .save-slot{gap:12px}.autosave-section small{display:block}
@media(max-width:600px){.autosave-section .save-slot{align-items:stretch;flex-direction:column}.autosave-section .save-slot button{width:100%}.cost-count{white-space:normal}}

/* Keep long facility explanations readable within the narrow inspector. */
.inspector .facility-detail{display:block}.inspector .facility-detail>.scene-sprite{width:100px;height:110px;margin:0 auto 12px}.inspector .facility-detail p{font-size:14px;line-height:1.7}.route-card{scroll-margin-top:16px}.route-card .soft-button{white-space:normal;overflow-wrap:anywhere}

.achievement-list{display:grid;gap:10px}.achievement-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line,#d0dcd3);border-radius:12px;text-align:left;overflow-wrap:anywhere}.achievement-card>span{font-size:26px;flex-shrink:0}.achievement-card>div{min-width:0}.achievement-card strong{display:block;font-size:16px}.achievement-card small{display:block;font-size:14px;margin-top:4px}.achievement-card.earned{background:#edf5e8;border-color:#769570;color:#243c29}.ending-achievements{margin:20px 0;padding:14px;border:2px solid #a38b43;border-radius:14px}.ending-achievements .achievement-card{margin:8px 0}.ending-achievements h4{margin:0 0 12px;font-size:18px}

.escape-craft{display:grid;gap:18px}.escape-craft-route{scroll-margin-top:20px}.escape-craft-route>.craft-grid{margin-top:16px}.escape-craft .craft-card{min-width:0;overflow-wrap:anywhere}.escape-craft .craft-card h3{font-size:18px}.escape-craft .craft-card p{font-size:14px;line-height:1.65}

/* Story text stays still and wraps at both desktop and mobile widths. */
.story-recollection{margin:12px 0;padding:12px;border:1px solid var(--line,#c4d5cc);border-radius:8px;min-width:0;overflow-wrap:anywhere}.story-recollection summary{cursor:pointer;font-size:1rem;line-height:1.7;min-height:36px}.story-recollection p,.story-afterword p{font-size:1rem;line-height:1.85;text-align:left}.story-line{padding:10px 0;border-bottom:1px solid var(--line,#c4d5cc)}.story-line strong{font-size:14px}.story-line p{margin:6px 0}.story-archive{margin-bottom:20px}.story-afterword{max-width:640px;margin:auto}.story-afterword .full{margin-top:16px}

.fan-notice{font-size:16px;line-height:1.85;overflow-wrap:anywhere}.fan-notice p{margin:0 0 1.2em}
