/* Gather & Train only. Crafting and the Skills overview retain their layouts. */
#gather-page{--gather-panel:#10232e;--gather-edge:#345568;--gather-muted:#a4beca}
.gather-heading{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(420px,1.1fr);gap:28px;align-items:center;margin:2px 0 24px}
.gather-eyebrow{display:block;color:#88aaa9;font-size:9px;letter-spacing:2px;font-weight:700;margin-bottom:8px}
.gather-heading h1{font:700 clamp(26px,2.25vw,36px)/1.12 Segoe UI,system-ui,sans-serif;letter-spacing:-.7px;color:#f0eee5}
.gather-heading>div>p{font-size:12px;margin-top:9px;color:#b7cbd0;line-height:1.6}
.gather-daily{display:flex;align-items:center;gap:16px;border:0;border-radius:6px;padding:17px 18px;background:#10222c;min-height:109px}
.daily-emblem{display:grid;place-items:center;width:43px;height:51px;flex-shrink:0;color:#ffc857;filter:drop-shadow(0 2px 5px #0006)}
.daily-content{flex:1;min-width:0}.daily-kicker{display:flex;justify-content:space-between;gap:8px;font:700 8px/1.4 Consolas,monospace;letter-spacing:1.8px;color:#b9d5d3}
.daily-kicker>span{font:9px/1.4 'Segoe UI',sans-serif;letter-spacing:0;color:#86a6b5;text-align:right}
.daily-content h3{font-size:13px;line-height:1.4;margin:6px 0 9px;color:#e5ece9}
.daily-meter{display:flex;align-items:center;gap:13px}.daily-meter b{font-size:10px;color:#c8d8db;white-space:nowrap;font-weight:500}
#gather-page progress{display:block;appearance:none;-webkit-appearance:none;border:0;background:#172f3c;border-radius:3px;height:7px;overflow:hidden}
#gather-page progress::-webkit-progress-bar{background:#172f3c;border-radius:2px}#gather-page progress::-webkit-progress-value{background:linear-gradient(90deg,#e3a738,#ffda78);border-radius:2px}#gather-page progress::-moz-progress-bar{background:#f5c351}
.daily-meter progress{flex:1;min-width:24px;height:9px!important}.daily-reward{border:0;padding-left:17px;display:flex;flex-direction:column;gap:4px;min-width:98px}
.daily-reward small{font-size:8px;letter-spacing:1px;color:#a1bcc4}.daily-reward strong{font-size:13px;white-space:nowrap;color:#ffd169}.daily-reward strong>span{font-size:20px;vertical-align:middle}.daily-reward>span{font-size:9px;color:#9ab4bf}.daily-reward button{font-size:10px;padding:7px 9px;margin-top:3px}.daily-claimed{font-size:10px;color:#f1cb80}.is-claimed .daily-meter progress::-webkit-progress-value{background:#efbf72}
.gather-controls{display:flex;align-items:center;gap:15px;margin-bottom:20px;flex-wrap:wrap}
#gather-page .work-search{flex:0 1 265px;max-width:none;min-height:39px;padding:0 11px;margin:0;background:#10232cc9;border-color:#34586a}
#gather-page .work-search input{padding:10px 8px;font-size:11px;margin:0;min-width:0}
#gather-page .filters{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:0;flex:1}
#gather-page .filters button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 10px;min-height:37px;font-size:10px;background:#122936;border:1px solid #3b5c6d;border-radius:5px;color:#c1d0d6;white-space:nowrap}
#gather-page .filters button.selected{background:#1d4843;border-color:#6fbcaa;color:#edf9e9;box-shadow:inset 0 0 9px #6fbcaa0d}
#gather-page .gather-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}
#gather-page .gather-card{position:relative;isolation:isolate;overflow:hidden;display:block;padding:0;min-height:148px;border:1px solid var(--gather-edge);border-radius:7px;background:linear-gradient(112deg,#16303a,#0e202b 80%);transition:border-color .15s,box-shadow .15s;box-shadow:inset 0 1px #c8e8e704}
#gather-page .gather-card:hover{border-color:#5e8490;background:linear-gradient(112deg,#1c3943,#112630 80%)}
.gather-art{position:absolute;inset:0 auto 0 0;width:150px;overflow:hidden;pointer-events:none;z-index:-1;mask-image:linear-gradient(90deg,#000 54%,#000d 70%,#0006 87%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,#000 54%,#000d 70%,#0006 87%,transparent 100%)}
/* Keep the square scene intact instead of enlarging it to fill a tall strip. */
.gather-art img{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:auto;aspect-ratio:1;object-fit:contain;image-rendering:pixelated;opacity:.94;mask-image:linear-gradient(0deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 10%,#000 90%,transparent)}
.gather-card-body{min-height:148px;height:100%;display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:12px;padding:14px 16px 14px 135px}
.gather-copy{min-width:0;align-self:center}.gather-copy h3.work-item-title{font:700 16px/1.2 Segoe UI,system-ui,sans-serif;letter-spacing:0;color:#f1eee6;margin:0 0 7px;display:block}
.gather-skill{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:var(--work-color);font-size:10px;line-height:1.4}.gather-skill b{font-weight:500}.gather-skill progress{flex:0 1 66px;width:66px;height:5px!important}.gather-skill small{font-size:8px;white-space:nowrap;color:#96b2c0}
#gather-page .gather-copy>p{font-size:11px;line-height:1.5;margin:7px 0;color:#abc3ce}
.gather-loot{display:flex;flex-wrap:wrap;align-items:center;gap:5px 10px;min-width:0}.gather-loot>span{display:inline-flex;align-items:center;gap:4px;font-size:9px;color:#c8d9df;line-height:1.5}.gather-loot .item-icon{flex-shrink:0}.gather-loot>small{font-size:7px;letter-spacing:.6px;color:#8eabb9}
.gather-loot .gather-material-link{display:inline-flex;align-items:center;gap:4px;max-width:100%;min-height:28px;padding:3px 5px;border:1px solid transparent;border-radius:4px;background:transparent;box-shadow:none;font-size:9px;font-weight:400;line-height:1.5;text-align:left}
.gather-material-link>span:not(.gather-material-arrow){text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}
.gather-loot .gather-material-link:hover{background:#b8756220;border-color:#c7856e66}
.gather-loot .gather-material-link:focus-visible{outline:2px solid #ffd36b;outline-offset:3px}
.gather-material-arrow{font-size:11px;line-height:1;flex-shrink:0}
.gather-cost .objective-target{margin-left:48px;max-width:calc(100% - 48px)}
@media(max-width:600px){.gather-loot .gather-material-link{min-height:36px;padding:5px}}
.gather-cost{margin:8px 0}.gather-cost>small{font-size:7px;letter-spacing:1px;color:#8cabb7;display:block;margin-bottom:3px}.gather-meta{display:flex;align-items:center;justify-content:center;gap:4px 8px;flex-wrap:wrap;font-size:9px;color:#d3bd8d;line-height:1.5;margin:0;padding:6px 4px;border:1px solid #4b667044;border-radius:4px;background:#07182255}.gather-meta>span{white-space:nowrap}.gather-meta>span:first-child{color:#96b5c5}
#gather-page .gather-actions{margin:0;align-self:center;justify-self:stretch;min-width:0;max-width:none;text-align:center;display:flex;flex-direction:column;gap:8px}
#gather-page .gather-actions>button{min-width:0;width:100%;min-height:40px;padding:9px 7px;font-size:11px;border-radius:5px}
#gather-page .gather-actions>button.primary{box-shadow:0 2px 0 #92641966;background:linear-gradient(#ffd46b,#ffbb35);color:#281d07;border-color:#fbd774}
.gather-lock{font-size:9px;color:#93aab8;display:flex;flex-direction:column;align-items:center;gap:6px;line-height:1.6}.gather-lock>b{font-size:8px;font-weight:600;letter-spacing:.4px;color:#d3bd8d}
#gather-page .is-locked .gather-art{opacity:.38;filter:saturate(.5)}#gather-page .is-locked .gather-copy h3{color:#adbdc6}
.gather-combat{display:flex;align-items:center;gap:5px 9px;flex-wrap:wrap;margin:8px 0;font-size:9px;color:#9fbbbd}.gather-combat .gather-power{font-size:9px;padding:3px 6px;background:#182e36;border-color:#3d5f68;color:#cbd8d9}
#gather-page .gather-card.is-current{border-color:#6ce0c7;box-shadow:0 0 0 1px #54cbb53a,inset 0 0 26px #3da89b0a}
.gather-running{padding:10px 6px;border:1px solid #448b81;border-radius:5px;background:#194b454d;color:#86e0cb;font-size:9px;line-height:1.6}.gather-running b{font-size:10px;font-weight:600}.gather-running progress{width:100%;margin:8px 0 5px;height:5px!important}.gather-running>span{font-size:8px;color:#a9ccc8;white-space:nowrap}#gather-page .gather-running progress::-webkit-progress-value{background:#74dec9}
.gather-empty{grid-column:1/-1;text-align:center;padding:50px 20px;border:1px dashed #3a5663;border-radius:7px}.gather-empty h3{margin-bottom:8px}
@media(min-width:1500px){.gather-card-body{grid-template-columns:minmax(0,1fr) 96px;gap:18px}.gather-art{width:164px}.gather-card-body{padding-left:144px}}
@media(max-width:1150px){.gather-heading{grid-template-columns:1fr;gap:18px}.gather-heading>div:first-child{max-width:none}.gather-daily{max-width:none}.gather-controls .work-search{flex-basis:100%!important;max-width:none!important}#gather-page .gather-list{grid-template-columns:1fr}.gather-card-body{min-height:148px}.gather-art{width:164px}.gather-card-body{padding-left:148px}}
@media(max-width:600px){.gather-heading{gap:17px;margin-bottom:18px}.gather-eyebrow{font-size:8px;letter-spacing:1.7px}.gather-heading h1{font-size:29px}.gather-heading>div>p{font-size:11px;max-width:290px}.gather-daily{gap:10px;padding:13px 11px;min-height:106px}.daily-emblem{display:none}.daily-kicker{font-size:7px;letter-spacing:1.1px;flex-wrap:wrap;gap:4px}.daily-kicker>span{font-size:8px}.daily-content h3{font-size:12px;margin:5px 0 8px}.daily-reward{padding-left:10px;min-width:82px}.daily-reward strong{font-size:11px}.daily-reward strong>span{font-size:16px}.daily-reward small{font-size:7px}.daily-meter{gap:7px}.daily-meter b{font-size:9px}.gather-controls{gap:10px;margin-bottom:14px}#gather-page .filters{gap:6px}#gather-page .filters button{padding:7px 9px;font-size:9px;min-height:34px;gap:5px}#gather-page .filters .skill-icon{width:18px;height:18px}#gather-page .gather-list{gap:12px}.gather-art{width:104px}.gather-card-body{padding:13px 12px 13px 94px;min-height:160px;grid-template-columns:minmax(0,1fr);gap:12px}.gather-copy h3.work-item-title{font-size:15px;margin-bottom:6px}.gather-skill{gap:5px 8px;font-size:9px}.gather-skill progress{flex-basis:55px;width:55px}.gather-skill small{font-size:8px}#gather-page .gather-copy>p{font-size:10px;line-height:1.5;margin:6px 0}.gather-loot{gap:4px 8px}.gather-loot>span{font-size:8px}.gather-meta{font-size:8px;gap:3px 6px;margin:0;padding:4px 3px}#gather-page .gather-actions{justify-self:stretch;width:100%;max-width:none;align-self:center;display:grid;grid-template-columns:minmax(0,1fr) 80px;align-items:center;gap:7px}#gather-page .gather-actions>button{font-size:10px;min-height:35px}.gather-running{display:block;padding:7px 5px}.gather-running progress{grid-row:2;grid-column:1/-1;margin:5px 0 0}.gather-running>span{align-self:center}.gather-lock{flex-direction:row;text-align:left;gap:7px;font-size:8px}}
@media(max-width:360px){.gather-art{width:85px}.gather-card-body{padding-left:78px;padding-right:10px}.gather-heading h1{font-size:26px}.gather-skill small{flex-basis:100%}.daily-reward{min-width:77px;padding-left:8px}.daily-reward strong{font-size:10px}.daily-kicker>span{font-size:7px}}

/* Reset the legacy mobile action column inside the new card layout. */
#gather-page .gather-actions{grid-column:auto}

/* Give the subject room before the scene fades into the copy. */
.gather-art{width:176px}
.gather-card-body{padding-left:176px}
@media(max-width:600px){.gather-art{width:132px}.gather-card-body{padding-left:132px}}
@media(max-width:360px){.gather-art{width:112px}.gather-card-body{padding-left:112px}}
.daily-pending{font-size:10px;line-height:1.5;color:#a4beca}


.gather-skill small{white-space:normal}.gather-lock{flex-direction:column;gap:3px}

.gather-requirement{font-size:9px;line-height:1.5;color:#a4beca;margin-top:5px}.gather-requirement.short{color:#eea49d}.gather-lock .bow-required{color:#ff8e91;font-weight:700}

/* Task cards show unlock levels; personal XP belongs in the Skills overview. */
.work-level-requirements{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;font-size:9px;line-height:1.5;margin:6px 0}.work-level-requirements .is-met{color:#8bd6a6}.work-level-requirements .is-unmet{color:#ff8e91}

/* Float the recommendation on the card edge without changing its content layout. */
#gather-page .gather-card.is-recommended,#craft-page .craft-card.is-recommended{overflow:visible;border-color:#ad8b45;box-shadow:inset 0 1px 0 #ffd16a33,0 0 0 1px #e4b9530a}
.is-recommended .gather-art{border-radius:6px 0 0 6px}
.recommendation-banner{position:absolute;top:0;right:12px;transform:translateY(-50%);z-index:2;display:block;max-width:calc(100% - 24px);padding:5px 17px;border:1px solid #e5b347;border-radius:999px;background:#ffce58;color:#302408;box-shadow:0 2px 5px #0003;font-size:9px;font-weight:700;letter-spacing:.35px;line-height:12px;white-space:nowrap;pointer-events:none}
#gather-page .gather-list:has(.is-recommended),#craft-page .craft-list:has(.is-recommended){padding-top:6px}
@media(max-width:600px){.recommendation-banner{right:10px;padding:4px 12px;font-size:8px;letter-spacing:.25px}}
/* Mobile already shows the current cycle in the persistent task bar. */
@media(max-width:800px){
 #gather-page .gather-running{display:none}
 #gather-page .gather-card.is-current .gather-actions{grid-template-columns:minmax(0,1fr)}
}

/* Guided actions keep their arrow clear of descriptions and time/XP labels. */
@media(min-width:601px){.gather-card-body:has(.gather-actions>.objective-target) .gather-copy{padding-right:36px}}
@media(max-width:600px){
 #gather-page .gather-actions:has(>.objective-target){grid-template-columns:minmax(0,1fr)}
 #gather-page .gather-actions>.objective-target{width:calc(100% - 48px);margin-left:48px}
}
#gather-page .gather-art{z-index:0}
#gather-page .gather-card-body{position:relative;z-index:1}

/* Daily goals share the recommendation card layout, with a green accent. */
#gather-page .gather-card.is-daily{overflow:hidden;border-color:#63c992;background:linear-gradient(112deg,#173b3c,#102b33 62%,#10222d);box-shadow:inset 3px 0 #75e1aa}
#gather-page .gather-card.is-daily::before{content:"";position:absolute;inset:-30%;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 22% 55%,#5bcf9a30,transparent 44%),radial-gradient(ellipse at 78% 42%,#399caa24,transparent 42%);animation:daily-card-gradient 16s ease-in-out infinite}
#gather-page .gather-card.is-daily .gather-card-body{z-index:2}
.daily-quest-banner{position:relative;z-index:2;display:block;width:max-content;max-width:100%;margin:0 0 9px;color:#88e8b3;font-size:9px;font-weight:800;letter-spacing:1.3px;line-height:12px;white-space:nowrap;pointer-events:none}
@keyframes daily-card-gradient{0%,100%{transform:translate3d(-4%,1%,0) scale(1)}50%{transform:translate3d(5%,-2%,0) scale(1.08)}}
.reduce-motion #gather-page .gather-card.is-daily::before{animation:none}
@media(prefers-reduced-motion:reduce){#gather-page .gather-card.is-daily::before{animation:none}}

.gather-actions .gather-meta{gap:12px;line-height:1.5;white-space:nowrap}.gather-meta>span{display:inline-flex;align-items:center;gap:4px}

.gather-daily .daily-go-button{font-weight:800;letter-spacing:.08em;color:#213744;border:0;background:linear-gradient(135deg,#f3cc80,#eeb75e);box-shadow:0 2px 0 #9d7137;animation:daily-go-pulse 9s ease-in-out infinite}
@keyframes daily-go-pulse{0%,83%,100%{box-shadow:0 2px 0 #9d7137}88%,93%{box-shadow:0 2px 0 #9d7137,0 0 15px #efbf7299}}
.reduce-motion .gather-daily .daily-go-button{animation:none}
@media(prefers-reduced-motion:reduce){.gather-daily .daily-go-button{animation:none}}
