
/* Consistent BitNook dashboard column geometry, richer tracker and project cards. */
@media(min-width:1101px){
 .phone #view[data-bn-desktop-route="home"]>.hero{grid-column:span 5;grid-row:2;min-height:228px}
 .phone #view[data-bn-desktop-route="home"]>.progress-card{grid-column:span 7;grid-row:2;min-height:228px}
 .phone #view[data-bn-desktop-route="home"]>.streak-strip{grid-column:span 5;grid-row:3;min-height:298px}
 .phone #view[data-bn-desktop-route="home"]>.daily-card{grid-column:span 7;grid-row:3;min-height:298px}
 .phone #view[data-bn-desktop-route="home"]>.home-focus-cards{display:contents}
 .phone #view[data-bn-desktop-route="home"]>.home-focus-cards>.bn-quick-wins-card{grid-column:span 5;grid-row:4;height:100%;min-width:0}
 .phone #view[data-bn-desktop-route="home"]>.home-focus-cards>.bn-vitals-card{grid-column:span 7;grid-row:4;height:100%;min-width:0}
 .phone #view[data-bn-desktop-route="home"]>.home-focus-cards>.bn-inventory-summary{grid-column:span 5;grid-row:5;min-height:225px;height:100%}
 .phone #view[data-bn-desktop-route="home"]>.section-card{grid-column:span 7;grid-row:5;min-width:0;height:100%}
 .phone #view[data-bn-desktop-route="home"]>.section-card .skill-grid.bn-rich-skills{grid-template-columns:repeat(3,minmax(0,1fr))}
 .phone #view[data-bn-desktop-route="home"]>.hero,.phone #view[data-bn-desktop-route="home"]>.progress-card,.phone #view[data-bn-desktop-route="home"]>.streak-strip,.phone #view[data-bn-desktop-route="home"]>.daily-card{height:100%}
}
@media(min-width:1101px) and (max-width:1280px){
 .phone #view[data-bn-desktop-route="home"]>.section-card .skill-grid.bn-rich-skills{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.bn-quick-wins-card{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid #4b4233;border-radius:14px;background:linear-gradient(150deg,#211f1c,#191d1d);min-width:0;overflow:hidden}
.bn-rich-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.bn-rich-heading h2{font:750 19px/1.22 var(--font-ui,Inter,system-ui,sans-serif);margin:5px 0 0}
.bn-rich-refresh{font:650 12px/1.2 var(--font-ui,Inter,system-ui,sans-serif);padding:8px 11px;border-radius:9px;border:1px solid #615742;color:#dfc38a;background:transparent;cursor:pointer;white-space:nowrap}
.bn-rich-foot{color:#acb7ae;font:500 12px/1.45 var(--font-ui,Inter,system-ui,sans-serif);margin:0}
.bn-rich-empty{padding:25px 10px;border:1px dashed #514e42;border-radius:12px;font-size:13px;line-height:1.5;color:#b4bfb8}
.bn-quick-list{display:grid;grid-template-columns:1fr;gap:8px;min-width:0;max-height:285px;overflow-y:auto;padding-right:3px}
.bn-quick-row{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #3a403d;border-radius:10px;background:rgba(255,255,255,.015);min-width:0}
.bn-quick-tier{padding:6px 7px;border-radius:7px;color:var(--quick-tier);border:1px solid var(--quick-tier);font-weight:750;font-size:11px}
.bn-quick-info{min-width:0;flex:1;display:grid;gap:4px}
.bn-quick-info b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bn-quick-info small{font-size:11px;color:#a8b5ae;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bn-quick-info .track{height:5px;margin-top:2px}
.bn-quick-left{display:grid;align-content:center;justify-items:end;gap:3px;min-width:40px;color:var(--quick-tier)}
.bn-quick-left b{font-size:14px;font-variant-numeric:tabular-nums}
.bn-quick-left small{font-size:9px;letter-spacing:.1em;color:#a9b1aa}
.bn-vitals-buff-row{margin-top:10px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;border-top:1px solid #424943;padding-top:10px;font-size:12px}
.bn-vitals-buff-row>span:first-child{color:#e1c58d;font-weight:750;margin-right:5px}
.bn-vitals-buff-row small{color:#aab6af}
.bn-buff-chip{display:inline-flex;gap:6px;align-items:center;padding:7px 9px;border:1px solid #7e6436;background:#332b20;border-radius:99px;color:#f1d49b;font-size:12px;line-height:1.25}
.bn-buff-chip small{color:#d1c9b5;font-size:11px}
.bn-live-stats-link{display:inline-block;margin-top:9px;color:#d3bb89;text-decoration:none;font-size:12px}
.bn-rich-session,.bn-rich-buffs,.bn-rich-passives{margin:16px 0;min-width:0;padding:clamp(15px,2vw,24px)}
.bn-session-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:17px 0}
.bn-session-grid>div{display:grid;gap:7px;padding:14px;border:1px solid #414b45;border-radius:11px;background:#1b2221;min-width:0}
.bn-session-grid span{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#a7b7b2}
.bn-session-grid strong{font-size:clamp(14px,1.7vw,21px);color:#f1ddbb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bn-xp-sound-controls{margin-top:17px;padding:13px 15px;border:1px solid #525044;border-radius:12px;display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.bn-xp-sound-controls label{display:flex;align-items:center;gap:8px;color:#d6d9d0;font-size:12px}
.bn-xp-sound-controls select{min-height:34px;background:#17211f;border:1px solid #42564a;border-radius:8px;color:#dfe7dc;padding:6px 9px}
.bn-xp-sound-controls input[type="checkbox"]{width:16px;height:16px;accent-color:#ccad73}
.bn-xp-sound-controls input[type="range"]{width:110px;accent-color:#ccad73}
.bn-xp-sound-controls button{padding:9px 12px;border:1px solid #696047;background:transparent;color:#e7c891;border-radius:9px;font-weight:700;font-size:12px}
.bn-buff-list{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}
.bn-passive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0}
.bn-passive-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#1d2523;border:1px solid #44524b;border-radius:10px;padding:13px;min-width:0}
.bn-passive-item>div:first-child{display:grid;gap:5px;min-width:0}
.bn-passive-item b{font-size:13px;color:#f0e8dd}
.bn-passive-item small{font-size:11px;color:#a6b4ae}
.bn-passive-count{font-variant-numeric:tabular-nums;font-size:17px;color:#e1c58a;flex-shrink:0;display:grid;justify-items:end}
.bn-passive-count small{margin-top:3px}
.bn-rich-chip{padding:6px 9px;background:#34312a;border-radius:8px;border:1px solid #62523a;font-size:12px;color:#dfc68b}
.bn-xp-history{display:grid;gap:8px;max-height:55vh;overflow:auto}
.bn-xp-history>div{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:10px;border:1px solid #445049;border-radius:9px;background:#212725}
.bn-xp-history strong{font-size:13px}
.bn-xp-history span{font-size:13px;color:#d9ba81}
.bn-xp-history small{grid-column:1/-1;font-size:10px;color:#aab9af}
@media(min-width:1000px){.phone #view[data-bn-desktop-route="progress"]{max-width:1250px;margin:0 auto}.phone #view[data-bn-desktop-route="progress"]>.bp-card{font-size:14px}}
@media(max-width:950px){.bn-session-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.bn-passive-list{grid-template-columns:1fr}.bn-quick-row{gap:6px;padding:7px}.bn-session-grid>div{padding:9px}}

/* Live tracker: Holmgard's session layout in native BitNook colors and typography. */
.bn-xp-page-head{margin:3px 0 17px}
.bn-xp-page-head .page-title{font:750 clamp(28px,3vw,39px)/1.15 var(--font-ui,Inter,system-ui,sans-serif);margin:7px 0}
.bn-xp-page-head .page-description{font-size:13px;line-height:1.5}
.bn-xp-main{padding:clamp(17px,3vw,25px);display:grid;gap:13px;border:1px solid #576b5d;background:radial-gradient(circle at 95% 0%,color-mix(in srgb,var(--teal,#8cbfb0) 16%,transparent),transparent 55%),linear-gradient(150deg,#252e2a,#18201e);margin-bottom:15px}
.bn-xp-main-top{display:flex;justify-content:space-between;align-items:start;gap:10px}
.bn-xp-main-top .upper{font:750 11px var(--font-mono,ui-monospace,monospace);letter-spacing:.12em;color:#b6cebd}
.bn-xp-main h2{font:750 clamp(38px,5vw,54px)/1.1 var(--font-ui,Inter,system-ui,sans-serif);margin:9px 0 0;color:#efece2}
.bn-xp-main h2 span{font-size:.52em;color:#b5c8ba}
.bn-xp-live-pill{border:1px solid #626355;border-radius:99px;padding:7px 11px;color:#cbbd98;background:#292c23;font:700 11px var(--font-ui,Inter,system-ui,sans-serif);white-space:nowrap}
.bn-xp-live-pill.is-working{background:#253f34;border-color:#60866d;color:#b4e0ba}
.bn-xp-percent-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#cad0c5}
.bn-xp-percent-row strong{color:#e4cc98;font:750 22px var(--font-ui,Inter,system-ui,sans-serif)}
.bn-xp-main-track{height:13px;border:1px solid #526258;background:#151d1b;border-radius:99px;overflow:hidden}
.bn-xp-main-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--teal,#73b4a7),#e5c58e);transition:width .3s ease}
.bn-xp-main-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;font:600 11px var(--font-mono,ui-monospace,monospace);color:#b2c1b4}
.bn-xp-current-action{padding:10px 12px;border:1px solid #435d4d;border-radius:10px;background:#203129;color:#cce0cd;font-size:12px}
.bn-xp-controls{display:flex;align-items:end;flex-wrap:wrap;gap:8px;border-top:1px solid #435148;padding-top:12px}
.bn-xp-controls label{display:grid;gap:4px;color:#c6d0c8;font:650 11px var(--font-ui,Inter,system-ui,sans-serif)}
.bn-xp-controls input{width:115px;min-height:37px;color:#f4eee4;background:#131d1a;border:1px solid #566759;border-radius:9px;padding:6px 10px;font:600 13px var(--font-ui,Inter,system-ui,sans-serif)}
.bn-xp-controls button{min-height:37px;cursor:pointer;color:#e1cb9d;background:#30342d;border:1px solid #6d654f;padding:7px 12px;border-radius:9px;font:650 12px var(--font-ui,Inter,system-ui,sans-serif)}
.bn-xp-controls button:focus-visible,.bn-xp-controls input:focus-visible{outline:2px solid #e2c993;outline-offset:2px}
.bn-rich-session .bn-session-grid strong{font-variant-numeric:tabular-nums}
@media(max-width:520px){.bn-xp-main{padding:16px}.bn-xp-controls label{flex:1}.bn-xp-controls input{width:100%}.bn-xp-controls button{flex:1}}

/* Holmgard-style verified craft art, on BitNook's XP and passive cards. */
.bn-xp-current-heading{display:flex;align-items:center;gap:13px;min-width:0}
.bn-xp-current-heading>div{min-width:0}
.bn-xp-item-image{width:43px;height:43px;display:grid;place-items:center;position:relative;overflow:hidden;flex-shrink:0;border:1px solid #665b45;border-radius:12px;background:linear-gradient(135deg,#342f28,#1b2421);color:#e1c995;font-size:20px}
.bn-xp-item-image img{width:100%;height:100%;object-fit:contain;display:block}
.bn-xp-item-image [hidden]{display:none!important}
.bn-xp-current-heading>.bn-xp-item-image{height:63px;width:63px;border-radius:15px}
.bn-passive-item{justify-content:initial}
.bn-passive-item .bn-xp-item-image{height:45px;width:45px}
.bn-passive-item .bn-passive-description{flex:1;min-width:0;display:grid;gap:5px}
.bn-passive-item .bn-passive-description b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bn-passive-item .bn-passive-count{margin-left:auto}
.bn-xp-current-action{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.bn-xp-current-action strong{font:750 10px var(--font-mono,ui-monospace,monospace);letter-spacing:.06em;text-transform:uppercase;color:#c7cfb7}
.bn-xp-current-action span{font:700 13px var(--font-ui,Inter,system-ui,sans-serif)}
.bn-xp-alert-launch{border:1px solid #5a6552;border-radius:13px;padding:12px 14px;margin-top:8px;background:linear-gradient(100deg,#27372e,#1b2622);display:flex;align-items:center;justify-content:space-between;gap:14px}
.bn-xp-alert-launch .upper{font:750 10px var(--font-mono,ui-monospace,monospace);letter-spacing:.08em;color:#ddc58d}
.bn-xp-alert-launch p{margin:5px 0 0;font-size:12px;color:#bbcabd;line-height:1.45}
.bn-xp-alert-launch button{white-space:nowrap;border:1px solid #88734f;color:#ead3a0;border-radius:9px;background:#333329;font:700 12px var(--font-ui,Inter,system-ui,sans-serif);padding:10px 13px;cursor:pointer}
.bn-xp-level-sounds{margin:9px 0 0;border:1px solid #424d41;border-radius:11px;color:#bfc9bd;font-size:12px}
.bn-xp-level-sounds>summary{padding:10px 13px;cursor:pointer;list-style-position:inside;color:#d8c89e;font-weight:700}
.bn-xp-level-sounds .bn-xp-sound-controls{margin:0;border:0;border-top:1px solid #404b42;border-radius:0}
@media(max-width:580px){.bn-xp-alert-launch{align-items:stretch;flex-direction:column}.bn-xp-current-heading>.bn-xp-item-image{width:49px;height:49px}.bn-passive-item .bn-xp-item-image{height:39px;width:39px}.bn-xp-current-heading{gap:10px}}

/* XP passive icon fit and centering: keep rectangular game artwork inside a square without cropping. */
.bn-passive-item{display:flex;align-items:center;gap:12px}
.bn-passive-item .bn-xp-item-image{
 display:flex;align-items:center;justify-content:center;align-self:center;
 box-sizing:border-box;padding:5px;width:48px;height:48px;flex:0 0 48px;
 overflow:hidden;border-radius:12px;
}
.bn-passive-item .bn-xp-item-image img{
 display:block;width:100%;height:100%;min-width:0;min-height:0;
 max-width:100%;max-height:100%;margin:auto;
 object-fit:contain;object-position:50% 50%;
}
.bn-passive-item .bn-xp-item-image img[hidden]{display:none!important}
.bn-passive-item .bn-xp-item-image>span:not([hidden]){display:grid;place-items:center;width:100%;height:100%}
@media(max-width:580px){.bn-passive-item .bn-xp-item-image{width:42px;height:42px;flex-basis:42px;padding:4px}}

/* A calmer editorial XP view: dark ink, warm stone and restrained gold.
   Keep the current profession/tool colors in their own dedicated areas. */
.bn-xp-page-head{margin:9px 0 19px}
.bn-xp-page-head .page-description{max-width:620px;color:var(--muted,#aeb5b1)}
.bn-xp-main-polished,.bn-xp-session-polished,.bn-rich-passives{
 border:1px solid #4d4a42!important;
 background:radial-gradient(circle at 98% 3%,rgba(207,177,124,.055),transparent 42%),#1b1e1e!important;
 box-shadow:inset 0 1px rgba(255,255,255,.025);
 border-radius:16px;
}
.bn-xp-main-polished{padding:clamp(16px,2vw,25px);gap:14px}
.bn-xp-main-polished .bn-xp-main-top{align-items:center;gap:17px}
.bn-xp-main-polished .bn-xp-current-heading{display:flex;align-items:center;gap:16px;flex:1;min-width:0}
.bn-xp-main-polished .bn-xp-current-heading>.bn-xp-item-image{
 box-sizing:border-box;display:flex;align-items:center;justify-content:center;
 width:70px;height:70px;flex:0 0 70px;align-self:center;
 padding:8px;min-width:0;min-height:0;
 background:#282720;border:1px solid #625641;border-radius:14px;overflow:hidden;
}
.bn-xp-main-polished .bn-xp-current-heading>.bn-xp-item-image img{
 display:block!important;min-width:0;min-height:0;max-width:100%;max-height:100%;
 width:100%;height:100%;object-fit:contain!important;object-position:50% 50%!important;margin:auto;
}
.bn-xp-main-polished .bn-xp-current-heading>.bn-xp-item-image img[hidden]{display:none!important}
.bn-xp-main-polished .bn-xp-current-heading>.bn-xp-item-image>span:not([hidden]){display:grid;place-items:center;width:100%;height:100%}
.bn-xp-main-polished .bn-xp-heading-copy{display:grid;min-width:0;gap:5px}
.bn-xp-main-polished .bn-xp-heading-copy .upper{color:#ceac78}
.bn-xp-main-polished .bn-xp-heading-copy h2{font-size:clamp(24px,3vw,36px);line-height:1.15;margin:0;letter-spacing:-.03em}
.bn-xp-main-polished .bn-xp-heading-copy h2 span{color:#b7b4a6;font-size:.7em}
.bn-xp-main-polished .bn-xp-live-pill{font-size:11px;background:#302e28;border-color:#625b47;color:#e2cea3}
.bn-xp-main-polished .bn-xp-live-pill.is-working{background:#353228;border-color:#8a7854;color:#e4cf9e}
.bn-xp-craft-name{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:5px 0 4px}
.bn-xp-craft-name span{font:750 10px var(--font-mono,ui-monospace,monospace);letter-spacing:.09em;color:#b5a68d}
.bn-xp-craft-name strong{font:700 14px var(--font-ui,Inter,system-ui,sans-serif);color:#f1e8d8}
.bn-xp-goal-surface{display:grid;gap:9px;padding:14px 15px;background:#171a1b;border:1px solid #393d3a;border-radius:11px}
.bn-xp-goal-surface .bn-xp-percent-row{font-size:12px;color:#bdc0b9}
.bn-xp-goal-surface .bn-xp-percent-row strong{color:#e5c28e;font-size:21px}
.bn-xp-main-polished .bn-xp-main-track{height:10px;background:#30302b;border:0}
.bn-xp-main-polished .bn-xp-main-track span{background:linear-gradient(90deg,#baa37a,#d9c494)}
.bn-xp-goal-surface .bn-xp-main-foot{color:#aaaead;line-height:1.5;letter-spacing:0}
.bn-xp-main-polished .bn-xp-controls{border-top:0;padding-top:1px;align-items:center}
.bn-xp-main-polished .bn-xp-controls label{margin-right:auto;min-width:130px}
.bn-xp-main-polished .bn-xp-controls input{background:#151919;border-color:#4a4e46}
.bn-xp-main-polished .bn-xp-controls button{background:#252626;color:#dcc293;border-color:#625844}
.bn-xp-session-polished{padding:clamp(15px,2vw,23px);margin:12px 0}
.bn-xp-session-polished .bn-rich-heading h2{font-size:18px}
.bn-xp-session-polished .bn-session-grid{margin:14px 0 0;gap:8px}
.bn-xp-session-polished .bn-session-grid>div{padding:12px 13px;background:#1d2020;border-color:#373d39;border-radius:10px}
.bn-xp-session-polished .bn-session-grid span{color:#a5afa8;font:750 10px var(--font-mono,ui-monospace,monospace);letter-spacing:.035em}
.bn-xp-session-polished .bn-session-grid strong{color:#f0e6d2;font-size:clamp(16px,1.9vw,22px)}
.bn-xp-settings-fold{margin-top:12px;border-top:1px solid #343b35}
.bn-xp-settings-fold>summary{display:flex;justify-content:space-between;gap:8px;align-items:center;cursor:pointer;color:#d9c390;font-weight:700;font-size:12px;padding:13px 3px 4px;list-style:revert}
.bn-xp-settings-fold summary span{font-size:10px;color:#a8aca6;font-weight:500}
.bn-xp-settings-fold .bn-xp-alert-launch{background:#242724;border-color:#494a3f;margin-top:12px}
.bn-xp-settings-fold .bn-xp-level-sounds{margin-bottom:5px}
.bn-xp-settings-body{padding-bottom:9px}
.bn-home-xp-eta{margin-top:9px;padding-top:9px;border-top:1px solid #5e54415e;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.bn-home-xp-eta span{font:750 10px var(--font-mono,ui-monospace,monospace);color:#c3b09b;letter-spacing:.045em}
.bn-home-xp-eta strong{font:800 14px var(--font-ui,Inter,system-ui,sans-serif);color:#e9ce93;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:600px){
 .bn-xp-main-polished .bn-xp-current-heading{gap:10px}
 .bn-xp-main-polished .bn-xp-current-heading>.bn-xp-item-image{width:52px;height:52px;flex-basis:52px;padding:6px}
 .bn-xp-main-polished .bn-xp-heading-copy h2{font-size:25px}
 .bn-xp-main-polished .bn-xp-live-pill{padding:5px 8px}
 .bn-xp-main-polished .bn-xp-controls label{flex:1 1 100%}
 .bn-xp-session-polished .bn-session-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ETA sits within the dashboard row that already contains live XP. */
.bn-live-home .progress-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.bn-live-home .progress-foot>.bn-home-xp-eta{
 margin:0;padding:0;border:0;display:inline-flex;flex:0 1 auto;align-items:center;
 gap:7px;justify-content:flex-end;min-width:0;text-align:right;
}
.bn-live-home .progress-foot .bn-home-xp-eta small{font:750 9px var(--font-mono,ui-monospace,monospace);color:#b9aea0;letter-spacing:.045em;white-space:nowrap}
.bn-live-home .progress-foot .bn-home-xp-eta strong{font:800 12px var(--font-ui,Inter,system-ui,sans-serif);color:#edcc8b;white-space:nowrap}
@media(max-width:420px){
 .bn-live-home .progress-foot{flex-wrap:wrap}
 .bn-live-home .progress-foot>.bn-home-xp-eta{flex:1 1 100%;justify-content:space-between}
}
