:root{
  --pq-bg:#060606;
  --pq-bg-2:#0b0d12;
  --pq-panel:#11151f;
  --pq-panel-2:#171d2a;
  --pq-panel-warm:#20180b;
  --pq-line:#2b3449;
  --pq-line-soft:#222838;
  --pq-gold:#ffc12d;
  --pq-gold-2:#d8a33a;
  --pq-gold-3:#7a5517;
  --pq-text:#f7f3e7;
  --pq-muted:#aeb8cc;
  --pq-success:#123d31;
  --pq-danger:#4a1515;
  --pq-radius:18px;
  --pq-font-title:Georgia,'Times New Roman',serif;
  --pq-font-body:InterPQ,system-ui,-apple-system,Segoe UI,sans-serif;
}
*{box-sizing:border-box}body{margin:0;background:var(--pq-bg);color:var(--pq-text);font-family:var(--pq-font-body)}button,input,textarea,select{font:inherit}.pq-loading{padding:40px}.pq-auth{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,#251a0b,var(--pq-bg) 55%)}.pq-auth-card{width:min(560px,92vw);background:var(--pq-panel);border:1px solid var(--pq-line);border-radius:24px;padding:28px;box-shadow:0 30px 80px #0009}.pq-logo-row,.pq-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pq-mark{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--pq-gold-2),var(--pq-gold-3));color:#fff}.pq-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0}.pq-tabs button{border:1px solid var(--pq-line);background:#1a2030;color:#fff;border-radius:14px;padding:14px}.pq-tabs .active,.pq-btn-primary{background:linear-gradient(135deg,#e7b64a,#9b6e19)!important;color:#090909!important;border-color:var(--pq-gold-2)!important}.pq-form{display:grid;gap:12px}.pq-google-link{display:flex;align-items:center;justify-content:center;width:100%;margin-top:14px;border:1px solid #333;border-radius:14px;background:#101010;color:#fff;text-decoration:none;padding:14px;font-weight:800;box-shadow:0 12px 25px rgba(0,0,0,.35)}.pq-google-link:hover{background:#171717;border-color:#555}.pq-auth-card .pq-logo-row{justify-content:center;text-align:center}.pq-auth-card .pq-logo-row h1{font-family:var(--pq-font-title);color:var(--pq-gold);font-size:32px;margin:0}.pq-auth-card .pq-logo-row p{color:#b7bfd1;margin:.35rem 0 0}.pq-auth-card .pq-mark{display:none}.pq-input,.pq-textarea,.pq-select{width:100%;background:#080b11;border:1px solid #30384d;color:#fff;border-radius:12px;padding:12px}.pq-input:focus,.pq-textarea:focus,.pq-select:focus{outline:2px solid rgba(255,193,45,.55);border-color:var(--pq-gold-2)}.pq-textarea{min-height:108px;line-height:1.45}.pq-btn{border:1px solid #394156;background:var(--pq-panel-2);color:#fff;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer}.pq-btn:hover{filter:brightness(1.09)}.pq-btn-ghost{background:#0d1017}.pq-btn-danger{background:var(--pq-danger);border-color:#8c2424}.pq-success,.pq-error,.pq-warning{border-radius:12px;padding:12px;margin:10px 0}.pq-success{background:var(--pq-success);border:1px solid #1b775e}.pq-warning{background:#3b2a08;border:1px solid #b7791f;color:#ffe8ad}.pq-error{background:#431717;border:1px solid #943333}.pq-app{display:grid;grid-template-columns:210px 1fr;min-height:100vh}.pq-sidebar{background:#0b0e15;border-right:1px solid #202637;padding:18px;position:sticky;top:0;height:100vh}.pq-brand{display:flex;gap:10px;align-items:center;margin-bottom:24px}.pq-brand small{display:block;color:#b7bfd1;font-size:11px}.pq-sidebar nav{display:grid;gap:8px}.pq-sidebar nav button{background:transparent;border:1px solid transparent;color:#d9deea;text-align:left;border-radius:10px;padding:12px}.pq-sidebar nav button.active{background:var(--pq-panel-2);border-color:#30394f}.pq-main{padding:0 24px 50px;min-width:0}.pq-topbar{height:70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #222}.pq-title-brand{font-family:var(--pq-font-title);color:var(--pq-gold);font-size:24px}.pq-wallet{display:flex;gap:10px;align-items:center}.pq-wallet span{border:1px solid #333;border-radius:999px;padding:8px 14px;background:#101010}.pq-realm-picker{display:grid;grid-template-columns:80px 1fr;gap:12px;align-items:center;margin:16px 0}.pq-page{max-width:1540px}.pq-display{font-family:var(--pq-font-title);color:var(--pq-gold);font-size:clamp(48px,7vw,88px);line-height:.88;margin:26px 0 8px;letter-spacing:-.04em}.pq-subtitle{color:#d6dbe7;margin-bottom:24px}.pq-card{background:var(--pq-panel);border:1px solid var(--pq-line);border-radius:var(--pq-radius);padding:18px;margin:14px 0}.pq-stat-grid,.pq-macro-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.pq-stat-grid strong{font-size:30px;display:block}.pq-badge{border:1px solid #35405a;border-radius:999px;padding:3px 9px;color:#d9e0ef;font-size:12px;white-space:nowrap}.pq-muted{color:var(--pq-muted)}.pq-gold{font-family:var(--pq-font-title);color:var(--pq-gold);font-size:24px}.pq-pad{padding:18px}.pq-quest-actions{display:flex;gap:10px;justify-content:flex-end;margin:10px 0 18px;flex-wrap:wrap}.pq-filter-bar{margin:20px 0}.pq-filters{display:grid;grid-template-columns:1fr 260px 260px;gap:12px;margin-top:12px;background:#101010;border:1px solid #333;border-radius:16px;padding:14px}.pq-raci{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.pq-tree{border-top:1px solid #222}.pq-tree-row{display:flex;align-items:center;gap:12px;padding:14px;min-height:64px}.pq-tree-title{flex:1;min-width:0}.pq-tree-title strong{display:block}.pq-tree-title small{display:block;color:var(--pq-muted);margin-top:5px}.pq-realm-row{justify-content:flex-start}.pq-round{width:38px;height:38px;min-width:38px;border-radius:50%;background:#090909;border:1px solid #555;color:#fff;font-weight:900}.pq-line{border-bottom:1px solid #252525}.pq-children{background:#202020;border:1px solid #343434;border-radius:16px;margin-left:18px;margin-bottom:18px;overflow:visible}.pq-quest{border-top:1px solid #3b3b3b}.pq-quest:first-child{border-top:0}.pq-objectives{padding:0 24px 16px 70px}.pq-objective{display:grid;grid-template-columns:minmax(280px,1fr) auto auto auto auto;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #333}.pq-objective small{display:block;color:var(--pq-muted);margin-top:4px}.pq-menu-wrap{position:relative;margin-left:auto}.pq-pop{position:absolute;right:0;top:44px;background:#252525;border:1px solid #3c3c3c;border-radius:14px;min-width:240px;z-index:20;padding:8px;box-shadow:0 18px 40px #0009}.pq-pop button{display:block;width:100%;background:transparent;border:0;color:#fff;text-align:left;padding:12px;border-radius:8px}.pq-pop button:hover{background:#333}.pq-chat-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px}.pq-thread-list,.pq-chat-panel{background:var(--pq-panel);border:1px solid var(--pq-line);border-radius:18px;padding:14px}.pq-thread-list button{display:block;width:100%;margin:8px 0;text-align:left;background:#0d1017;color:#fff;border:1px solid #2c3448;border-radius:12px;padding:12px}.pq-thread-list button.active{border-color:var(--pq-gold-2);background:var(--pq-panel-warm)}.pq-thread-list small{display:block;color:#aab4c7;margin-top:4px}.pq-messages{min-height:420px;max-height:62vh;overflow:auto;padding:10px}.pq-msg{max-width:82%;border:1px solid #30394f;border-radius:16px;padding:14px;margin:12px 0;background:var(--pq-panel-2);line-height:1.45}.pq-msg.user{margin-left:auto;background:#221b10;border-color:#866022}.pq-msg.assistant{margin-right:auto}.pq-msg p{white-space:pre-wrap}.pq-router{background:#0d1017;border:1px solid #2c3448;border-radius:12px;padding:12px;margin:10px 0}.pq-table{width:100%;border-collapse:collapse;margin-top:10px}.pq-table th,.pq-table td{border-bottom:1px solid #333;padding:8px;text-align:left}.pq-table th{color:#f4d37a}.pq-attach{display:block;color:#f3c557}.pq-composer{border-top:1px solid #2c3448;padding-top:12px}.pq-period{display:flex;gap:10px;flex-wrap:wrap;align-items:center;background:#101010;border:1px solid #333;border-radius:18px;padding:14px;margin-bottom:18px}.pq-macro-card{border:1px solid #333;border-radius:16px;padding:18px;background:linear-gradient(135deg,#151515,#222)}.pq-macro-card strong{display:block;font-size:28px}.pq-add-food{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;border:1px solid #333;border-radius:16px;padding:16px;margin:12px 0}.pq-sankey{display:grid;grid-template-columns:260px 1fr 180px;gap:12px;min-height:260px;position:relative;margin-top:20px}.pq-sankey-food,.pq-sankey-macro{background:#191919;border:1px solid #333;border-radius:10px;margin:7px 0;padding:8px;font-weight:800}.pq-sankey-flow{position:relative;overflow:hidden}.pq-flow-line{position:absolute;left:0;height:8px;border-radius:999px;background:linear-gradient(90deg,#43b74a,#d9cf50,#1d4d86);opacity:.55}.pq-bars{height:160px;display:flex;align-items:end;gap:8px;overflow:auto}.pq-bar-wrap{text-align:center;min-width:34px}.pq-bar{width:16px;background:#d79518;border-radius:4px;margin:auto}.pq-member{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center;padding:12px;border-top:1px solid #333}@media(max-width:900px){.pq-app{grid-template-columns:1fr}.pq-sidebar{height:auto;position:relative}.pq-chat-layout{grid-template-columns:1fr}.pq-sankey{grid-template-columns:1fr}.pq-objective{grid-template-columns:1fr auto}.pq-filters{grid-template-columns:1fr}.pq-realm-picker{grid-template-columns:1fr}}

/* Patch 2026-05-20: lock the app back to the original ProjectQuest black/gold brand language. */
:root{
  --pq-bg:#050505;
  --pq-bg-2:#080808;
  --pq-panel:#111111;
  --pq-panel-2:#171717;
  --pq-panel-warm:#211806;
  --pq-line:#333333;
  --pq-line-soft:#242424;
  --pq-gold:#ffc21f;
  --pq-gold-2:#d99a16;
  --pq-gold-3:#6f4a0d;
  --pq-text:#f7f7f2;
  --pq-muted:#b9c0ca;
  --pq-radius:18px;
  --pq-font-title:"Cinzel Decorative","Cinzel",Georgia,"Times New Roman",serif;
  --pq-font-body:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
html,body,#projectquest-root{background:#050505!important;color:var(--pq-text);}
body{font-family:var(--pq-font-body);}
.pq-app{background:#050505;}
.pq-sidebar{background:#090b10!important;border-right:1px solid #222!important;}
.pq-main{background:#050505!important;}
.pq-topbar{background:#050505!important;border-bottom:1px solid #242424!important;}
.pq-title-brand{font-family:var(--pq-font-title);color:var(--pq-gold);letter-spacing:.02em;text-shadow:0 1px 0 #000;}
.pq-display{font-family:var(--pq-font-title)!important;color:var(--pq-gold)!important;letter-spacing:-.05em;text-shadow:0 2px 0 #000;}
.pq-card,.pq-thread-list,.pq-chat-panel,.pq-auth-card{background:#111!important;border-color:#333!important;box-shadow:none!important;}
.pq-card:hover{border-color:#484848;}
.pq-stat-grid .pq-card,.pq-macro-card{background:#111!important;border-color:#333!important;}
.pq-btn,.pq-btn-ghost{background:#111!important;border-color:#444!important;color:#fff!important;}
.pq-btn-primary,.pq-tabs .active{background:linear-gradient(180deg,#ffc34a,#b67812)!important;border-color:#c68a17!important;color:#060606!important;}
.pq-input,.pq-textarea,.pq-select{background:#090909!important;border-color:#3a3a3a!important;color:#fff!important;}
.pq-input:focus,.pq-textarea:focus,.pq-select:focus{outline:2px solid rgba(255,194,31,.55)!important;border-color:var(--pq-gold-2)!important;}
.pq-sidebar nav button{color:#f2f2ef!important;background:transparent!important;}
.pq-sidebar nav button.active{background:#171717!important;border-color:#555!important;color:#fff!important;}
.pq-brand-img{width:44px;height:44px;border-radius:14px;object-fit:cover;box-shadow:0 0 0 1px #72500f,0 8px 20px #0008;}
.pq-brand strong{font-family:var(--pq-font-title);color:var(--pq-text);font-size:17px;}
.pq-wallet span{background:#101010!important;border-color:#333!important;}
.pq-chat-layout{align-items:start;}
.pq-msg{background:#141414!important;border-color:#333!important;}
.pq-msg.user{background:#201806!important;border-color:#9b6b12!important;}
.pq-thread-list button{background:#090909!important;border-color:#333!important;}
.pq-thread-list button.active{background:#1d1505!important;border-color:#d99a16!important;}
.pq-router,.pq-composer{background:#090909!important;border-color:#333!important;}
.pq-table th{color:var(--pq-gold)!important;}
.pq-filter-bar,.pq-period{background:#080808!important;border-color:#333!important;}
.pq-filters{background:#0b0b0b!important;border-color:#333!important;}
.pq-tree{border-top:1px solid #333!important;}
.pq-children{background:#151515!important;border-color:#333!important;}
.pq-line,.pq-quest,.pq-objective{border-color:#333!important;}
.pq-menu-wrap{position:relative;display:inline-block;margin-left:auto;}
.pq-menu-wrap summary{list-style:none;cursor:pointer;user-select:none;}
.pq-menu-wrap summary::-webkit-details-marker{display:none;}
.pq-menu-summary{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;border:1px solid #444;background:#111;color:#fff;font-weight:900;}
.pq-menu-wrap[open] .pq-menu-summary{border-color:#fff;background:#202020;}
.pq-pop{background:#222!important;border-color:#444!important;}
.pq-pop button:hover{background:#333!important;}
.pq-fatal{padding:32px;color:#fff;background:#050505;min-height:100vh;}
.pq-fatal h1{font-family:var(--pq-font-title);color:var(--pq-gold);font-size:56px;}
.pq-fatal pre{background:#111;border:1px solid #333;border-radius:14px;padding:18px;white-space:pre-wrap;}
@media(max-width:900px){.pq-main{padding:0 14px 40px}.pq-display{font-size:52px}.pq-app{display:block}}

/* Patch 2026-05-20b: align standalone React shell with the legacy Tailwind ProjectQuest theme. */
:root{
  --pq-bg-rgb:10 10 10;
  --pq-bg-panel-rgb:23 23 23;
  --pq-bg-subtle-rgb:38 38 38;
  --pq-text-rgb:245 245 245;
  --pq-text-muted-rgb:163 163 163;
  --pq-border-rgb:38 38 38;
  --pq-border-soft-rgb:64 64 64;
  --pq-primary-300-rgb:252 211 77;
  --pq-primary-400-rgb:251 191 36;
  --pq-primary-500-rgb:245 158 11;
  --pq-primary-600-rgb:217 119 6;
  --pq-secondary-500-rgb:16 185 129;
  --pq-macro-protein-rgb:76,199,69;
  --pq-macro-carbs-rgb:27,60,107;
  --pq-macro-fat-rgb:247,240,99;
  --pq-macro-fiber-rgb:204,103,49;
  --pq-bg:#0a0a0a;
  --pq-bg-2:#050505;
  --pq-panel:#171717;
  --pq-panel-2:#262626;
  --pq-panel-warm:#1f1604;
  --pq-line:#262626;
  --pq-line-soft:#404040;
  --pq-gold:#f59e0b;
  --pq-gold-bright:#fbbf24;
  --pq-gold-soft:#fcd34d;
  --pq-gold-2:#d97706;
  --pq-gold-3:#451a03;
  --pq-text:#f5f5f5;
  --pq-muted:#a3a3a3;
  --pq-success:#064e3b;
  --pq-danger:#4c0519;
  --pq-radius:18px;
  --pq-font-title:"Cinzel Decorative",Cinzel,Georgia,"Times New Roman",serif;
  --pq-font-body:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
html,body,#projectquest-root{background:var(--pq-bg)!important;color:var(--pq-text)!important;min-height:100%;}
body,.pq-app,.pq-main{font-family:var(--pq-font-body)!important;background:#0a0a0a!important;color:var(--pq-text)!important;}
.pq-sidebar{background:#050505!important;border-right:1px solid #262626!important;}
.pq-topbar{background:#0a0a0a!important;border-bottom:1px solid #262626!important;}
.pq-title-brand,.pq-brand strong,.pq-display,.pq-gold{font-family:var(--pq-font-title)!important;color:var(--pq-gold-bright)!important;}
.pq-title-brand{font-size:23px;letter-spacing:.025em;}
.pq-display{font-size:clamp(58px,6vw,96px)!important;line-height:.92!important;letter-spacing:-.06em!important;margin-top:22px!important;}
.pq-subtitle{color:#e5e5e5!important;}
.pq-card,.pq-thread-list,.pq-chat-panel,.pq-auth-card,.pq-macro-card{background:#171717!important;border:1px solid #404040!important;box-shadow:none!important;}
.pq-stat-grid .pq-card{background:#171717!important;border-color:#404040!important;}
.pq-stat-grid strong{color:#fff!important;}
.pq-btn,.pq-btn-ghost{background:#171717!important;border:1px solid #525252!important;color:#fff!important;border-radius:14px!important;}
.pq-btn-primary,.pq-tabs .active{background:linear-gradient(180deg,#fbbf24,#d97706)!important;border-color:#f59e0b!important;color:#050505!important;}
.pq-input,.pq-textarea,.pq-select{background:#0a0a0a!important;border:1px solid #525252!important;color:#fff!important;border-radius:14px!important;}
.pq-input::placeholder,.pq-textarea::placeholder{color:#737373!important;}
.pq-input:focus,.pq-textarea:focus,.pq-select:focus{outline:2px solid rgba(245,158,11,.55)!important;border-color:#f59e0b!important;box-shadow:none!important;}
.pq-sidebar nav button{color:#f5f5f5!important;background:transparent!important;border:1px solid transparent!important;font-weight:650;}
.pq-sidebar nav button.active{background:#171717!important;border-color:#525252!important;color:#fff!important;}
.pq-brand-img{width:48px!important;height:48px!important;border-radius:14px!important;object-fit:cover!important;box-shadow:0 0 0 1px #92400e,0 10px 24px #000!important;}
.pq-wallet span{background:#0a0a0a!important;border:1px solid #404040!important;color:#fff!important;}
.pq-realm-picker .pq-select{background:#0a0a0a!important;border-color:#404040!important;}
.pq-msg,.pq-thread-list button{background:#171717!important;border-color:#404040!important;}
.pq-msg.user{background:#1f1604!important;border-color:#92400e!important;}
.pq-thread-list button.active{background:#1f1604!important;border-color:#f59e0b!important;}
.pq-router,.pq-composer{background:#0a0a0a!important;border-color:#404040!important;}
.pq-table th{color:#fcd34d!important;}
.pq-filter-bar,.pq-period,.pq-filters{background:#0a0a0a!important;border-color:#404040!important;}
.pq-tree{border-top:1px solid #404040!important;}
.pq-line{border-bottom:1px solid #262626!important;}
.pq-children{background:#171717!important;border:1px solid #404040!important;}
.pq-quest,.pq-objective{border-color:#404040!important;}
.pq-round{background:#050505!important;border-color:#525252!important;color:#f5f5f5!important;}
.pq-menu-summary{background:#171717!important;border-color:#525252!important;color:#fff!important;}
.pq-pop{background:#262626!important;border-color:#404040!important;}
.pq-pop button:hover{background:#404040!important;}
.pq-badge{background:#0a0a0a!important;border-color:#404040!important;color:#e5e5e5!important;}
.pq-success{background:#064e3b!important;border-color:#10b981!important;color:#ecfdf5!important;}
.pq-error{background:#4c0519!important;border-color:#f43f5e!important;color:#fff1f2!important;}
.pq-fatal{padding:32px;background:#0a0a0a;color:#f5f5f5;min-height:100vh;}
.pq-fatal h1{font-family:var(--pq-font-title);color:#fbbf24;font-size:56px;}
.pq-fatal pre{background:#171717;border:1px solid #404040;border-radius:14px;padding:18px;white-space:pre-wrap;}

/* Patch 2026-05-20c: usability polish and richer filter panel. */
.pq-brand-img{box-shadow:none!important;border:1px solid #3a2a08!important;background:#050505!important;}
.pq-brand strong{color:#fbbf24!important;}
.pq-brand small{color:#d7d7d7!important;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pq-thread-list .pq-btn-primary,.pq-thread-list .pq-row .pq-btn{background:linear-gradient(180deg,#fbbf24,#d97706)!important;border-color:#f59e0b!important;color:#050505!important;text-align:center!important;justify-content:center!important;}
.pq-thread-list .pq-row{align-items:center;justify-content:space-between;gap:12px;}
.pq-thread-list .pq-row h3{margin-right:auto;}
.pq-filters-grid{grid-template-columns:repeat(4,minmax(180px,1fr))!important;align-items:end;}
.pq-filters-grid label{display:grid;gap:7px;color:#e5e5e5;font-size:13px;font-weight:700;}
.pq-filters-grid label:first-child{grid-column:1/-1;}
.pq-filter-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #262626;padding-top:12px;}
.pq-link-button{background:transparent;border:0;color:#fcd34d;text-decoration:underline;font-weight:800;cursor:pointer;padding:8px 0;}
.pq-router-group{display:grid;gap:3px;border-top:1px solid #262626;margin-top:8px;padding-top:8px;}
.pq-router-group b{color:#fcd34d;}
.pq-router-group small{display:block;color:#a3a3a3;margin-top:2px;}
.pq-table td:first-child{max-width:520px;white-space:normal;}
.pq-page{padding-bottom:64px;}
@media(max-width:1200px){.pq-filters-grid{grid-template-columns:repeat(2,minmax(180px,1fr))!important;}}
@media(max-width:700px){.pq-filters-grid{grid-template-columns:1fr!important;}.pq-filter-footer{display:grid;}.pq-brand-img{width:42px!important;height:42px!important;}}

/* Patch 2026-05-20c: restored Food History analytics, Character targets, diary/wallet pages. */
:root{
  --macro-protein:#45c846;
  --macro-carbs:#1e4f86;
  --macro-fat:#ece85e;
  --macro-fiber:#c86432;
}
.pq-space{justify-content:space-between}.pq-link-button{background:transparent;border:0;color:var(--pq-gold-bright,var(--pq-gold));font-weight:800;text-decoration:underline;cursor:pointer}.pq-section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.pq-macro-grid-colored{grid-template-columns:repeat(5,minmax(150px,1fr));align-items:stretch}.pq-macro-card{position:relative;overflow:hidden;min-height:112px;background:#111!important;border:1px solid #333!important}.pq-macro-fill{position:absolute;left:0;right:0;bottom:0;opacity:.72;transition:height .25s ease}.pq-macro-content{position:relative;z-index:2}.pq-macro-content span{display:block;font-weight:800;margin-bottom:6px}.pq-macro-content strong{font-size:32px;line-height:1.05}.pq-macro-content small{display:block;color:#fff;margin-top:4px}.pq-macro-content em{display:block;font-style:normal;color:#f5d072;margin-top:10px;font-size:12px}.pq-macro-calories .pq-macro-fill{background:linear-gradient(180deg,#333,#111)}.pq-macro-protein .pq-macro-fill{background:linear-gradient(180deg,var(--macro-protein),#1b5d1c)}.pq-macro-carbs .pq-macro-fill{background:linear-gradient(180deg,#2469b7,var(--macro-carbs))}.pq-macro-fat .pq-macro-fill{background:linear-gradient(180deg,var(--macro-fat),#8c8625)}.pq-macro-fiber .pq-macro-fill{background:linear-gradient(180deg,var(--macro-fiber),#74300f)}.pq-food-flow-card{min-height:420px}.pq-sankey{grid-template-columns:260px 1fr 220px;min-height:360px}.pq-sankey-meals{grid-template-columns:240px 210px 1fr 220px}.pq-sankey-mid{display:flex;flex-direction:column;justify-content:space-around;gap:12px}.pq-sankey-meal{background:#152719;border:1px solid #2e7332;border-radius:10px;padding:8px;font-weight:900}.pq-sankey-meal small,.pq-sankey-macro small{display:block;color:#d7dce7;font-size:11px}.pq-sankey-flow{min-height:340px}.pq-flow-line{box-shadow:0 0 20px #0009;opacity:.72}.pq-sankey-protein_g{border-color:var(--macro-protein)!important}.pq-sankey-carbs_g{border-color:var(--macro-carbs)!important}.pq-sankey-fat_g{border-color:var(--macro-fat)!important}.pq-sankey-fiber_g{border-color:var(--macro-fiber)!important}.pq-meal-row{margin:14px 0}.pq-stack{height:18px;background:#050505;border:1px solid #333;border-radius:999px;overflow:hidden;display:flex}.pq-stack span{display:block;height:100%}.pq-stack .protein{background:var(--macro-protein)}.pq-stack .carbs{background:var(--macro-carbs)}.pq-stack .fat{background:var(--macro-fat)}.pq-targets h2{font-size:24px;margin:0}.pq-target-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:14px 0}.pq-target-grid label{display:grid;gap:6px;color:#f4f4ee;font-weight:700}.pq-estimate-box{border:1px solid #333;border-radius:18px;padding:18px;margin:16px 0;background:#0d0d0d}.pq-diary-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);gap:18px}.pq-diary-entry{border-top:1px solid #333;padding:12px 0}.pq-diary-entry p{white-space:pre-wrap;line-height:1.45}.pq-food-remaining-strip{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.pq-food-remaining-strip span{border:1px solid #333;border-radius:999px;padding:6px 10px;background:#0d0d0d;color:#f5d072}@media(max-width:1100px){.pq-macro-grid-colored{grid-template-columns:repeat(2,minmax(160px,1fr))}.pq-sankey,.pq-sankey-meals{grid-template-columns:1fr}.pq-diary-grid{grid-template-columns:1fr}}

/* 2026-05-20 Food History Sankey restoration */
.pq-food-flow-card{min-height:560px;overflow:hidden;}
.pq-sankey-wrap{margin-top:18px;}
.pq-sankey-toolbar-note{color:#e7eaf2;font-size:14px;margin:0 0 10px;}
.pq-sankey-canvas{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:18px;align-items:stretch;min-height:430px;}
.pq-sankey-svg{width:100%;height:auto;min-height:410px;display:block;overflow:visible;background:transparent;}
.pq-sankey-link{mix-blend-mode:screen;filter:drop-shadow(0 0 8px rgba(0,0,0,.65));}
.pq-sankey-node rect{fill:#181818;stroke:#3c3c3c;stroke-width:1.2;}
.pq-sankey-node.food rect{fill:#142316;stroke:#355c35;}
.pq-sankey-node.food:nth-of-type(odd) rect{fill:#141f2b;stroke:#29405f;}
.pq-sankey-node.meal rect{fill:#1a1a1a;stroke:#5b4d1f;}
.pq-sankey-node.macro.protein rect{stroke:var(--macro-protein);}
.pq-sankey-node.macro.carbs rect{stroke:var(--macro-carbs);}
.pq-sankey-node.macro.fat rect{stroke:var(--macro-fat);}
.pq-sankey-node.macro.fiber rect{stroke:var(--macro-fiber);}
.pq-sankey-node-title{font-family:var(--pq-font-body);font-size:13px;font-weight:900;fill:#fff;paint-order:stroke;stroke:#000;stroke-width:3px;stroke-linejoin:round;}
.pq-sankey-node-sub{font-size:11px;fill:#bfc8d8;paint-order:stroke;stroke:#000;stroke-width:2px;}
.pq-sankey-percent{height:100%;min-height:390px;border:1px solid #3c3c3c;border-radius:16px;background:#111;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;padding:8px;box-shadow:inset 0 0 0 1px #000;}
.pq-sankey-percent-seg{position:relative;min-height:18px;border-radius:8px;margin:1px 0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:900;text-shadow:0 1px 2px #000;}
.pq-sankey-percent-seg.protein{background:linear-gradient(180deg,#43d44f,#1f7b25);color:#67ff70;}
.pq-sankey-percent-seg.carbs{background:linear-gradient(180deg,#235da4,#0f2b50);color:#367bdf;}
.pq-sankey-percent-seg.fat{background:linear-gradient(180deg,#f5ee62,#9c982e);color:#ffff55;}
.pq-sankey-percent-seg.fiber{background:linear-gradient(180deg,#d96f32,#8d3516);color:#ff7c39;}
.pq-sankey-percent-seg span{position:relative;z-index:2;white-space:nowrap;}
@media(max-width:900px){.pq-sankey-canvas{grid-template-columns:1fr}.pq-sankey-percent{height:48px;min-height:48px;flex-direction:row}.pq-sankey-percent-seg{height:100%!important}}

/* Food editor patch: intuitive day/meal/item editing at the bottom of Food History. */
.pq-food-editor{margin-top:28px}
.pq-food-day{border:1px solid var(--pq-line);border-radius:16px;margin:12px 0;background:#0b0b0b;overflow:hidden}
.pq-food-day-head,.pq-food-meal-head{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #292929}
.pq-food-day-title{flex:1;min-width:0}.pq-food-day-title strong{display:block;font-size:20px}.pq-food-day-title small{display:block;color:var(--pq-muted);margin-top:3px}.pq-round.small{width:30px;height:30px;min-width:30px;font-size:14px}.pq-food-meals{padding:10px 16px 16px}.pq-food-meal{border:1px solid #303030;border-radius:14px;margin:10px 0;background:#121212}.pq-food-meal-head strong{min-width:120px}.pq-food-meal-head span{flex:1;color:var(--pq-muted)}.pq-food-items{padding:8px 14px 14px}.pq-food-item-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:center;border-top:1px solid #292929;padding:12px 0}.pq-food-item-row:first-child{border-top:0}.pq-food-item-row small{display:block;color:var(--pq-muted);margin-top:3px}.pq-pill{border:1px solid #3a3a3a;border-radius:999px;padding:4px 9px;color:#f6d170;background:#151515;font-size:12px}.pq-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:80;display:grid;place-items:center;padding:24px}.pq-modal{width:min(980px,96vw);max-height:90vh;overflow:auto;background:#111;border:1px solid #454545;border-radius:20px;padding:22px;box-shadow:0 25px 80px #000}.pq-food-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:14px 0}.pq-food-edit-grid label{display:grid;gap:6px;color:var(--pq-muted);font-size:13px}.pq-food-edit-form .pq-row{margin-top:10px}
@media(max-width:800px){.pq-food-item-row{grid-template-columns:1fr}.pq-food-day-head,.pq-food-meal-head{align-items:flex-start;flex-wrap:wrap}}

/* Seer Action Engine v1 */
.pq-seer-action-review{border-color:rgba(255,194,41,.35);background:linear-gradient(180deg,rgba(20,20,18,.98),rgba(10,10,9,.98));}
.pq-action-group{border:1px solid rgba(255,255,255,.15);border-radius:18px;margin:14px 0;padding:14px;background:rgba(255,255,255,.025);}
.pq-action-group h4{font-family:var(--pq-font-display);font-size:1.25rem;color:var(--pq-gold);margin:0 0 10px;}
.pq-action-card{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;border:1px solid rgba(255,255,255,.13);border-left:5px solid var(--pq-gold);border-radius:14px;padding:12px 14px;margin:10px 0;background:rgba(0,0,0,.28);cursor:pointer;}
.pq-action-card input{margin-top:6px;transform:scale(1.15);accent-color:var(--pq-gold);}
.pq-action-card.create{border-left-color:#a855f7;}
.pq-action-card.move{border-left-color:#3b82f6;}
.pq-action-card.update{border-left-color:#f59e0b;}
.pq-action-card.close{border-left-color:#22c55e;}
.pq-action-main strong{color:#fff;}
.pq-action-main p{margin:.4rem 0;color:#ddd;}
.pq-before-after{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.pq-before-after div{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:5px 10px;background:rgba(255,255,255,.04);font-size:.9rem;}
.pq-before-after span{color:#aaa;margin-right:6px;}
.pq-before-after b{color:#fff;}
.pq-mini-card.create{border-left:5px solid #a855f7;}
.pq-new-chat{box-shadow:0 0 0 1px rgba(255,194,41,.35),0 6px 20px rgba(255,166,0,.18);}

/* 2026-05-21: chat orchestration + mobile scroll cleanup */
.pq-router-note{margin:6px 0 10px!important;}
.pq-confirm-note{margin-top:12px;padding:10px 12px;border:1px solid #5b4513;border-radius:12px;background:#151007;color:#f8d678;font-weight:800;line-height:1.35;}
.pq-chat-panel-one-scroll{overflow:visible!important;}
.pq-messages-one-scroll{max-height:none!important;overflow:visible!important;min-height:0!important;padding:6px!important;}
.pq-chat-layout{align-items:start!important;}
.pq-chat-panel{position:relative!important;}
.pq-composer{position:sticky;bottom:0;background:#050505!important;border:1px solid #333!important;border-radius:16px;padding:12px!important;z-index:15;}
.pq-seer-action-review{scroll-margin-bottom:160px;}
.pq-trust-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px;}
.pq-trust-options button{background:#0a0a0a;border:1px solid #404040;color:#f5f5f5;border-radius:14px;padding:14px;text-align:left;cursor:pointer;display:grid;gap:6px;}
.pq-trust-options button.active{border-color:#f59e0b;background:#1f1604;box-shadow:0 0 0 1px #f59e0b66 inset;}
.pq-trust-options span{color:#b8b8b8;font-size:13px;line-height:1.35;}
@media(max-width:900px){
  .pq-chat-layout{display:block!important;}
  .pq-thread-list{margin-bottom:14px;max-height:none!important;overflow:visible!important;}
  .pq-msg{max-width:100%!important;}
  .pq-composer{position:static!important;}
}

/* Patch: Food grouping + macro rail order */
.pq-sankey-percent{flex-direction:column!important;}
.pq-food-meal-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.pq-food-item-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid #333;}
.pq-modal-backdrop{position:fixed;inset:0;background:#000b;z-index:50;display:grid;place-items:center;padding:20px;}
.pq-modal{background:#111;border:1px solid #444;border-radius:18px;padding:18px;max-width:900px;width:min(900px,94vw);max-height:90vh;overflow:auto;}
.pq-food-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;}
.pq-food-edit-grid label{display:grid;gap:6px;font-weight:800;}

/* Patch: non-destructive visual food groups */
.pq-food-group-card {
  border: 1px solid rgba(216, 163, 58, .45);
  background: rgba(216, 163, 58, .055);
  border-radius: 16px;
  padding: 12px;
  margin: 10px 0;
}
.pq-food-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.pq-food-group-disclosure { display:flex; align-items:center; gap:10px; min-width:0; }
.pq-food-group-disclosure>div { min-width:0; }
.pq-food-group-head strong { color: var(--pq-primary-400, #ffc629); }
.pq-food-group-head small,
.pq-food-group-children small { display:block; color: var(--pq-text-muted, #aab2c0); margin-top: 3px; }
.pq-food-group-children { margin-top: 8px; padding-left: 16px; border-left: 2px solid rgba(216, 163, 58, .35); }
.pq-food-ingredient-row { background: rgba(255,255,255,.025); }
.pq-group-modal .pq-group-pick-list { display:grid; gap:8px; margin: 12px 0; max-height: 360px; overflow:auto; }
.pq-group-pick { display:flex; align-items:flex-start; gap:10px; border:1px solid rgba(255,255,255,.14); border-radius:12px; padding:10px; background:rgba(0,0,0,.22); }
.pq-group-pick input { margin-top: 4px; }
.pq-group-pick small { display:block; color: var(--pq-text-muted, #aab2c0); margin-top: 3px; }

/* 2026-05-21 UX onboarding + RPG action queue + AI food lookup */
.pq-welcome-page .pq-intro-hero{position:relative;min-height:430px;border:1px solid #34280e;border-radius:28px;background:radial-gradient(circle at 50% 10%,rgba(255,198,41,.16),rgba(0,0,0,.25) 34%,#050505 70%);display:grid;place-items:center;text-align:center;overflow:hidden;padding:42px;margin-bottom:22px;}
.pq-rune-orb{width:112px;height:112px;border-radius:50%;border:2px solid var(--pq-gold,#ffc629);display:grid;place-items:center;margin:0 auto 18px;color:var(--pq-gold,#ffc629);font-family:var(--pq-font-display);font-size:68px;box-shadow:0 0 34px rgba(255,198,41,.34),inset 0 0 30px rgba(255,198,41,.10);animation:pqRunePulse 2.8s ease-in-out infinite;}
.pq-intro-title{font-family:var(--pq-font-display);font-size:clamp(3rem,8vw,8rem);line-height:.85;color:var(--pq-gold,#ffc629);margin:0;text-shadow:0 6px 30px rgba(255,166,0,.18);}
.pq-intro-sub{font-size:1.25rem;color:#e9e1c5;margin:14px 0 0;}
.pq-chaos-stack{position:absolute;inset:0;pointer-events:none;}
.pq-chaos-card{position:absolute;left:calc(8% + (var(--i) * 11%));top:calc(58% + ((var(--i) % 3) * 26px));transform:rotate(calc((var(--i) - 2) * 4deg));border:1px solid rgba(255,198,41,.32);background:rgba(16,16,16,.78);border-radius:14px;padding:10px 14px;color:#fff;font-weight:900;box-shadow:0 12px 25px rgba(0,0,0,.55);animation:pqCardGather 3.5s ease-in-out infinite alternate;}
.pq-intro-actions{position:relative;z-index:2;display:flex;gap:12px;justify-content:center;margin-top:28px;flex-wrap:wrap;}
.pq-onboarding-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;}
.pq-onboarding-card{max-width:820px;}
.pq-step-runes{display:flex;gap:10px;margin-bottom:18px;}
.pq-step-runes button{width:42px;height:42px;border-radius:50%;border:1px solid #555;background:#111;color:#ddd;font-weight:900;cursor:pointer;}
.pq-step-runes button.active{background:var(--pq-gold,#ffc629);color:#050505;border-color:var(--pq-gold,#ffc629);box-shadow:0 0 20px rgba(255,198,41,.28);}
@keyframes pqRunePulse{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.04);filter:brightness(1.25)}}
@keyframes pqCardGather{from{opacity:.45;transform:translateY(16px) rotate(calc((var(--i) - 2) * 4deg));}to{opacity:.95;transform:translateY(0) rotate(calc((var(--i) - 2) * 2deg));}}

.pq-action-card{grid-template-columns:auto auto 1fr!important;position:relative;}
.pq-action-card input[type="checkbox"]{position:absolute;opacity:0;pointer-events:none;}
.pq-rpg-check{display:inline-grid;place-items:center;width:34px;height:34px;min-width:34px;border-radius:50%;border:2px solid rgba(255,198,41,.6);background:#0b0b0b;color:#ffc629;font-weight:1000;box-shadow:inset 0 0 0 2px rgba(0,0,0,.6);cursor:pointer;user-select:none;}
.pq-action-card input:checked + .pq-rpg-check,.pq-ai-food-card.selected .pq-rpg-check{background:linear-gradient(180deg,#ffd95a,#f5a400);color:#050505;border-color:#ffe38a;box-shadow:0 0 18px rgba(255,198,41,.35),inset 0 0 0 2px rgba(255,255,255,.15);}
.pq-action-card:has(input:checked){border-color:rgba(34,197,94,.45);box-shadow:0 0 0 1px rgba(34,197,94,.18),0 0 32px rgba(34,197,94,.08);}
.pq-action-card .pq-pill{font-size:12px;}

.pq-ai-food-box{display:grid;gap:12px;width:100%;}
.pq-add-food .pq-row{margin-bottom:10px;}
.pq-add-food-manual{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-items:end;}
.pq-ai-food-list{display:grid;gap:10px;margin:8px 0;}
.pq-ai-food-card{display:grid;grid-template-columns:auto 1fr;gap:12px;border:1px solid rgba(255,255,255,.14);border-left:5px solid rgba(255,198,41,.45);border-radius:14px;padding:12px;background:#101010;align-items:start;}
.pq-ai-food-card.selected{border-color:rgba(255,198,41,.65);background:rgba(255,198,41,.055);box-shadow:0 0 0 1px rgba(255,198,41,.16) inset;}
.pq-ai-food-main strong{color:#fff;}
.pq-ai-food-main small{display:block;color:#b8bdc7;margin-top:5px;}
.pq-ai-food-edit{margin-top:8px;}
.pq-ai-food-edit summary{color:#ffc629;cursor:pointer;font-weight:900;}
.pq-group-pick input{appearance:none;width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,198,41,.55);background:#090909;position:relative;}
.pq-group-pick input:checked{background:linear-gradient(180deg,#ffd95a,#f5a400);border-color:#ffe38a;}
.pq-group-pick input:checked:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:#050505;font-weight:1000;font-size:14px;}

@media(max-width:760px){
  .pq-intro-hero{min-height:520px!important;padding:26px!important;}
  .pq-chaos-card{left:12%!important;right:12%;top:calc(56% + (var(--i) * 34px));font-size:13px;}
  .pq-action-card{grid-template-columns:auto 1fr!important;}
  .pq-action-card .pq-rpg-check{grid-row:1 / span 2;}
  .pq-add-food-manual{grid-template-columns:1fr;}
  .pq-ai-food-card{grid-template-columns:auto 1fr;}
}

/* V12 production-candidate UX hotfixes */
.pq-goal-callout{border:1px solid rgba(255,198,41,.32);background:rgba(255,198,41,.06);border-radius:16px;padding:12px;margin:14px 0;}
.pq-goal-callout strong{color:var(--pq-gold,#ffc629);display:block;margin-bottom:4px;}
.pq-action-card.pq-action-locked{opacity:.58;filter:grayscale(.45);border-style:dashed;background:rgba(255,255,255,.025);}
.pq-action-card.pq-action-locked .pq-rpg-check{border-color:#666;color:#888;background:#111;box-shadow:none;cursor:not-allowed;}
.pq-action-card.pq-action-locked input{cursor:not-allowed;}
.pq-pop button.disabled,.pq-pop button:disabled{opacity:.45;cursor:not-allowed;}
.pq-tree-row .pq-btn{white-space:nowrap;}
.pq-modal .pq-grid-3{align-items:end;}

/* V12.1 hotfix: usable top-right menu + empty-delete affordance */
.pq-main-menu{position:relative;display:inline-block;}
.pq-main-menu-pop{position:absolute;right:0;top:48px;width:min(360px,92vw);background:#171717;border:1px solid #444;border-radius:18px;padding:14px;z-index:100;box-shadow:0 24px 70px #000b;}
.pq-menu-section{border-bottom:1px solid #2e2e2e;padding:8px 0 12px;}
.pq-menu-section:last-of-type{border-bottom:0;}
.pq-menu-section small{display:block;color:#aeb6c8;text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;}
.pq-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.pq-menu-grid button,.pq-menu-logout{border:1px solid #3e3e3e;background:#101010;color:#fff;border-radius:12px;padding:11px 12px;text-align:left;font-weight:800;cursor:pointer;}
.pq-menu-grid button:hover,.pq-menu-logout:hover{border-color:#f0b526;background:#201a0b;}
.pq-menu-logout{width:100%;margin-top:10px;}
.pq-btn-danger{background:#5b1717!important;border-color:#8a2a2a!important;color:#fff!important;}
.pq-ai-food-card.selected{box-shadow:0 0 0 1px #f0b526 inset;}

/* V12.2 chat bulk actions and clearer action rows */
.pq-chat-toolbar{margin-bottom:1rem;}
.pq-thread-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;border-bottom:1px solid rgba(255,255,255,.09);padding:.25rem .35rem;}
.pq-thread-row>button:not(.pq-icon-btn){width:100%;text-align:left;background:transparent;border:0;color:inherit;padding:.85rem .6rem;border-radius:.75rem;}
.pq-thread-row.active>button:not(.pq-icon-btn),.pq-thread-row>button:not(.pq-icon-btn):hover{background:rgba(255,255,255,.06);}
.pq-thread-row strong{display:block;}
.pq-thread-row small{display:block;color:var(--pq-muted,#a9b3c1);margin-top:.2rem;}
.pq-icon-btn{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:inherit;border-radius:.7rem;padding:.55rem .65rem;cursor:pointer;}
.pq-icon-btn:hover{background:rgba(255,80,80,.14);border-color:rgba(255,80,80,.4);}
.pq-action-group h4::before{content:'Parent: ';color:var(--pq-muted,#a9b3c1);font-weight:600;}

/* V12.3 Seer hierarchy preview */
.pq-action-hierarchy{padding:1rem;border-left:2px solid rgba(255,193,7,.35)}
.pq-action-subgroup{margin:.75rem 0 .75rem 1.5rem;padding:.75rem;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.025)}
.pq-existing-context{display:flex;gap:.65rem;align-items:center;margin:.25rem 0 .5rem;color:#d7d7d7;opacity:.82}
.pq-existing-context strong{color:#f6c744}
.pq-existing-context small{color:#9fa8b5}
.pq-action-locked{opacity:.62;filter:grayscale(.25)}


/* V12.5 grouped navigation and chat polish */
.pq-side-nav{display:flex;flex-direction:column;gap:.35rem;}
.pq-nav-group{border-bottom:1px solid rgba(255,255,255,.08);padding:.25rem 0 .45rem;}
.pq-nav-group-head{width:100%;display:flex;align-items:center;justify-content:space-between;background:transparent;border:0;color:#b9c4d4;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;padding:.35rem .45rem;cursor:pointer;}
.pq-nav-group-head b{color:#ffc62b;font-size:1rem;}
.pq-nav-group-items{display:flex;flex-direction:column;gap:.25rem;}
.pq-thread-actions{position:relative;margin-left:.4rem;}
.pq-thread-actions summary{list-style:none;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.2rem .55rem;cursor:pointer;}
.pq-thread-actions summary::-webkit-details-marker{display:none;}
.pq-thread-actions .pq-pop{right:0;left:auto;min-width:160px;}
.pq-thread-row{grid-template-columns:auto 1fr auto;}

/* 2026-05-23 QuestLog + Goals iteration */
.pq-questlog-summary{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px;margin:12px 0 18px;}
.pq-stat-panel{margin:0!important;}
.pq-stat-grid.compact{grid-template-columns:repeat(4,minmax(110px,1fr));}
.pq-mini-card{border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.28);border-radius:14px;padding:12px;}
.pq-mini-card strong{display:block;font-size:1.55rem;color:#fff;line-height:1;}
.pq-mini-card span{display:block;color:var(--pq-muted,#aeb8cc);font-size:.82rem;margin-top:.35rem;text-transform:capitalize;}
.pq-picker-modal .pq-input{margin:10px 0 12px;}
.pq-picker-list{display:grid;gap:8px;max-height:420px;overflow:auto;margin:12px 0;}
.pq-pick-row{width:100%;display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:center;text-align:left;border:1px solid rgba(255,255,255,.14);background:#101010;color:#fff;border-radius:14px;padding:12px 14px;cursor:pointer;}
.pq-pick-row:hover{border-color:rgba(255,198,41,.45);background:#17130a;}
.pq-pick-row.selected{border-color:#ffc629;background:rgba(255,198,41,.12);box-shadow:0 0 0 1px rgba(255,198,41,.25) inset;}
.pq-pick-row small{grid-column:1/-1;color:var(--pq-muted,#aeb8cc);}
.pq-pick-row.compact{grid-template-columns:1fr auto;margin-top:8px;}
.pq-confirm-modal{max-width:560px!important;}
.pq-drag-handle{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.18);border-radius:9px;color:#ffc629;background:#111;cursor:grab;user-select:none;}
.pq-quest[draggable="true"]{cursor:default;}
.pq-line.drop-ready>.pq-tree-row{outline:1px dashed rgba(255,198,41,.4);outline-offset:-4px;background:rgba(255,198,41,.035);}
.pq-pop button.disabled,.pq-pop button:disabled{opacity:.45;cursor:not-allowed;color:#98a1b3;}
.pq-goals-layout{display:grid;grid-template-columns:minmax(340px,500px) minmax(0,1fr);gap:18px;align-items:start;}
.pq-goal-form label{display:grid;gap:7px;margin:10px 0;color:#e6e6e6;font-weight:800;}
.pq-goal-list{display:grid;gap:12px;}
.pq-goal-card{background:var(--pq-panel,#111);border:1px solid var(--pq-line,#333);border-radius:20px;padding:18px;}
.pq-goal-card h3{margin:.15rem 0 .35rem;color:#fff;}
.pq-progress{height:10px;border-radius:999px;background:#080808;border:1px solid #333;overflow:hidden;margin:14px 0;}
.pq-progress span{display:block;height:100%;background:linear-gradient(90deg,#7f5d10,#ffc629);border-radius:999px;}
.pq-goal-note{border:1px solid rgba(255,255,255,.1);border-left:4px solid rgba(255,198,41,.55);background:rgba(255,255,255,.035);border-radius:12px;padding:10px 12px;margin:10px 0;}
.pq-goal-note strong{color:#ffc629;display:block;margin-bottom:4px;}
.pq-goal-note p{margin:0;color:#e7e7e7;white-space:pre-wrap;}
.pq-goal-link-box{border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:12px;background:#0b0b0b;margin:12px 0;}
.pq-goal-link-box>strong{display:block;color:#ffc629;margin-bottom:6px;}
.pq-linked-list{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;}
.pq-linked-chip{border:1px solid rgba(255,198,41,.35);background:rgba(255,198,41,.07);border-radius:999px;padding:6px 10px;color:#f6d170;font-size:.82rem;font-weight:800;}
.pq-row.pq-wrap{flex-wrap:wrap;}
.pq-action-group{border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px;margin:14px 0;background:rgba(0,0,0,.18);}
.pq-action-group h4{margin:.1rem 0 .25rem;color:#f6c744;}
.pq-empty{border:1px dashed rgba(255,255,255,.16);border-radius:16px;padding:18px;color:var(--pq-muted,#aeb8cc);}
.pq-link-button{background:transparent;border:0;color:#ffc629;text-decoration:underline;cursor:pointer;font-weight:900;}
.pq-grid-3{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;}
.pq-grid-3 label{display:grid;gap:6px;}
@media(max-width:1100px){.pq-questlog-summary,.pq-goals-layout{grid-template-columns:1fr}.pq-stat-grid.compact{grid-template-columns:repeat(2,minmax(120px,1fr));}.pq-grid-3{grid-template-columns:1fr 1fr;}}
@media(max-width:700px){.pq-stat-grid.compact,.pq-grid-3{grid-template-columns:1fr}.pq-pick-row{grid-template-columns:1fr}.pq-quest-actions{justify-content:flex-start}.pq-drag-handle{display:none}.pq-tree-row{align-items:flex-start}.pq-objectives{padding-left:20px}.pq-modal{width:96vw!important;}}

/* 2026-05-23 follow-up: Goals clarity, QuestLog cleanup actions, and chat food review. */
.pq-action-card.delete{border-left-color:#ef4444;}
.pq-table.compact th,.pq-table.compact td{padding:6px 8px;font-size:13px;}
.pq-food-preview{border:1px solid #333;border-radius:14px;margin-top:10px;padding:12px;background:#0b0b0b;}
.pq-food-preview-group{border:1px solid rgba(255,194,31,.35);border-radius:14px;padding:10px;margin:10px 0;background:#171105;}
.pq-food-preview-group small{display:block;color:var(--pq-muted);margin-top:3px;}
.pq-food-confirm-actions{margin-top:12px;border-top:1px solid #303030;padding-top:10px;}
.pq-goal-primer{border-color:rgba(255,194,31,.28);background:linear-gradient(180deg,#14110a,#101010);}
.pq-goal-primer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0;}
.pq-goal-primer-grid span{border:1px solid #333;border-radius:12px;padding:10px;background:#090909;}
.pq-goal-primer-grid strong{display:block;color:var(--pq-gold);}
.pq-goal-primer-grid small{display:block;color:var(--pq-muted);margin-top:4px;line-height:1.35;}
.pq-goal-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;border:1px solid #333;border-radius:14px;padding:8px;margin:8px 0;background:#0b0b0b;}
.pq-goal-link-row.selected{border-color:var(--pq-gold-2);background:#221903;box-shadow:inset 0 0 0 1px rgba(255,194,31,.25);}
.pq-goal-link-row.empty{opacity:.82;}
.pq-goal-link-main{display:block;text-align:left;background:transparent!important;border:0!important;color:#fff!important;padding:6px!important;cursor:pointer;width:100%;}
.pq-goal-link-main span{display:block;font-weight:900;}
.pq-goal-link-main small{display:block;color:var(--pq-muted);margin-top:4px;}
.pq-goal-link-box .pq-small{font-size:12px;}
@media(max-width:850px){.pq-goal-link-row{grid-template-columns:1fr}.pq-food-preview{overflow:auto}}

/* Billing / store */
.pq-grid-two{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:16px;align-items:stretch}.pq-grid-two .pq-card{margin:0}.pq-card ul{margin:10px 0 0 20px;color:#d6dbe7}.pq-card li{margin:6px 0}@media(max-width:900px){.pq-grid-two{grid-template-columns:1fr}}

.pq-invite-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-top:1px solid #333;padding:12px 0;flex-wrap:wrap}.pq-invite-row small{display:block;color:var(--pq-muted);margin-top:4px}.pq-invite-row code{display:block;max-width:min(760px,86vw);white-space:normal;word-break:break-all;color:#f6c453;background:#090909;border:1px solid #333;border-radius:8px;padding:6px;margin-top:6px}

/* 2026-05-23 billing checkout polish */
.pq-mini-ledger{display:grid;grid-template-columns:repeat(3,max-content);gap:12px;align-items:center;margin-top:8px;color:var(--pq-muted,#aeb8cc);font-size:.9rem;}
.pq-mini-ledger strong{color:#fff;}
@media(max-width:700px){.pq-mini-ledger{grid-template-columns:1fr;gap:4px;}}

/* 2026-05-24 production pass: Solo/Team billing, Coins/Gems wallet, welcome tutorial, and Fate placement. */
.pq-topbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
.pq-main-menu{position:relative;display:inline-block;}
.pq-menu{position:absolute;right:0;top:48px;width:min(420px,92vw);max-height:72vh;overflow:auto;background:#171717;border:1px solid #444;border-radius:18px;padding:14px;z-index:100;box-shadow:0 24px 70px #000b;}
.pq-menu-section{display:grid;gap:8px;border-bottom:1px solid #2e2e2e;padding:8px 0 12px;}
.pq-menu-section strong{display:block;color:#ffc629;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;}
.pq-menu-section button,.pq-menu>button{border:1px solid #3e3e3e;background:#101010;color:#fff;border-radius:12px;padding:10px 12px;text-align:left;font-weight:800;cursor:pointer;}
.pq-menu-section button:hover,.pq-menu>button:hover{border-color:#f0b526;background:#201a0b;}
.pq-menu hr{border:0;border-top:1px solid #333;margin:10px 0;}
.pq-wallet{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.9rem;color:#f8e5a6;}
.pq-wallet span{border:1px solid rgba(255,198,41,.25);background:rgba(255,198,41,.08);border-radius:999px;padding:6px 10px;font-weight:900;}
.pq-tutorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px 0;}
.pq-callout{border-color:rgba(255,198,41,.36)!important;background:linear-gradient(180deg,rgba(255,198,41,.09),rgba(0,0,0,.24));}
.pq-callout h3{color:#ffc629;}
.pq-plan-card{display:flex;flex-direction:column;justify-content:space-between;min-height:260px;}
.pq-plan-card h3{font-size:1.6rem;margin-bottom:.35rem;color:#fff;}
.pq-recommendation{border:1px solid rgba(255,255,255,.12);border-left:4px solid rgba(255,198,41,.72);border-radius:14px;padding:12px 14px;margin:10px 0;background:rgba(0,0,0,.26);}
.pq-recommendation strong{display:block;color:#fff;margin-bottom:4px;}
.pq-recommendation p{margin:0 0 6px;color:#e7eaf0;line-height:1.45;}
.pq-recommendation small{display:block;color:var(--pq-muted,#aeb8cc);line-height:1.35;}
.pq-recommendation.pq-severity-high,.pq-severity-high{border-left-color:#ef4444;background:linear-gradient(90deg,rgba(239,68,68,.14),rgba(0,0,0,.25));}
.pq-recommendation.pq-severity-medium,.pq-severity-medium{border-left-color:#f59e0b;background:linear-gradient(90deg,rgba(245,158,11,.13),rgba(0,0,0,.25));}
.pq-recommendation.pq-severity-low,.pq-severity-low{border-left-color:#22c55e;background:linear-gradient(90deg,rgba(34,197,94,.11),rgba(0,0,0,.25));}
.pq-mini-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:9px 11px;margin:8px 0;background:#0b0b0b;}
.pq-mini-row span{font-weight:900;color:#fff;}
.pq-mini-row small{color:var(--pq-muted,#aeb8cc);text-align:right;}
.pq-badge{display:inline-flex;align-items:center;border:1px solid rgba(255,198,41,.35);background:rgba(255,198,41,.08);border-radius:999px;padding:4px 9px;color:#f8d36e;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;}
@media(max-width:900px){.pq-topbar{height:auto;min-height:70px;align-items:flex-start;padding:12px 0;gap:12px;}.pq-wallet{flex-wrap:wrap}.pq-menu{right:auto;left:0;}}
@media(max-width:700px){.pq-mini-row{align-items:flex-start;flex-direction:column}.pq-mini-row small{text-align:left}.pq-wallet{justify-content:flex-end}.pq-plan-card{min-height:0}}

/* 2026-05-24 v3 dashboard / Fate interaction patch */
.pq-dashboard-grid .pq-card p{margin:.45rem 0 0;}
.pq-grid-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;align-items:start;}
.pq-click-row{width:100%;display:flex;justify-content:space-between;gap:16px;align-items:flex-start;text-align:left;background:#0b0d12;border:1px solid #343b4d;color:#fff;border-radius:14px;padding:12px 14px;margin:9px 0;cursor:pointer;}
.pq-click-row:hover{border-color:var(--pq-gold-2);filter:brightness(1.08);}
.pq-click-row strong{display:block;color:#fff;}
.pq-click-row span{color:var(--pq-muted);font-size:13px;line-height:1.35;}
.pq-recommendation{border:1px solid rgba(255,255,255,.13);border-left:5px solid var(--pq-gold-2);border-radius:14px;padding:14px;margin:12px 0;background:rgba(0,0,0,.24);}
.pq-recommendation.pq-actionable .pq-row{margin-top:10px;}
.pq-severity-high{border-left-color:#ef4444!important;}
.pq-severity-medium{border-left-color:#f59e0b!important;}
.pq-severity-low{border-left-color:#22c55e!important;}
.pq-gatekeeper-item{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:13px;margin:10px 0;background:#0d1017;}
.pq-gatekeeper-item strong{display:block;}
.pq-gatekeeper-item small{display:block;color:var(--pq-muted);margin-top:4px;}
.pq-pad-top{margin-top:12px;}

/* 2026-05-25 v4 multiplayer realm coordination and tutorials */
.pq-view-toggle{display:inline-flex;gap:8px;align-items:center;background:#0b0d12;border:1px solid #303747;border-radius:999px;padding:6px;}
.pq-view-toggle .pq-btn{border-radius:999px;margin:0;}
.pq-table-lite{display:grid;gap:8px;margin-top:10px;}
.pq-table-row{display:grid;grid-template-columns:minmax(140px,1.5fr) repeat(4,minmax(70px,.75fr));gap:10px;align-items:center;border:1px solid rgba(255,255,255,.11);border-radius:12px;padding:10px 12px;background:#0b0d12;}
.pq-table-row strong{color:#fff;}
.pq-table-row span{color:var(--pq-muted);font-size:13px;}
.pq-needs-attention{border-left:5px solid #f59e0b!important;background:linear-gradient(90deg,rgba(245,158,11,.12),rgba(0,0,0,.24));}
.pq-tutorial-steps{display:grid;gap:10px;margin-top:12px;}
.pq-tutorial-step{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;background:#0b0d12;}
.pq-tutorial-step b{display:block;color:#ffc629;margin-bottom:4px;}
.pq-tutorial-step p{margin:0;color:#dce3f0;line-height:1.45;}
.pq-grid-2{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;}
.pq-select[multiple]{min-height:92px;padding-top:8px;padding-bottom:8px;}
@media(max-width:820px){.pq-table-row{grid-template-columns:1fr 1fr;}.pq-grid-2{grid-template-columns:1fr}.pq-view-toggle{width:100%;justify-content:stretch}.pq-view-toggle .pq-btn{flex:1;}}

/* 2026-05-25 v6 chat, archive, goal edit, and due-date preview polish */
.pq-wide-modal{width:min(980px,96vw);max-height:88vh;overflow:auto;}
.pq-goal-edit-modal label{display:grid;gap:6px;margin:9px 0;font-weight:800;color:#f0f3fb;}
.pq-goal-edit-link-list{display:grid;gap:8px;max-height:280px;overflow:auto;padding:4px 2px;}
.pq-check-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:9px 10px;background:#0b0d12;}
.pq-check-row span{font-weight:900;color:#fff;}
.pq-check-row small{color:var(--pq-muted);}
.pq-due-plan-list{display:grid;gap:10px;margin:14px 0;max-height:54vh;overflow:auto;padding-right:4px;}
.pq-due-plan-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,auto);gap:14px;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;background:#0b0d12;}
.pq-due-plan-row strong{display:block;color:#fff;}
.pq-due-plan-row small{display:block;color:var(--pq-muted);margin-top:4px;line-height:1.35;}
.pq-date-change{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;font-weight:900;}
.pq-date-change span{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:6px 9px;background:#111827;color:#dce3f0;}
.pq-date-change b{color:#ffc629;}
.pq-chat-panel .pq-composer{border-top:1px solid rgba(255,255,255,.12);padding-top:12px;margin-top:12px;}
.pq-chat-panel .pq-composer .pq-textarea{min-height:110px;}
.pq-chat-panel .pq-composer input[type=file]{max-width:100%;color:#e6edf8;}
.pq-archive-card{border-left:4px solid rgba(255,198,41,.55);}
.pq-archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;}
@media(max-width:760px){.pq-due-plan-row{grid-template-columns:1fr}.pq-date-change{justify-content:flex-start}.pq-check-row{grid-template-columns:auto 1fr}.pq-check-row small{grid-column:2}}

/* 2026-05-25 v6 chat, archive, due-date preview, and goal editing polish */
.pq-wide-modal{width:min(1120px,96vw);} 
.pq-goal-edit-modal label{display:grid;gap:6px;color:#d6dbe7;font-weight:800;margin:8px 0;}
.pq-goal-edit-modal .pq-textarea{min-height:82px;}
.pq-goal-edit-link-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;margin-top:10px;max-height:260px;overflow:auto;padding-right:4px;}
.pq-check-row{display:flex!important;align-items:flex-start;gap:10px;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px;background:#0b0d12;color:#fff;font-weight:800;}
.pq-check-row small{display:block;color:var(--pq-muted);font-weight:500;margin-top:2px;}
.pq-due-plan-list{display:grid;gap:10px;margin:14px 0;max-height:54vh;overflow:auto;padding-right:4px;}
.pq-due-plan-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,auto);gap:14px;align-items:center;border:1px solid rgba(255,255,255,.13);border-radius:14px;padding:12px;background:#0b0d12;}
.pq-due-plan-row strong{display:block;color:#fff;}
.pq-due-plan-row small{display:block;color:var(--pq-muted);margin-top:4px;line-height:1.35;}
.pq-date-change{display:flex;gap:9px;align-items:center;justify-content:flex-end;white-space:nowrap;color:#e6ebf5;}
.pq-date-change span{border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:5px 9px;background:#090909;}
.pq-date-change b{color:#ffc629;}
.pq-confirm-note{border:1px solid rgba(255,198,41,.3);border-radius:12px;background:rgba(255,198,41,.08);padding:10px 12px;color:#ffd772;font-weight:900;margin:10px 0;}
.pq-small{font-size:12px;line-height:1.4;}
.pq-composer .pq-small{margin:.4rem 0 0;}
.pq-thread-row.active{border-color:var(--pq-gold-2);background:rgba(255,198,41,.08);} 
.pq-thread-actions summary,.pq-menu-summary{list-style:none;cursor:pointer;border:1px solid #3a3a3a;border-radius:999px;padding:5px 11px;background:#101010;color:#fff;font-weight:900;}
.pq-thread-actions summary::-webkit-details-marker,.pq-menu-summary::-webkit-details-marker{display:none;}
.pq-menu-wrap .disabled{opacity:.45;cursor:not-allowed;}
.pq-tree-row .pq-badge + .pq-muted{margin-left:auto;}
.pq-line.drop-ready{outline:1px dashed rgba(255,198,41,.55);outline-offset:-6px;background:rgba(255,198,41,.04);}
@media(max-width:760px){.pq-due-plan-row{grid-template-columns:1fr}.pq-date-change{justify-content:flex-start;flex-wrap:wrap}.pq-goal-edit-link-list{grid-template-columns:1fr}}

/* 2026-05-25 v6 final polish: seeded chat prompts and attachment preview */
.pq-seed-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;border-left:5px solid var(--pq-gold-2);background:linear-gradient(90deg,rgba(255,198,41,.12),rgba(0,0,0,.18));}
.pq-seed-banner p{margin:.35rem 0 0;}
.pq-attach-list{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0;color:#f4d37a;}
.pq-wrap{flex-wrap:wrap;}
.pq-new-chat{margin-left:auto;}
@media(max-width:760px){.pq-seed-banner{align-items:flex-start;flex-direction:column}.pq-new-chat{margin-left:0}}

/* v8 Gatekeeper layout hardening */
.pq-gatekeeper-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;align-items:start;margin:14px 0;}
.pq-gatekeeper-plans>.pq-card{margin:0;}
.pq-gatekeeper-queues{display:grid;grid-template-columns:1fr;gap:14px;margin:14px 0;}
.pq-gatekeeper-queues>.pq-card{margin:0;}
.pq-queue-card{overflow:hidden;}
.pq-queue-card>.pq-gatekeeper-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;}
.pq-queue-card .pq-gatekeeper-item .pq-row{justify-content:flex-end;}
.pq-click-row{width:100%;text-align:left;}
@media(max-width:760px){
  .pq-gatekeeper-plans{grid-template-columns:1fr;}
  .pq-queue-card>.pq-gatekeeper-item{grid-template-columns:1fr;}
  .pq-queue-card .pq-gatekeeper-item .pq-row{justify-content:flex-start;}
  .pq-page{max-width:100%;}
}

/* V9 food drag/drop and mobile review polish */
.pq-food-item-row[draggable="true"], .pq-food-group-card[draggable="true"] { cursor: grab; }
.pq-food-item-row[draggable="true"]:active, .pq-food-group-card[draggable="true"]:active { cursor: grabbing; opacity: .78; }
.pq-food-meal { min-height: 56px; }
.pq-food-meal::after { content: ''; display: block; clear: both; }
.pq-review-grid, .pq-gatekeeper-grid { grid-template-columns: 1fr !important; }
@media (max-width: 760px) {
  .pq-food-flow-card svg { min-width: 760px; }
  .pq-food-flow-card { overflow-x: auto; }
  .pq-food-item-row, .pq-food-group-head { align-items: flex-start; gap: .65rem; }
  .pq-review-grid, .pq-gatekeeper-grid, .pq-grid-2, .pq-grid-3 { grid-template-columns: 1fr !important; }
}

.pq-link-button{background:transparent;border:0;color:#ffd15c;text-decoration:underline;cursor:pointer;font-weight:700;padding:.75rem 1rem}.pq-link-button:hover{color:#fff}.pq-member .pq-row{justify-content:flex-end}.pq-wrap{flex-wrap:wrap}

/* V11.1 realm/member polish */
.pq-member-card {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto auto;
  gap: 14px;
  align-items: center;
}
.pq-member-identity {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.pq-member-identity strong {
  display: block;
}
.pq-member-email,
.pq-owner-note {
  color: var(--muted);
  font-size: 0.92rem;
  overflow-wrap: anywhere;
}
.pq-member-identity .pq-badge {
  width: fit-content;
  margin-top: 4px;
}
.pq-member-actions {
  justify-content: flex-end;
}
@media (max-width: 760px) {
  .pq-member-card {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .pq-member-actions {
    justify-content: flex-start;
  }
}

/* Patch 2026-05-27 v12: mobile shell, goals-first layout, family onboarding polish. */
.pq-goal-top{position:relative;overflow:hidden;}
.pq-goal-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-top:12px;}
.pq-collapsible .pq-recommendation{margin-top:12px;}
.pq-family-tutorial .pq-tutorial-steps{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));}
@media(max-width:900px){
  .pq-app{display:block;min-height:100vh;}
  .pq-sidebar{display:none!important;}
  .pq-main{padding:0 12px 36px!important;width:100%;}
  .pq-topbar{position:sticky;top:0;z-index:90;background:#050505!important;padding:10px 0!important;}
  .pq-title-brand{font-size:18px!important;}
  .pq-topbar-actions{gap:8px!important;justify-content:flex-end!important;}
  .pq-wallet span{padding:6px 9px!important;font-size:12px!important;}
  .pq-menu{position:fixed!important;left:10px!important;right:10px!important;top:64px!important;width:auto!important;max-height:calc(100vh - 84px)!important;overflow:auto!important;}
  .pq-menu-section{padding:6px 0 10px!important;}
  .pq-menu-section button,.pq-menu>button{padding:13px 12px!important;}
  .pq-display{font-size:clamp(38px,13vw,58px)!important;margin-top:18px!important;}
  .pq-card{padding:14px!important;border-radius:18px!important;}
  .pq-goals-layout,.pq-grid-two,.pq-grid-2,.pq-grid-3{grid-template-columns:1fr!important;}
  .pq-goal-primer-grid{grid-template-columns:1fr 1fr!important;}
  .pq-chat-layout{grid-template-columns:1fr!important;}
  .pq-thread-list{max-height:260px;overflow:auto;}
  .pq-messages{max-height:56vh!important;min-height:260px!important;}
  .pq-objectives{padding:0 12px 12px 18px!important;}
  .pq-tree-row{align-items:flex-start!important;}
  .pq-member,.pq-invite-row{grid-template-columns:1fr!important;}
}
@media(max-width:560px){
  .pq-topbar{align-items:stretch!important;}
  .pq-topbar-actions{width:100%;justify-content:space-between!important;}
  .pq-main-menu .pq-btn{white-space:nowrap;}
  .pq-realm-picker{grid-template-columns:1fr!important;gap:6px!important;margin:10px 0!important;}
  .pq-goal-primer-grid{grid-template-columns:1fr!important;}
  .pq-row.pq-space{align-items:flex-start;}
  .pq-chat-toolbar{display:grid!important;}
  .pq-composer .pq-row{display:grid!important;grid-template-columns:1fr;}
}


/* Patch 2026-05-27 v12.1: mobile menu polish, close affordance, old icon feel. */
.pq-main-menu{position:relative;}
.pq-menu-layer{position:fixed;inset:0;z-index:160;pointer-events:none;}
.pq-menu-backdrop{position:fixed;inset:0;border:0;background:rgba(0,0,0,.48);cursor:pointer;pointer-events:auto;}
.pq-menu{pointer-events:auto;}
.pq-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px 12px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:6px;}
.pq-menu-head strong{display:block;color:#ffc629;font-family:var(--pq-font-title);font-size:1.05rem;letter-spacing:.02em;}
.pq-menu-head small{display:block;color:#aeb6c8;margin-top:2px;}
.pq-menu-close{width:38px;height:38px;border-radius:999px;border:1px solid #555;background:#101010;color:#fff;font-size:26px;line-height:1;cursor:pointer;}
.pq-menu-close:hover{border-color:#ffc629;background:#201a0b;}
.pq-menu-icon{display:inline-grid;place-items:center;width:1.65rem;margin-right:.4rem;filter:drop-shadow(0 1px 5px rgba(255,198,41,.18));}
.pq-menu-section button,.pq-menu>button{display:flex;align-items:center;gap:.15rem;}
@media(max-width:900px){
  .pq-menu-layer{display:block!important;}
  .pq-menu{left:50%!important;right:auto!important;top:74px!important;transform:translateX(-50%);width:min(430px,88vw)!important;max-height:min(78vh,680px)!important;overflow:auto!important;border-radius:22px!important;padding:14px!important;box-shadow:0 22px 70px rgba(0,0,0,.82)!important;}
  .pq-menu-section{padding:7px 0 10px!important;}
  .pq-menu-section button,.pq-menu>button{padding:11px 12px!important;border-radius:14px!important;}
}
@media(max-width:420px){
  .pq-menu{width:86vw!important;max-height:76vh!important;top:70px!important;}
  .pq-menu-section strong{font-size:.72rem!important;}
  .pq-menu-section button,.pq-menu>button{font-size:.94rem!important;padding:10px!important;}
}

/* Patch 2026-05-27 v12.6: actual mobile top menu icons + chat thread drawer. */
.pq-menu-item .pq-menu-icon{display:inline-grid!important;place-items:center!important;min-width:1.65rem!important;font-size:1.05em!important;opacity:1!important;visibility:visible!important;}
.pq-menu-item span:last-child{display:inline!important;}
.pq-mobile-thread-head{display:none;}
.pq-thread-backdrop{display:none;}
.pq-thread-toggle{display:none;}
@media(max-width:900px){
  .pq-thread-toggle{display:inline-flex!important;align-items:center;justify-content:center;}
  .pq-chat-layout{display:block!important;position:relative;}
  .pq-chat-layout .pq-thread-list{position:fixed!important;left:10px!important;top:88px!important;bottom:14px!important;width:min(360px,88vw)!important;max-height:none!important;overflow:auto!important;z-index:150!important;transform:translateX(-115%)!important;transition:transform .18s ease!important;box-shadow:0 24px 70px rgba(0,0,0,.82)!important;}
  .pq-chat-layout.threads-open .pq-thread-list{transform:translateX(0)!important;}
  .pq-chat-layout.threads-open .pq-thread-backdrop{display:block!important;position:fixed!important;inset:0!important;background:rgba(0,0,0,.48)!important;border:0!important;z-index:140!important;}
  .pq-mobile-thread-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:4px 2px 10px!important;margin-bottom:8px!important;border-bottom:1px solid rgba(255,255,255,.1)!important;}
  .pq-chat-panel{min-height:62vh!important;}
  .pq-messages{min-height:58vh!important;max-height:none!important;}
}

/* Patch 2026-05-27 v12.7: one icon only + top-right mobile menu + tighter food Sankey grouping. */
.pq-menu-item .pq-menu-icon + span{white-space:normal;}
@media(max-width:900px){
  .pq-topbar{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-height:58px!important;padding:8px 0!important;}
  .pq-title-brand{flex:0 0 auto!important;white-space:nowrap!important;}
  .pq-topbar-actions{width:auto!important;margin-left:auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;flex-wrap:nowrap!important;}
  .pq-wallet{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:nowrap!important;}
  .pq-wallet span{padding:5px 7px!important;font-size:11px!important;white-space:nowrap!important;}
  .pq-main-menu{margin-left:0!important;position:relative!important;}
  .pq-main-menu .pq-btn{padding:8px 10px!important;white-space:nowrap!important;}
  .pq-menu{left:auto!important;right:10px!important;top:62px!important;transform:none!important;width:min(420px,calc(100vw - 20px))!important;max-height:calc(100vh - 80px)!important;}
}
@media(max-width:560px){
  .pq-topbar{align-items:center!important;}
  .pq-topbar-actions{width:auto!important;justify-content:flex-end!important;}
  .pq-title-brand{font-size:16px!important;}
  .pq-main-menu .pq-btn{font-size:13px!important;}
}
@media(max-width:420px){
  .pq-wallet span{font-size:10.5px!important;padding:5px 6px!important;}
  .pq-main-menu .pq-btn{padding:7px 8px!important;}
  .pq-menu{right:8px!important;top:58px!important;width:calc(100vw - 16px)!important;}
}

/* v14.2 mobile food editor quick actions */
.pq-food-item-row{position:relative;gap:.75rem;align-items:flex-start;}
.pq-food-item-row > div:first-child{min-width:0;flex:1;}
.pq-mini-menu-wrap{position:relative;margin-left:auto;flex:0 0 auto;}
.pq-mini-menu-button{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.04);color:var(--pq-text,#fff);border-radius:999px;width:42px;height:42px;font-size:1.25rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;}
.pq-mini-menu{position:absolute;right:0;top:46px;z-index:30;min-width:138px;background:#111;border:1px solid rgba(255,255,255,.18);border-radius:16px;box-shadow:0 18px 45px rgba(0,0,0,.42);padding:.35rem;display:grid;gap:.25rem;}
.pq-mini-menu button{width:100%;text-align:left;border:0;background:transparent;color:var(--pq-text,#fff);font-weight:800;padding:.75rem .85rem;border-radius:12px;}
.pq-mini-menu button:hover{background:rgba(255,255,255,.08);}
.pq-mini-menu button.danger{color:#ff8f8f;}
@media(max-width:720px){
  .pq-food-item-row{display:grid;grid-template-columns:1fr auto;}
  .pq-food-item-row .pq-pill{grid-column:1/2;width:max-content;}
  .pq-mini-menu-wrap{grid-column:2/3;grid-row:1/3;align-self:start;}
  .pq-ai-food-card small,.pq-food-item-row small{font-size:.92rem;line-height:1.35;}
}

/* v14.3 structured questline preview */
.pq-questline-preview{margin-top:.75rem;padding:.75rem;border:1px solid rgba(255,204,71,.25);border-radius:14px;background:rgba(255,204,71,.05)}
.pq-router-subgroup{margin-top:.55rem;padding:.55rem;border-left:3px solid rgba(255,204,71,.45);background:rgba(0,0,0,.18);border-radius:10px}
.pq-router-subgroup ul{margin:.35rem 0 0 1.1rem;padding:0}.pq-router-subgroup li{margin:.15rem 0;color:#d8d8d8}

/* v14.4: keep food item action menus usable on desktop and mobile. */
.pq-food-item-row{overflow:visible;}
.pq-food-items,.pq-food-meal,.pq-food-day,.pq-food-editor{overflow:visible;}
.pq-mini-menu-wrap.open{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:flex-end;}
.pq-mini-menu-inline{position:static;right:auto;top:auto;z-index:1;min-width:0;width:auto;display:inline-flex;gap:.35rem;padding:.25rem;background:#151515;box-shadow:none;border-radius:999px;}
.pq-mini-menu-inline button{width:auto;white-space:nowrap;padding:.55rem .75rem;border-radius:999px;}
@media(max-width:850px){
  .pq-mini-menu-wrap.open{grid-column:1/-1;justify-content:flex-start;margin-top:.35rem;}
  .pq-mini-menu-inline{width:100%;display:grid;grid-template-columns:1fr 1fr;border-radius:16px;}
  .pq-mini-menu-inline button{text-align:center;justify-content:center;}
  .pq-edit-table{min-width:760px;}
  .pq-food-preview{overflow-x:auto;}
}

/* v14.6 agentic-chat polish */
.pq-chat-panel-one-scroll{min-height:72vh!important;display:flex!important;flex-direction:column!important;}
.pq-messages-one-scroll{flex:1!important;max-height:none!important;min-height:55vh!important;padding-bottom:18px!important;}
.pq-msg{border-radius:20px!important;padding:14px 16px!important;max-width:min(760px,92%)!important;}
.pq-msg.user{border-top-right-radius:8px!important;}
.pq-msg.assistant{border-top-left-radius:8px!important;}
.pq-msg b{display:block;margin-bottom:6px;color:#f6d36f;}
.pq-composer{box-shadow:0 -18px 42px rgba(0,0,0,.42)!important;}
.pq-composer .pq-textarea{border-radius:18px!important;min-height:72px!important;resize:vertical;}
.pq-status-pill{border-color:#5b6b83!important;background:#101826!important;color:#dbeafe!important;}
.pq-status-booked,.pq-status-confirmed{border-color:#22c55e!important;background:rgba(34,197,94,.12)!important;color:#bbf7d0!important;}
.pq-status-needs_booking{border-color:#f59e0b!important;background:rgba(245,158,11,.12)!important;color:#fde68a!important;}
.pq-status-idea{border-color:#64748b!important;background:rgba(100,116,139,.14)!important;color:#cbd5e1!important;}
.pq-questline-preview{margin-top:10px;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;background:rgba(0,0,0,.18);}
.pq-questline-preview .pq-router-subgroup{margin:.65rem 0;padding:.65rem;border-left:3px solid rgba(255,204,71,.45);background:rgba(0,0,0,.18);border-radius:10px;}
.pq-action-card .pq-status-pill{margin-left:6px;}
@media(max-width:720px){.pq-msg{max-width:100%!important}.pq-chat-toolbar .pq-row{gap:8px!important}.pq-composer{position:sticky!important;bottom:0!important}.pq-messages-one-scroll{min-height:48vh!important}}

/* v14.7 ChatGPT-like chat surface */
.pq-chat-layout{grid-template-columns:minmax(260px,300px) minmax(0,1fr)!important;gap:0!important;background:#212121!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:24px!important;overflow:hidden!important;min-height:calc(100vh - 180px)!important;box-shadow:0 18px 60px rgba(0,0,0,.32)!important;}
.pq-chat-layout .pq-thread-list{border:0!important;border-right:1px solid rgba(255,255,255,.09)!important;border-radius:0!important;background:#171717!important;padding:12px!important;}
.pq-thread-list h3{font-size:14px!important;color:#e8e8e8!important;margin:0!important;}
.pq-thread-row{display:flex!important;align-items:center!important;gap:8px!important;margin:4px 0!important;}
.pq-thread-list button{background:transparent!important;border:0!important;border-radius:12px!important;color:#ececec!important;padding:10px!important;margin:0!important;}
.pq-thread-list button:hover,.pq-thread-row.active button{background:#2f2f2f!important;}
.pq-thread-list small{color:#a0a0a0!important;font-size:11px!important;}
.pq-chat-panel{border:0!important;border-radius:0!important;background:#212121!important;padding:0!important;min-height:calc(100vh - 180px)!important;}
.pq-chat-panel-one-scroll{min-height:calc(100vh - 180px)!important;}
.pq-messages{background:#212121!important;padding:28px clamp(14px,4vw,46px) 18px!important;scrollbar-color:#555 transparent;}
.pq-messages-one-scroll{min-height:calc(100vh - 350px)!important;}
.pq-msg{border:0!important;background:transparent!important;box-shadow:none!important;max-width:820px!important;margin:0 auto 18px!important;padding:0!important;color:#f4f4f4!important;line-height:1.58!important;}
.pq-msg b{display:none!important;}
.pq-msg .pq-msg-text,.pq-msg p{white-space:pre-wrap!important;margin:0!important;font-size:15.5px!important;}
.pq-msg.user{display:block!important;background:#2f2f2f!important;border-radius:22px!important;margin:0 max(0px,calc((100% - 820px)/2)) 18px auto!important;max-width:min(720px,82%)!important;padding:12px 16px!important;color:#f7f7f7!important;}
.pq-msg.assistant{position:relative!important;padding-left:42px!important;}
.pq-msg.assistant:before{content:'PQ';position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#10a37f;color:#fff;font-weight:800;font-size:11px;letter-spacing:-.04em;}
.pq-msg .pq-router,.pq-msg .pq-food-preview,.pq-msg .pq-action-card,.pq-msg .pq-questline-preview{margin-top:12px!important;background:#2b2b2b!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:16px!important;}
.pq-composer{position:sticky!important;bottom:0!important;background:linear-gradient(180deg,rgba(33,33,33,0),#212121 20%)!important;border-top:0!important;padding:18px clamp(14px,4vw,46px) 24px!important;margin:0!important;box-shadow:none!important;}
.pq-composer .pq-textarea{display:block!important;max-width:820px!important;margin:0 auto!important;min-height:56px!important;max-height:180px!important;border-radius:28px!important;background:#2f2f2f!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;padding:16px 58px 16px 18px!important;box-shadow:0 12px 28px rgba(0,0,0,.22)!important;}
.pq-composer .pq-row{max-width:820px!important;margin:10px auto 0!important;justify-content:space-between!important;align-items:center!important;}
.pq-composer input[type=file]{color:#c8c8c8!important;max-width:min(420px,70vw)!important;}
.pq-composer .pq-btn:not(.pq-btn-ghost){border-radius:999px!important;min-width:84px!important;background:#f4f4f4!important;color:#111!important;border-color:#f4f4f4!important;}
.pq-chat-toolbar{margin-bottom:12px!important;}
.pq-chat-toolbar .pq-btn{border-radius:999px!important;}
.pq-new-chat{background:#f4f4f4!important;color:#111!important;border-color:#f4f4f4!important;}
.pq-seed-banner{max-width:960px!important;margin:0 auto 12px!important;border-radius:18px!important;background:#2b2b2b!important;}
@media(max-width:900px){
  .pq-chat-layout{display:block!important;border-radius:0!important;border-left:0!important;border-right:0!important;min-height:calc(100vh - 150px)!important;}
  .pq-chat-layout .pq-thread-list{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(340px,88vw)!important;border-right:1px solid rgba(255,255,255,.12)!important;z-index:160!important;transform:translateX(-110%)!important;transition:transform .18s ease!important;}
  .pq-chat-layout.threads-open .pq-thread-list{transform:translateX(0)!important;}
  .pq-chat-panel,.pq-chat-panel-one-scroll{min-height:calc(100vh - 145px)!important;}
  .pq-messages{padding:18px 12px 10px!important;}
  .pq-msg.user{max-width:86%!important;margin-right:0!important;}
  .pq-msg.assistant{padding-left:36px!important;}
  .pq-composer{padding:14px 10px 18px!important;}
  .pq-composer .pq-textarea{border-radius:24px!important;}
}

/* v14.8 shared realm chat + participant-aware drafts */
.pq-invite-panel{max-width:960px!important;margin:0 auto 12px!important;background:#252525!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:18px!important;}
.pq-participant-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;}
.pq-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(255,255,255,.14);background:#303030;color:#e9e9e9;border-radius:999px;padding:4px 9px;font-size:12px;}
.pq-invite-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:12px 0;}
.pq-invite-row{display:flex;gap:8px;align-items:center;background:#1f1f1f;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px;}
.pq-chat-thread-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px clamp(14px,4vw,46px);background:rgba(33,33,33,.94);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.07);}
.pq-msg .pq-speaker{display:block!important;margin-bottom:4px!important;color:#a7f3d0!important;font-size:12px!important;font-weight:700!important;}
.pq-msg.user .pq-speaker{color:#e8e8e8!important;}
.pq-preview-edit-row select{min-width:150px;}
@media(max-width:720px){.pq-chat-thread-head{align-items:flex-start;flex-direction:column}.pq-invite-list{grid-template-columns:1fr}.pq-preview-edit-row{align-items:stretch!important}.pq-preview-edit-row label{width:100%}.pq-preview-edit-row select,.pq-preview-edit-row input{width:100%}}

/* v14.9.1 chat recovery: keep chat usable even when no thread is selected */
.pq-chat-empty{
  min-height:42vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:48px 18px;
  color:#f4f4f5;
}
.pq-chat-empty h2{font-size:clamp(28px,4vw,46px);margin:0 0 12px;font-weight:800;letter-spacing:-.03em;}
.pq-chat-empty p{max-width:680px;margin:0 0 20px;line-height:1.5;}
.pq-chat-panel .pq-composer{position:sticky;bottom:0;background:#212121;padding:14px;border-top:1px solid rgba(255,255,255,.12);}
.pq-chat-panel .pq-composer .pq-textarea{background:#2f2f2f!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:24px!important;min-height:56px!important;color:#fff!important;resize:vertical;}
.pq-chat-panel .pq-composer .pq-row{justify-content:space-between;}
.pq-chat-toolbar{margin-bottom:12px;}
.pq-chat-toolbar .pq-new-chat{min-width:128px;text-align:center;}
@media(min-width:761px){.pq-chat-panel-one-scroll{display:flex!important;flex-direction:column!important}.pq-messages-one-scroll{flex:1 1 auto!important}}

/* v14.9.2: make review-card date fields behave like tappable date pickers. */
.pq-date-input {
  cursor: pointer;
  color-scheme: dark;
}
.pq-date-input::-webkit-calendar-picker-indicator {
  cursor: pointer;
  opacity: .9;
  filter: invert(1);
}
.pq-preview-edit-row label {
  min-width: 180px;
}

/* v14.9.4: keep the desktop-style Seer review card outside message bubbles, including on mobile. */
.pq-chat-review-dock{
  width:100%!important;
  max-width:980px!important;
  margin:18px auto 8px!important;
  padding:0 0 8px!important;
}
.pq-chat-review-dock .pq-seer-action-review{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  background:linear-gradient(180deg,rgba(20,20,18,.98),rgba(10,10,9,.98))!important;
  border:1px solid rgba(255,194,41,.35)!important;
  border-radius:18px!important;
}
.pq-chat-review-dock .pq-action-group,
.pq-chat-review-dock .pq-action-subgroup{
  max-width:100%!important;
  overflow:visible!important;
}
.pq-chat-review-dock .pq-action-card{
  width:100%!important;
  min-width:0!important;
}
.pq-chat-review-dock .pq-action-main,
.pq-chat-review-dock .pq-action-main *{
  min-width:0!important;
}
.pq-chat-review-dock .pq-preview-edit-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  align-items:end!important;
}
.pq-chat-review-dock .pq-preview-edit-row label{
  display:grid!important;
  gap:4px!important;
  min-width:160px!important;
  flex:1 1 180px!important;
}
.pq-chat-review-dock .pq-preview-edit-row input,
.pq-chat-review-dock .pq-preview-edit-row select{
  width:100%!important;
  min-width:0!important;
}
@media(max-width:720px){
  .pq-chat-review-dock{
    max-width:100%!important;
    margin:14px 0 8px!important;
  }
  .pq-chat-review-dock .pq-seer-action-review{
    padding:12px!important;
    border-radius:16px!important;
  }
  .pq-chat-review-dock .pq-seer-action-review>.pq-row,
  .pq-chat-review-dock .pq-seer-action-review .pq-row.pq-space{
    align-items:stretch!important;
    flex-direction:column!important;
    gap:8px!important;
  }
  .pq-chat-review-dock .pq-action-group,
  .pq-chat-review-dock .pq-action-subgroup{
    padding:10px!important;
    margin:10px 0!important;
  }
  .pq-chat-review-dock .pq-action-card{
    grid-template-columns:auto minmax(0,1fr)!important;
    padding:10px!important;
    gap:10px!important;
  }
  .pq-chat-review-dock .pq-rpg-check{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
  }
  .pq-chat-review-dock .pq-preview-edit-row{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .pq-chat-review-dock .pq-preview-edit-row label{
    min-width:0!important;
    width:100%!important;
  }
  .pq-chat-review-dock .pq-btn{
    width:100%!important;
    justify-content:center!important;
  }
}

/* v14.9.5: keep generated review controllable without forcing chat scroll gymnastics */
.pq-review-dock-head{
  position: sticky;
  top: 0;
  z-index: 3;
  padding: .35rem .25rem .6rem;
  margin-bottom: .35rem;
  background: linear-gradient(180deg, rgba(20,20,20,.98), rgba(20,20,20,.86));
  border-bottom: 1px solid rgba(255,255,255,.08);
}
@media (max-width: 760px){
  .pq-review-dock-head{align-items:flex-start; gap:.45rem;}
  .pq-review-dock-head > .pq-row{width:100%;}
  .pq-review-dock-head .pq-btn{flex:1; justify-content:center;}
}

/* v14.9.6 Diary review: Questline -> Quest -> Objective hierarchy and Architect guidance */
.pq-diary-review-tree .pq-action-group h4::before{content:'';}
.pq-diary-review-tree .pq-existing-context{border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:8px;margin-bottom:10px;}
.pq-diary-review-tree .pq-existing-context span{min-width:70px;}
.pq-diary-review-tree .pq-action-subgroup{margin-left:1rem;border-left:2px solid rgba(246,199,68,.35);}
.pq-diary-action-card{grid-template-columns:auto auto minmax(0,1fr);}
.pq-diary-action-card .pq-rpg-check{margin-top:3px;}
.pq-diary-review-controls label{display:flex;align-items:center;gap:8px;}
.pq-diary-review-controls input[type="number"]{width:90px;}
.pq-architect-guidance{border:1px solid rgba(168,85,247,.38);border-left:5px solid #a855f7;border-radius:16px;background:rgba(168,85,247,.08);padding:12px 14px;margin:12px 0;}
.pq-architect-guidance strong{display:block;color:#e9d5ff;margin-bottom:4px;}
.pq-architect-guidance p{margin:0;color:#f3e8ff;line-height:1.45;}
.pq-architect-guidance small{display:block;color:#c4b5fd;margin-top:6px;}
@media(max-width:700px){
  .pq-diary-review-tree .pq-action-subgroup{margin-left:0;padding:.65rem;}
  .pq-diary-action-card{grid-template-columns:auto auto minmax(0,1fr);padding:10px;}
  .pq-diary-review-controls label{width:100%;justify-content:space-between;}
  .pq-diary-review-controls input[type="number"]{width:110px;}
}

/* v14.9.7 Diary review should read like Questlog: Questline -> Quest -> Objective */
.pq-diary-questlog-tree{margin-top:12px;display:grid;gap:14px;}
.pq-diary-questlog-line{padding:0;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.025);overflow:hidden;}
.pq-diary-questlog-line>.pq-children{padding:0 14px 14px 20px;}
.pq-diary-questlog-quest{border:1px solid rgba(255,255,255,.12);border-radius:16px;margin:12px 0;background:rgba(0,0,0,.22);overflow:hidden;}
.pq-diary-questlog-quest>.pq-objectives{padding:0 10px 10px 28px;}
.pq-diary-questlog-context,.pq-diary-questlog-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08);}
.pq-diary-questlog-row{cursor:pointer;background:rgba(255,255,255,.015);}
.pq-diary-questlog-row input{position:absolute;opacity:0;pointer-events:none;}
.pq-diary-questlog-row.selected{box-shadow:inset 4px 0 #18a058;background:rgba(24,160,88,.085);}
.pq-diary-questlog-row.parent-candidate{box-shadow:inset 4px 0 #ffc629;background:rgba(255,198,41,.055);}
.pq-diary-questlog-row.parent-candidate.selected{box-shadow:inset 4px 0 #18a058, inset 0 0 0 1px rgba(255,198,41,.35);}
.pq-diary-questlog-row.questline{border-left:0;}
.pq-diary-questlog-row.quest{border-left:0;}
.pq-diary-questlog-row.objective{grid-template-columns:auto minmax(0,1fr) auto;margin:0;border-radius:0;}
.pq-diary-questlog-main strong{display:block;line-height:1.25;}
.pq-diary-questlog-main small{display:block;color:#d6d6d6;line-height:1.35;margin-top:4px;}
.pq-diary-questlog-main .pq-muted{color:#aeb8cc;}
.pq-diary-questlog-context .pq-circle{margin-top:2px;}
.pq-diary-questlog-context strong.pq-gold{color:#ffc629;font-size:1.15rem;}
.pq-change-pill{display:inline-flex;align-items:center;gap:4px;margin-top:8px;margin-right:6px;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:4px 9px;background:rgba(255,255,255,.05);font-size:.82rem;color:#dbe4f0;}
.pq-change-pill.warning{border-color:rgba(255,198,41,.35);color:#ffe08a;background:rgba(255,198,41,.08);}
.pq-diary-review-tree .pq-action-group{border-left:0;padding:0;}
.pq-diary-review-tree .pq-action-subgroup{margin-left:0;border-left:0;padding:0;}
@media(max-width:700px){
  .pq-diary-questlog-context,.pq-diary-questlog-row{grid-template-columns:auto minmax(0,1fr);gap:10px;padding:11px 12px;}
  .pq-diary-questlog-context .pq-pill,.pq-diary-questlog-row .pq-pill{grid-column:2;justify-self:start;margin-top:4px;}
  .pq-diary-questlog-line>.pq-children{padding:0 8px 10px 12px;}
  .pq-diary-questlog-quest>.pq-objectives{padding:0 6px 8px 14px;}
  .pq-diary-questlog-main strong{font-size:.95rem;}
}

/* v14.9.8: full-day diary review controls */
.pq-diary-day-actions{margin:8px 0 12px 28px;align-items:center;}
.pq-diary-day-actions .pq-muted{font-size:.86rem;}
@media(max-width:700px){.pq-diary-day-actions{margin-left:0}.pq-diary-day-actions .pq-muted{display:block;width:100%;}}

/* v14.9.9: diary period/day review buttons should be visible and mobile-friendly */
.pq-diary-day-head{margin:10px 0 6px;align-items:center;}
.pq-diary-day-head .pq-diary-date{flex:1;min-width:220px;text-align:left;}
.pq-diary-day-head .pq-btn{white-space:nowrap;}
.pq-diary-day-note{margin:0 0 10px 34px;}
.pq-filter-panel .pq-btn[disabled],.pq-card .pq-btn[disabled]{opacity:.55;cursor:not-allowed;}
@media(max-width:700px){
  .pq-diary-day-head{align-items:stretch;gap:8px;}
  .pq-diary-day-head .pq-diary-date{width:100%;min-width:0;}
  .pq-diary-day-head .pq-btn{width:100%;justify-content:center;}
  .pq-diary-day-note{margin-left:0;}
}

/* v14.9.12 diary period controls + Architect goal signals */
.pq-diary-period-review-card{border-color:#5a4320!important;background:linear-gradient(180deg,#171717,#12100b)!important;}
.pq-diary-period-actions{margin-top:12px;align-items:center;}
.pq-diary-period-actions .pq-btn-primary{box-shadow:0 0 0 1px rgba(255,191,36,.35),0 10px 28px rgba(0,0,0,.35);}
.pq-diary-day-head{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin:12px 0!important;}
.pq-diary-day-head .pq-diary-date{display:inline-flex!important;align-items:center!important;gap:8px!important;flex:1 1 280px!important;min-width:240px!important;width:auto!important;text-align:left!important;background:#101010!important;border:1px solid #3b3b3b!important;color:#fff!important;border-radius:14px!important;padding:10px 12px!important;}
.pq-diary-day-head .pq-diary-date strong{color:#fff!important;letter-spacing:.01em;}
.pq-diary-day-head .pq-diary-date .pq-muted{color:#aeb4c2!important;}
.pq-diary-day-head .pq-btn{flex:0 0 auto!important;white-space:nowrap!important;}
.pq-diary-day-note{margin:0 0 10px 0!important;}
.pq-diary-goal-signals{border:1px solid #3b3420;border-radius:18px;background:#11100d;padding:14px;margin:14px 0;}
.pq-goal-signal-grid{margin-top:12px;}
.pq-goal-signal{border-color:#3d3927!important;background:#14130f!important;}
.pq-goal-signal.existing{border-left:4px solid #eab308!important;}
.pq-goal-signal.suggested{border-left:4px solid #8b5cf6!important;}
.pq-goal-signal ul{margin:8px 0 0 18px;color:#d7dce7;}
@media(max-width:760px){
  .pq-diary-period-review-card .pq-row,.pq-diary-period-actions{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;}
  .pq-diary-period-actions .pq-btn,.pq-diary-day-head .pq-btn{width:100%!important;justify-content:center!important;}
  .pq-diary-day-head .pq-diary-date{flex:1 1 100%!important;min-width:0!important;}
}

/* v14.9.13 Objective time logging */
.pq-time-rollup{display:block;margin-top:.25rem;color:#b6f4d1;font-size:.82rem;line-height:1.3}
.pq-tree-row>.pq-time-rollup{display:inline-flex;align-items:center;margin-top:0;white-space:nowrap;color:#b6f4d1}
.pq-change-pill.time{border-color:rgba(73,190,255,.45);background:rgba(73,190,255,.08);color:#d7f1ff}
.pq-time-log-modal .pq-confirm-note{margin-top:.75rem}
@media (max-width: 720px){
  .pq-tree-row>.pq-time-rollup{width:100%;margin-left:3.2rem;margin-top:.25rem}
  .pq-objective .pq-time-rollup{font-size:.78rem}
}


/* v14.9.14 objective time entry editing */
.pq-objective-main{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1;}
.pq-time-log-list{margin-top:.45rem;display:flex;flex-direction:column;gap:.35rem;}
.pq-time-log-row{display:grid;grid-template-columns:auto auto auto 1fr auto;gap:.45rem;align-items:center;padding:.38rem .5rem;border:1px solid rgba(148,163,184,.22);border-radius:.75rem;background:rgba(15,23,42,.42);font-size:.82rem;}
.pq-time-log-row .pq-btn{padding:.25rem .45rem;font-size:.75rem;}
.pq-time-actions{justify-content:flex-end;gap:.25rem;}
.pq-time-type{white-space:nowrap;}
.pq-time-note{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--pq-muted,#94a3b8);}
@media (max-width: 720px){.pq-time-log-row{grid-template-columns:1fr auto;align-items:start}.pq-time-log-row .pq-muted,.pq-time-log-row .pq-time-note{grid-column:1 / -1}.pq-time-actions{grid-column:1 / -1;justify-content:flex-start}.pq-time-log-modal .pq-grid-3{grid-template-columns:1fr}}

/* 2026-06-01 Family Board / Realm Board patch */
.pq-board-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px;align-items:start}
.pq-board-main,.pq-board-rail,.pq-board-list{display:grid;gap:12px}
.pq-board-stats .pq-card strong{font-size:34px}
.pq-board-chore{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid #3d3d3d;border-radius:16px;background:#0d0d0d;padding:14px}
.pq-board-chore strong{display:block;color:#fff;margin-bottom:4px}
.pq-board-chore small{display:block;color:#b9c0cf;line-height:1.35}
.pq-board-chore em{display:block;margin-top:6px;color:#fcd34d;font-style:normal;font-size:12px;font-weight:800}
.pq-board-chore.needs-help{border-color:#f59e0b;background:#201505}
.pq-board-person{border-top:1px solid #333;padding:12px 0}
.pq-board-person:first-of-type{border-top:0}
.pq-mini-row{display:block;width:100%;text-align:left;border:1px solid #333;background:#0a0a0a;color:#eee;border-radius:10px;padding:8px 10px;margin-top:7px;cursor:pointer}
.pq-mini-row:hover{border-color:#f59e0b}
.pq-help-text{display:block;color:#fcd34d;margin-top:4px;font-weight:800}
.pq-label-editor{border-color:#f59e0b!important;background:#1b1406!important}
.pq-board-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}
.pq-board-form label{display:grid;gap:7px;color:#f5f5f5;font-weight:800;font-size:13px}
.pq-pill{display:inline-flex;align-items:center;border:1px solid #404040;border-radius:999px;background:#0a0a0a;color:#e5e5e5;padding:4px 10px;font-size:12px;font-weight:800}
.pq-wrap{flex-wrap:wrap}
@media(max-width:1050px){.pq-board-layout{grid-template-columns:1fr}.pq-board-chore{grid-template-columns:1fr}.pq-board-chore .pq-row{justify-content:flex-start}}

/* Game Master review queue */
.pq-review-queue { border: 1px solid rgba(255,255,255,.12); }
.pq-review-list { display: grid; gap: 10px; margin-top: 12px; }
.pq-review-row { display: grid; gap: 8px; padding: 10px; border-radius: 14px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); }
.pq-review-row small { display: block; opacity: .75; margin-top: 3px; }
.pq-board-chore .pq-row .pq-button + .pq-button { margin-left: 4px; }

/* v17 daily check-in and skill game loop */
.pq-daily-panel{border:1px solid rgba(255,191,87,.28);background:linear-gradient(135deg,rgba(255,180,60,.13),rgba(114,73,255,.10));}
.pq-daily-track{display:flex;gap:.65rem;overflow-x:auto;padding:.55rem 0;margin-top:.6rem;}
.pq-daily-reward{min-width:116px;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:.75rem;background:rgba(255,255,255,.05);display:flex;flex-direction:column;gap:.3rem;}
.pq-daily-reward.today{box-shadow:0 0 0 2px rgba(255,196,76,.55) inset;background:rgba(255,196,76,.12);}
.pq-daily-reward b{font-size:.9rem;}
.pq-daily-reward span{font-size:.82rem;color:var(--pq-muted,#aab);}
.pq-skill-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.65rem;margin-top:.85rem;}
.pq-skill-chip{border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:.65rem;background:rgba(0,0,0,.13);}
.pq-mini-bar{height:7px;border-radius:99px;background:rgba(255,255,255,.10);overflow:hidden;margin:.4rem 0;}
.pq-mini-bar i{display:block;height:100%;border-radius:99px;background:currentColor;opacity:.75;}
.pq-daily-modal{max-width:760px;}
.pq-streak-big{display:flex;align-items:center;gap:.8rem;margin:1rem 0;padding:1rem;border-radius:18px;background:rgba(255,255,255,.06);}
.pq-streak-big span{font-size:2.5rem;}
.pq-streak-big strong{font-size:3rem;line-height:1;}
.pq-streak-big small{color:var(--pq-muted,#aab);}

.pq-pill-button{cursor:pointer;font:inherit}
.pq-pill-button:hover{filter:brightness(1.12)}

/* v20 Meal Ops */
.pq-meal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:14px}
.pq-meal-card,.pq-meal-cell{border:1px solid rgba(148,163,184,.25);border-radius:18px;padding:14px;background:rgba(15,23,42,.035)}
.pq-compact-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.pq-compact-list li{display:flex;justify-content:space-between;gap:10px;border-top:1px solid rgba(148,163,184,.18);padding-top:6px}
.pq-grocery-items{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.pq-grocery-item{display:grid;grid-template-columns:minmax(140px,1fr) minmax(80px,.5fr) minmax(140px,.7fr);gap:10px;align-items:center;border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:10px;background:rgba(255,255,255,.04)}
.pq-meal-review .pq-meal-cell .pq-input,.pq-meal-review .pq-meal-cell .pq-select{margin-bottom:8px}
@media (max-width:760px){.pq-grocery-item{grid-template-columns:1fr}.pq-meal-grid{grid-template-columns:1fr}}

/* v20.3 Meal Ops usability polish */
.pq-tabs{margin:12px 0 18px}.pq-hint{border:1px solid rgba(245,158,11,.35);background:rgba(245,158,11,.08);border-radius:12px;padding:10px 12px;color:#f8d68a;margin:10px 0 14px}.pq-meal-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.pq-meal-board-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:14px;margin-top:14px}.pq-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0}.pq-dish-list{display:grid;gap:10px;margin-top:10px}.pq-dish-chip{border:1px solid rgba(148,163,184,.25);border-radius:14px;padding:10px;background:rgba(15,23,42,.22)}.pq-dish-chip .pq-input{min-width:150px;flex:1}.pq-ingredient-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}.pq-chip{display:inline-flex;align-items:center;gap:6px}.pq-chip button{border:0;background:transparent;color:#fca5a5;font-weight:900;cursor:pointer}.pq-recipe-book{position:sticky;top:18px}.pq-recipe-list{display:grid;gap:10px;margin-top:12px}.pq-recipe-row{border:1px solid rgba(148,163,184,.25);border-radius:14px;padding:10px;background:rgba(15,23,42,.18)}.pq-recipe-row strong{display:block}.pq-recipe-row small{display:block;color:var(--pq-muted);margin:5px 0 8px}.pq-grocery-items{display:grid;gap:8px}.pq-grocery-item{display:grid;grid-template-columns:minmax(220px,1fr) minmax(140px,auto) 170px;gap:10px;align-items:center;border:1px solid rgba(148,163,184,.22);border-radius:12px;padding:10px;background:rgba(15,23,42,.15)}
@media(max-width:980px){.pq-meal-workspace{grid-template-columns:1fr}.pq-recipe-book{position:static}.pq-mini-grid{grid-template-columns:1fr}.pq-grocery-item{grid-template-columns:1fr}}

/* v20.5 Meal Ops week-first planner */
.pq-meal-toolbar{margin:12px 0 18px;align-items:center}
.pq-week-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:14px}
.pq-week-day{border:1px solid rgba(148,163,184,.22);border-radius:18px;background:rgba(255,255,255,.03);padding:12px;display:flex;flex-direction:column;gap:10px;min-height:240px}
.pq-week-day h3{margin:0;color:#fcd34d;font-size:1rem}
.pq-week-meal{border:1px solid rgba(148,163,184,.24);border-radius:14px;padding:10px;background:rgba(15,23,42,.25);cursor:pointer;display:grid;gap:6px}
.pq-week-meal:hover{border-color:rgba(245,158,11,.8);background:rgba(245,158,11,.08)}
.pq-week-meal.empty{opacity:.72;border-style:dashed}
.pq-week-meal p{margin:0;font-weight:800;color:#fff}
.pq-week-meal small{color:var(--pq-muted,#aab);line-height:1.35}
.pq-grocery-group{margin-top:14px}
.pq-grocery-group h4{margin:0 0 8px;color:#fcd34d}
@media(max-width:860px){.pq-week-grid{grid-template-columns:1fr}.pq-meal-toolbar{align-items:stretch}.pq-meal-toolbar>.pq-row{width:100%;justify-content:flex-start}}

/* v21.2 Pewter + low-tap family display */
.pq-pewter-review{border:1px solid rgba(121,98,255,.35);background:linear-gradient(135deg,rgba(121,98,255,.12),rgba(255,255,255,.04));}
.pq-family-display{max-width:1600px;}
.pq-display-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-radius:24px;background:linear-gradient(135deg,rgba(42,69,169,.28),rgba(19,141,117,.20));box-shadow:0 18px 50px rgba(0,0,0,.15);margin-bottom:1rem;}
.pq-display-hero h1{font-size:clamp(2rem,5vw,4.25rem);margin:0;letter-spacing:-.04em;}
.pq-display-hero p{margin:.25rem 0 0;color:var(--pq-muted,#7b8196);font-size:1.05rem;}
.pq-display-brief{display:flex;gap:.75rem;align-items:center;padding:1rem 1.25rem;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);margin-bottom:1rem;}
.pq-display-brief strong{white-space:nowrap;}
.pq-display-brief p{margin:0;}
.pq-display-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;}
.pq-display-panel{border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:1rem;min-height:170px;}
.pq-display-panel h2{margin:.1rem 0 .8rem;font-size:clamp(1.35rem,2vw,2.25rem);}
.pq-display-big{grid-row:span 2;}
.pq-display-task,.pq-display-person,.pq-display-meal{display:flex;flex-direction:column;gap:.15rem;padding:.7rem .8rem;border-radius:14px;background:rgba(255,255,255,.07);margin-bottom:.55rem;}
.pq-display-task strong,.pq-display-meal strong{font-size:1.05rem;}
.pq-display-task span,.pq-display-person span,.pq-display-meal small{color:var(--pq-muted,#7b8196);}
@media (max-width:1000px){.pq-display-grid{grid-template-columns:1fr}.pq-display-big{grid-row:auto}.pq-display-hero{align-items:flex-start;flex-direction:column}}

/* v21.3 navigation / placement polish */
.pq-app{grid-template-columns:240px 1fr;}
.pq-nav-group-head span{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#f7c84a;font-weight:900;}
.pq-side-nav .pq-nav-group-items{display:grid;gap:5px;margin-bottom:6px;}
.pq-user-menu{position:relative;display:inline-block;}
.pq-user-pop{position:absolute;right:0;top:48px;min-width:240px;background:#171717;border:1px solid #444;border-radius:16px;padding:8px;z-index:155;box-shadow:0 20px 60px rgba(0,0,0,.75);}
.pq-user-pop button{display:block;width:100%;background:#101010;border:1px solid #383838;color:#fff;text-align:left;border-radius:12px;padding:10px 12px;margin:5px 0;font-weight:800;cursor:pointer;}
.pq-user-pop button:hover{border-color:#ffc629;background:#201a0b;}
.pq-user-pop hr{border:0;border-top:1px solid #333;margin:8px 0;}
.pq-user-label{display:inline-block;max-width:110px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap;}
@media(max-width:900px){.pq-user-label{display:none}.pq-user-pop{right:auto;left:auto;transform:translateX(-40%);min-width:220px}.pq-app{display:block;}}

/* v21.4 photo meal capture + chore ownership modal */
.pq-meal-photo-capture{border:1px dashed #4a4a4a;border-radius:16px;padding:14px;background:#0a0a0a;margin:10px 0;}
.pq-meal-photo-capture input[type=file]{display:none;}
.pq-photo-drop{display:grid;gap:6px;width:100%;min-height:94px;place-items:center;text-align:center;border:1px dashed #6b7280;border-radius:14px;background:#101010;color:#f5f5f5;cursor:pointer;padding:18px;}
.pq-photo-drop strong{color:#f8c348;font-size:16px;}
.pq-photo-drop span{color:#b8c0d0;font-size:13px;}
.pq-photo-preview{display:grid;grid-template-columns:180px minmax(0,1fr);gap:14px;align-items:center;}
.pq-photo-preview img{width:180px;max-height:140px;object-fit:cover;border-radius:12px;border:1px solid #444;background:#000;}
.pq-needs-owner{border-color:#f59e0b!important;background:#1a1204!important;}
.pq-chore-modal h2{margin:0;color:#f8c348;font-family:var(--pq-font-title);font-size:34px;}
.pq-chore-detail-grid label{display:grid;gap:7px;color:#f5f5f5;font-weight:800;font-size:13px;}
.pq-chore-detail-grid .pq-full{grid-column:1 / -1;}
.pq-check-row{display:flex!important;align-items:center;gap:8px;font-weight:800;color:#f5f5f5;}
.pq-check-row input{width:auto;}
.pq-board-rail .pq-board-list{gap:8px;}
.pq-board-rail .pq-board-chore{grid-template-columns:1fr;padding:12px;}
.pq-board-rail .pq-board-chore .pq-row{justify-content:flex-start;}
.pq-board-rail .pq-board-chore strong{font-size:15px;line-height:1.2;word-break:normal;overflow-wrap:break-word;}
.pq-board-rail .pq-board-chore small{font-size:12px;}
@media(max-width:720px){.pq-photo-preview{grid-template-columns:1fr}.pq-photo-preview img{width:100%;max-height:220px}.pq-chore-detail-grid{grid-template-columns:1fr!important}.pq-chore-modal h2{font-size:28px}}


/* v21.8 polish: ChatGPT-like message formatting, wallet button, and local-time tables */
.pq-wallet-button{border:0;background:transparent;color:inherit;cursor:pointer;padding:0;gap:8px}
.pq-wallet-button span{display:inline-flex;align-items:center}
.pq-msg .pq-msg-text{white-space:normal!important;margin:0!important;font-size:15.5px!important;line-height:1.62!important}
.pq-msg .pq-msg-text>div{margin:0 0 6px!important}
.pq-msg .pq-msg-text>.pq-msg-blank{height:10px;margin:0!important}
.pq-msg .pq-msg-text>.pq-msg-bullet,.pq-msg .pq-msg-text>.pq-msg-numbered{padding-left:10px!important}
.pq-msg strong{font-weight:800;color:#fff}
.pq-chat-panel .pq-composer{z-index:3!important}
.pq-thread-actions summary{list-style:none;cursor:pointer;border:1px solid rgba(255,255,255,.16);border-radius:999px;width:34px;height:34px;display:grid;place-items:center}
.pq-thread-actions summary::-webkit-details-marker{display:none}
.pq-food-preview .pq-table input,.pq-food-preview .pq-table select{min-width:110px}

/* v21.10 mobile/sidebar and Meal Planner action polish */
.pq-sidebar{display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important;}
.pq-side-nav{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain;padding-right:4px;}
.pq-side-nav::-webkit-scrollbar{width:8px}.pq-side-nav::-webkit-scrollbar-thumb{background:#303030;border-radius:999px}.pq-side-nav::-webkit-scrollbar-track{background:#070707}
.pq-sidebar>.pq-btn{flex:0 0 auto;margin-top:10px;}
.pq-week-meal[draggable="true"]{touch-action:manipulation;}
.pq-week-meal[draggable="true"]:active{cursor:grabbing;transform:scale(.995);border-color:rgba(245,158,11,.9)}
.pq-meal-action-modal{max-width:720px!important;width:min(720px,96vw)!important;}
.pq-slot-preview{border:1px solid rgba(148,163,184,.28);border-radius:16px;background:rgba(15,23,42,.25);padding:14px;margin:12px 0;display:grid;gap:4px;}
.pq-slot-preview small{text-transform:uppercase;letter-spacing:.05em;color:#f7c948;font-weight:900;}
.pq-slot-preview strong{font-size:1.05rem;color:#fff;}
.pq-slot-preview p{margin:0;color:#d7dce7;}
.pq-slot-preview.open{border-color:rgba(16,185,129,.55);background:rgba(16,185,129,.08);}
.pq-slot-preview.occupied{border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.08);}
.pq-week-grid{align-items:stretch;}
@media(max-width:900px){
  .pq-topbar{position:sticky!important;top:0!important;z-index:90!important;background:#050505!important;}
  .pq-main-menu-pop,.pq-menu-layer{max-height:calc(100vh - 76px)!important;overflow:auto!important;}
  .pq-week-meal .pq-row.pq-pad-top{gap:8px!important;}
  .pq-week-meal .pq-btn{padding:8px 10px!important;font-size:13px!important;}
  .pq-meal-action-modal{border-radius:24px 24px 0 0!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100vw!important;max-width:100vw!important;max-height:88vh!important;overflow:auto!important;margin:0!important;}
}

/* 2026-07-18 production mobile shell fix: the persistent desktop rail must never become the page. */
@media(max-width:900px){
  .pq-app{display:block!important;grid-template-columns:1fr!important;width:100%!important;min-width:0!important;overflow-x:hidden!important;}
  .pq-sidebar{display:none!important;visibility:hidden!important;width:0!important;min-width:0!important;height:0!important;min-height:0!important;overflow:hidden!important;border:0!important;padding:0!important;}
  .pq-main{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0 12px 36px!important;overflow-x:hidden!important;}
  .pq-page{width:100%!important;max-width:100%!important;min-width:0!important;}
  .pq-realm-picker{margin:10px 0!important;}
  .pq-chat-layout,.pq-chat-panel,.pq-chat-panel-one-scroll{width:100%!important;max-width:100%!important;min-width:0!important;}
}

/* v21.11 mobile/desktop chat QA: compact composer, native paste attachments, short-thread flow */
.pq-chat-layout{
  min-height:0!important;
  align-items:start!important;
}
.pq-chat-panel,.pq-chat-panel-one-scroll{
  min-height:0!important;
}
.pq-chat-panel-one-scroll{
  display:block!important;
}
.pq-messages-one-scroll{
  min-height:0!important;
  max-height:calc(100vh - 310px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  padding:12px 16px!important;
  flex:0 1 auto!important;
  scroll-padding-bottom:18px;
}
.pq-chat-empty{
  min-height:180px!important;
  padding:28px 18px!important;
}
.pq-msg{
  margin:8px 0!important;
  padding:11px 13px!important;
}
.pq-chat-panel .pq-composer{
  position:sticky!important;
  bottom:0!important;
  margin:0!important;
  padding:10px 16px 12px!important;
  background:#212121!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
}
.pq-chat-panel .pq-composer .pq-textarea{
  min-height:50px!important;
  height:auto;
  max-height:150px!important;
  padding:13px 16px!important;
  border-radius:22px!important;
  resize:vertical;
}
.pq-composer-actions{
  max-width:820px!important;
  margin:7px auto 0!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
}
.pq-composer-file-input{display:none!important;}
.pq-attach-button{flex:0 0 auto!important;padding:8px 11px!important;}
.pq-composer-hint{font-size:12px;color:#a6a6a6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;}
.pq-composer-actions>.pq-btn-primary{flex:0 0 auto!important;min-width:76px!important;padding:9px 14px!important;}
.pq-attach-list{
  max-width:820px;
  margin:7px auto 0;
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 0 4px;
}
.pq-attach-draft{
  min-width:190px;
  max-width:270px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 28px;
  align-items:center;
  gap:8px;
  padding:7px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:#292929;
}
.pq-attach-draft img{width:42px;height:42px;object-fit:cover;border-radius:8px;background:#111;}
.pq-attach-file-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#171717;}
.pq-attach-draft-meta{min-width:0;display:grid;gap:2px;}
.pq-attach-draft-meta strong,.pq-attach-draft-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pq-attach-draft-meta small{color:#aaa;font-size:11px;}
.pq-attach-remove{width:28px;height:28px;border-radius:999px;border:1px solid #555;background:#171717;color:#fff;font-size:18px;cursor:pointer;}
.pq-food-qty-edit{display:grid;grid-template-columns:minmax(70px,95px) minmax(72px,100px);gap:6px;}
.pq-food-qty-edit .pq-input{min-width:0!important;padding:8px!important;}

@media(max-width:900px){
  .pq-chat-layout,.pq-chat-panel,.pq-chat-panel-one-scroll{min-height:0!important;}
  .pq-messages-one-scroll{max-height:none!important;overflow:visible!important;padding:10px 10px 6px!important;}
  .pq-chat-panel .pq-composer{padding:9px 10px calc(10px + env(safe-area-inset-bottom))!important;}
  .pq-chat-panel .pq-composer .pq-textarea{min-height:48px!important;max-height:132px!important;padding:12px 14px!important;}
  .pq-composer-actions{display:flex!important;grid-template-columns:none!important;gap:7px!important;}
  .pq-composer-hint{display:none;}
  .pq-attach-button{padding:8px 10px!important;}
  .pq-composer-actions>.pq-btn-primary{margin-left:auto!important;}
  .pq-attach-draft{min-width:175px;}
  .pq-food-qty-edit{grid-template-columns:minmax(72px,1fr) minmax(72px,1fr);}
}
/* v21.11.1 keep composer actions on one row despite older mobile grid rule */
.pq-composer .pq-composer-actions{display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap!important;align-items:center!important;}
/* v21.11.2 food review tables stay usable on phones */
@media(max-width:720px){
  .pq-food-preview .pq-edit-table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;white-space:nowrap;scrollbar-width:thin;}
  .pq-food-preview .pq-edit-table thead,.pq-food-preview .pq-edit-table tbody{min-width:780px;}
  .pq-food-preview .pq-edit-table th,.pq-food-preview .pq-edit-table td{white-space:nowrap;}
}


/* v21.12 mobile chat viewport + readable Markdown tables */
:root{--pq-visual-viewport-height:100dvh;}
.pq-msg-table-wrap{width:100%;max-width:100%;overflow-x:auto;margin:12px 0 4px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#292929;-webkit-overflow-scrolling:touch;}
.pq-msg-table{width:100%;min-width:560px;border-collapse:collapse;font-size:14px;line-height:1.35;}
.pq-msg-table th,.pq-msg-table td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.10);}
.pq-msg-table th{color:#a7f3d0;background:#242424;font-weight:800;white-space:nowrap;}
.pq-msg-table tbody tr:last-child td{border-bottom:0;}
@media(max-width:900px){
  html,body,#projectquest-root{width:100%;max-width:100%;min-width:0;overflow-x:hidden;}
  .pq-app.pq-app-chat{height:var(--pq-visual-viewport-height,100dvh)!important;min-height:0!important;overflow:hidden!important;}
  .pq-main.pq-main-chat{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0 10px!important;}
  .pq-main-chat>.pq-topbar,.pq-main-chat>.pq-realm-picker{flex:0 0 auto!important;}
  .pq-main-chat>.pq-realm-picker{margin:7px 0!important;}
  .pq-chat-page{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
  .pq-chat-page>.pq-display,.pq-chat-page>.pq-subtitle{display:none!important;}
  .pq-chat-page>.pq-chat-toolbar{flex:0 0 auto!important;margin:4px 0 8px!important;gap:6px!important;}
  .pq-chat-toolbar>.pq-row{flex-wrap:nowrap!important;overflow-x:auto!important;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:2px;}
  .pq-chat-toolbar>.pq-row::-webkit-scrollbar{display:none;}
  .pq-chat-toolbar .pq-btn{flex:0 0 auto!important;padding:8px 10px!important;font-size:13px!important;}
  .pq-chat-page>.pq-success,.pq-chat-page>.pq-error,.pq-chat-page>.pq-warning,.pq-chat-page>.pq-card{flex:0 0 auto;max-height:32%;overflow:auto;}
  .pq-chat-layout{flex:1 1 auto!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important;align-items:stretch!important;}
  .pq-chat-panel,.pq-chat-panel-one-scroll{height:100%!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
  .pq-chat-thread-head{flex:0 0 auto!important;position:relative!important;top:auto!important;padding:9px 10px!important;}
  .pq-messages-one-scroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:contain!important;scrollbar-gutter:stable;padding:10px 10px 14px!important;scroll-padding-bottom:18px!important;}
  .pq-chat-panel .pq-composer{position:relative!important;inset:auto!important;bottom:auto!important;flex:0 0 auto!important;z-index:5!important;margin:0!important;padding:9px 6px calc(9px + env(safe-area-inset-bottom))!important;background:#212121!important;border-top:1px solid rgba(255,255,255,.10)!important;box-shadow:0 -8px 24px rgba(0,0,0,.28)!important;}
  .pq-chat-panel .pq-composer .pq-textarea{width:100%!important;max-width:none!important;margin:0!important;min-height:46px!important;max-height:128px!important;padding:12px 14px!important;border-radius:22px!important;resize:none!important;}
  .pq-composer-actions{width:100%!important;max-width:none!important;margin:6px 0 0!important;}
  .pq-msg{max-width:100%!important;overflow-wrap:anywhere;word-break:normal;}
  .pq-msg.user{max-width:88%!important;}
  .pq-msg.assistant{padding-left:34px!important;}
  .pq-msg-table-wrap{overflow:visible;border:0;background:transparent;margin-top:10px;}
  .pq-msg-table{display:block;min-width:0;width:100%;}
  .pq-msg-table thead{display:none;}
  .pq-msg-table tbody,.pq-msg-table tr,.pq-msg-table td{display:block;width:100%;}
  .pq-msg-table tr{margin:0 0 10px;padding:6px 10px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#292929;}
  .pq-msg-table td{display:grid;grid-template-columns:minmax(92px,.8fr) minmax(0,1.35fr);gap:10px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.08);overflow-wrap:anywhere;}
  .pq-msg-table td:last-child{border-bottom:0;}
  .pq-msg-table td:before{content:attr(data-label);color:#a7f3d0;font-weight:800;}
}

/* v21.15 universal review cards, private attachment viewer, voice review, and focused mobile chat */
.pq-chat-shell-menu{display:none!important;}
.pq-setting-toggle{display:flex!important;align-items:flex-start!important;gap:10px!important;max-width:520px;padding:11px 13px;border:1px solid #343434;border-radius:14px;background:#121212;}
.pq-setting-toggle input{margin-top:4px;flex:0 0 auto;}
.pq-setting-toggle span{display:grid;gap:3px;}
.pq-setting-toggle small{display:block;color:var(--pq-muted);font-weight:400;line-height:1.35;}
.pq-pending-review{overflow:hidden;}
.pq-pending-review>.pq-row:first-child{margin-bottom:12px;}
.pq-review-editor{display:grid;gap:12px;margin:12px 0;}
.pq-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end;}
.pq-review-wide{grid-column:1/-1;}
.pq-field{display:grid;gap:5px;min-width:0;color:#d6d6d6;font-size:13px;}
.pq-field>span{font-weight:800;}
.pq-check-row{display:flex;align-items:center;gap:8px;min-width:0;}
.pq-check-row input{flex:0 0 auto;}
.pq-review-quest{border:1px solid #3b3b3b;border-radius:15px;background:#171717;overflow:hidden;}
.pq-review-quest>summary{cursor:pointer;padding:12px 14px;font-weight:900;background:#202020;}
.pq-review-quest>.pq-review-grid{padding:12px;}
.pq-review-objectives{display:grid;gap:8px;padding:0 12px 12px;}
.pq-review-objective{display:grid;grid-template-columns:auto minmax(180px,1.8fr) minmax(100px,.7fr) minmax(130px,.8fr) minmax(150px,1fr) auto;gap:8px;align-items:center;padding:9px;border:1px solid #303030;border-radius:12px;background:#101010;}
.pq-review-actions{margin-top:12px;}
.pq-review-retired{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:10px;padding:9px 11px;border:1px dashed #4a4a4a;border-radius:12px;background:#151515;}
.pq-attach{display:inline-flex!important;align-items:center;gap:6px;margin:8px 8px 0 0;padding:8px 10px;border:1px solid #604a1e;border-radius:10px;background:#18130a;color:#f3c557;text-align:left;cursor:pointer;max-width:100%;overflow-wrap:anywhere;}
.pq-attachment-modal{width:min(1100px,96vw)!important;}
.pq-attachment-full{display:block;max-width:100%;max-height:72vh;object-fit:contain;margin:14px auto;border-radius:12px;background:#070707;}
.pq-attachment-frame{display:block;width:100%;height:72vh;margin:14px 0;border:0;border-radius:12px;background:#fff;}
.pq-voice-modal{width:min(920px,96vw)!important;}
.pq-voice-capture,.pq-voice-mappings,.pq-voice-segments{display:grid;gap:10px;margin-top:14px;}
.pq-voice-state{font-size:18px;font-weight:900;padding:14px;border:1px solid #3a3a3a;border-radius:14px;background:#171717;}
.pq-voice-live{min-height:70px;max-height:180px;overflow:auto;white-space:pre-wrap;padding:12px;border:1px solid #3b3b3b;border-radius:12px;background:#080808;}
.pq-voice-map{display:grid;grid-template-columns:minmax(90px,.55fr) minmax(180px,1.2fr) minmax(170px,1fr);gap:10px;align-items:center;padding:9px;border-bottom:1px solid #303030;}
.pq-voice-name-edit{display:grid;gap:4px;min-width:0;}
.pq-voice-name-edit .pq-input{min-width:0;}
.pq-voice-segment{display:grid;grid-template-columns:minmax(100px,.4fr) minmax(0,1.6fr);gap:10px;align-items:start;padding:10px;border:1px solid #333;border-radius:12px;background:#141414;}
.pq-food-preview .pq-edit-table .pq-input,.pq-food-preview .pq-edit-table .pq-select{min-width:76px;padding:7px 8px;}
.pq-food-preview .pq-edit-table td:nth-child(2) .pq-input{min-width:175px;}
.pq-food-preview .pq-edit-table td:nth-child(3) .pq-input{min-width:145px;}

@media(max-width:900px){
  .pq-main-chat>.pq-topbar,.pq-main-chat>.pq-realm-picker{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;}
  .pq-chat-shell-menu{display:inline-flex!important;}
  .pq-main.pq-main-chat{padding:6px 8px 0!important;}
  .pq-chat-page>.pq-chat-toolbar{margin:0 0 6px!important;}
  .pq-review-grid{grid-template-columns:1fr 1fr;}
  .pq-review-wide{grid-column:1/-1;}
  .pq-review-objective{grid-template-columns:auto minmax(170px,1fr);}
  .pq-review-objective>.pq-select,.pq-review-objective>.pq-input[type="date"],.pq-review-objective>.pq-btn{grid-column:2;}
  .pq-attachment-backdrop,.pq-voice-backdrop{padding:0!important;align-items:end!important;}
  .pq-attachment-modal,.pq-voice-modal{width:100vw!important;max-width:100vw!important;max-height:94vh!important;border-radius:20px 20px 0 0!important;padding:16px!important;}
  .pq-attachment-full{max-height:72vh;}
  .pq-voice-map{grid-template-columns:90px minmax(0,1fr);}
  .pq-voice-map small{grid-column:1/-1;}
  .pq-voice-segment{grid-template-columns:1fr;}
}
@media(max-width:620px){
  .pq-review-grid{grid-template-columns:1fr;}
  .pq-review-wide{grid-column:auto;}
  .pq-review-objective{grid-template-columns:auto minmax(0,1fr);}
  .pq-pending-review{padding:12px!important;}
  .pq-food-tools{align-items:stretch!important;}
  .pq-food-tools>label{width:100%;}
  .pq-food-confirm-actions{align-items:stretch!important;}
  .pq-food-confirm-actions .pq-muted{width:100%;}
}
.pq-voice-correction{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;margin:12px 0;padding:11px;border:1px solid #343434;border-radius:13px;background:#121212;}
.pq-voice-correction small{grid-column:1/-1;}
@media(max-width:620px){.pq-voice-correction{grid-template-columns:1fr;}.pq-voice-correction small{grid-column:auto;}}
/* v21.15.1 transcript metadata badge and large editable review safeguards */
.pq-transcript-ready{max-width:820px;margin:7px auto 0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border:1px solid rgba(52,211,153,.36);border-radius:12px;background:rgba(6,78,59,.25);color:#d1fae5;font-size:13px;font-weight:800;}
.pq-transcript-ready button{border:0;background:transparent;color:#fbbf24;text-decoration:underline;cursor:pointer;font:inherit;white-space:nowrap;}
.pq-attachment-modal,.pq-voice-modal{overflow:auto;overscroll-behavior:contain;}
.pq-voice-button{white-space:nowrap;}
@media(max-width:720px){
  .pq-food-preview .pq-edit-table thead,.pq-food-preview .pq-edit-table tbody{min-width:1120px;}
  .pq-transcript-ready{margin:7px 0 0;align-items:flex-start;font-size:12px;}
}
/* v21.15.2 exact-review editing controls */
.pq-preview-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px;align-items:end;}
.pq-preview-edit-grid>label{display:grid;gap:5px;min-width:0;color:#d6d6d6;font-size:13px;font-weight:800;}
.pq-preview-wide{grid-column:1/-1;}
.pq-action-select{display:flex;align-items:flex-start;justify-content:center;padding-top:4px;}
.pq-action-select input{position:absolute;opacity:0;pointer-events:none;}
.pq-info{padding:10px 12px;border:1px solid rgba(52,211,153,.35);border-radius:12px;background:rgba(6,78,59,.22);color:#d1fae5;font-weight:750;line-height:1.4;}
@media(max-width:760px){
  .pq-preview-edit-grid{grid-template-columns:1fr 1fr;}
  .pq-preview-wide{grid-column:1/-1;}
}
@media(max-width:520px){
  .pq-preview-edit-grid{grid-template-columns:1fr;}
  .pq-preview-wide{grid-column:auto;}
}

/* v21.16: whole-meal moves, mobile-safe food editing, and live dictation waveform. */
.pq-voice-capture{display:grid;gap:12px;margin-top:14px;}
.pq-voice-state{font-weight:900;font-size:17px;}
.pq-voice-waveform{
  height:76px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:3px;
  padding:12px 14px;
  overflow:hidden;
  border:1px solid rgba(255,193,45,.42);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,193,45,.08),rgba(255,255,255,.025));
}
.pq-voice-wave-bar{
  flex:1 1 0;
  min-width:3px;
  max-width:10px;
  border-radius:999px;
  background:linear-gradient(180deg,#fcd34d,#d97706);
  box-shadow:0 0 8px rgba(245,158,11,.24);
  transition:height 50ms linear;
}
.pq-voice-wave-label{display:block;margin-top:-5px;}
.pq-move-meal-button,.pq-move-dish-button{white-space:nowrap;}
.pq-move-meal-modal,.pq-move-dish-modal{width:min(680px,96vw);}
.pq-food-group-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.pq-dish-quick-slots{align-items:center;gap:8px;margin:12px 0 4px;}
.pq-dish-quick-slots .pq-btn{min-height:38px;}
.pq-move-meal-summary{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin:14px 0;
  padding:12px 14px;
  border:1px solid #3b3b3b;
  border-radius:14px;
  background:#171717;
}
.pq-move-meal-summary strong{color:#fcd34d;font-size:20px;}
.pq-food-edit-actions{
  position:sticky;
  bottom:-22px;
  z-index:6;
  margin:18px -22px -22px;
  padding:12px 22px calc(12px + env(safe-area-inset-bottom));
  border-top:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(17,17,17,.94),#111 28%);
  box-shadow:0 -12px 28px rgba(0,0,0,.32);
}
@media(max-width:800px){
  .pq-modal-backdrop{padding:0;align-items:end;}
  .pq-modal{
    width:100vw!important;
    max-width:100vw!important;
    max-height:min(92dvh,var(--pq-visual-viewport-height,92dvh))!important;
    border-radius:22px 22px 0 0!important;
    padding:16px!important;
    padding-bottom:0!important;
    overscroll-behavior:contain;
  }
  .pq-food-meal-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;}
  .pq-food-meal-head>span{grid-column:2/-1;}
  .pq-food-meal-head>.pq-btn{min-height:40px;}
  .pq-move-meal-button{grid-column:1/-1;width:100%;justify-content:center;text-align:center;}
  .pq-food-group-head{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;}
  .pq-food-group-actions{width:100%;justify-content:flex-start;}
  .pq-food-group-actions .pq-btn{flex:1 1 auto;min-height:42px;}
  .pq-dish-quick-slots>span{width:100%;}
  .pq-dish-quick-slots .pq-btn{flex:1 1 calc(50% - 8px);}
  .pq-food-edit-actions{
    bottom:0;
    margin:18px -16px 0;
    padding:11px 16px calc(11px + env(safe-area-inset-bottom));
  }
  .pq-food-edit-actions .pq-btn{flex:1 1 auto;min-height:46px;}
  .pq-voice-waveform{height:66px;padding:10px;gap:2px;}
}

/* v21.18: queued multi-clip dictation with pause/resume and pre-transcription review. */
.pq-voice-clip-list{display:grid;gap:10px;margin-top:4px;padding:12px;border:1px solid #363636;border-radius:14px;background:#101010;}
.pq-voice-clip{display:grid;grid-template-columns:minmax(90px,.45fr) minmax(180px,1.5fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid #303030;border-radius:12px;background:#171717;}
.pq-voice-clip-select{display:flex;align-items:center;gap:8px;font-weight:900;white-space:nowrap;}
.pq-voice-clip-select input{width:18px;height:18px;accent-color:#f59e0b;}
.pq-voice-clip audio{width:100%;min-width:0;height:38px;}
@media(max-width:700px){
  .pq-voice-clip{grid-template-columns:1fr auto;}
  .pq-voice-clip audio{grid-column:1/-1;}
  .pq-voice-clip>small{grid-column:1;}
  .pq-voice-clip>.pq-btn{grid-column:2;grid-row:3;}
}

/* v21.22 Food History mobile/workflow cleanup */
.pq-food-controls{display:grid;gap:14px;scroll-margin-top:14px}
.pq-food-quick-filter-groups{display:flex;gap:8px;flex-wrap:wrap}
.pq-food-quick-ranges{display:flex;gap:8px;flex-wrap:wrap}
.pq-food-range-button{min-width:58px}
.pq-food-date-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) auto;gap:12px;align-items:end}
.pq-food-date-row label{display:grid;gap:6px;color:var(--pq-muted);font-size:13px;font-weight:800}
.pq-food-primary-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pq-food-add-panel{scroll-margin-top:12px;border-color:#70551d;background:linear-gradient(180deg,#19150d,#111)}
.pq-food-panel-head h2,.pq-food-insights-head h2{margin:0}
.pq-food-panel-head p,.pq-food-insights-head p{margin:.3rem 0 0}
.pq-food-add-panel>.pq-add-food{border:0;padding:0;margin:12px 0 0;background:transparent}
.pq-add-food{display:block}
.pq-add-food-tabs{margin-bottom:12px}
.pq-ai-food-box,.pq-add-food-manual{border:1px solid #333;border-radius:16px;padding:16px;background:#0c0c0c}
.pq-food-description{min-height:132px}
.pq-food-estimate-actions{margin:12px 0}
.pq-add-selected-food{width:100%;margin-top:14px}
.pq-food-manual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pq-food-manual-grid label{display:grid;gap:6px;color:var(--pq-muted);font-size:13px;font-weight:800}
.pq-food-manual-wide{grid-column:1/-1}
.pq-food-manual-actions{margin-top:14px;justify-content:flex-end}
.pq-food-insights-shell{margin-top:18px}
.pq-food-insights-body{display:grid;gap:18px;margin-top:16px}
.pq-food-flow-section{border:1px solid #333;border-radius:16px;padding:16px;background:#0d0d0d}
.pq-food-flow-head h3{margin:0}
.pq-food-flow-head p{margin:.3rem 0 0}
.pq-food-insight-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.pq-food-insight-grid>.pq-card{margin:0}
.pq-food-editor{margin-top:18px}
.pq-food-day-open{padding:0 0 6px}
.pq-food-day-tools{display:flex;justify-content:flex-end;padding:10px 16px 0}
.pq-food-meal-title{flex:1;min-width:130px}
.pq-food-meal-title strong,.pq-food-meal-title span{display:block}
.pq-food-meal-title span{color:var(--pq-muted);margin-top:3px}
.pq-food-meal-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.pq-food-meal.empty{opacity:.78}
.pq-sankey-mobile-summary{display:none}
.pq-mobile-flow-meals,.pq-mobile-flow-items,.pq-mobile-flow-macros{display:grid;gap:8px}
.pq-mobile-flow-meal,.pq-mobile-flow-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #303030;border-radius:10px;padding:9px 11px;background:#121212}
.pq-mobile-flow-meal{border-color:#5b4d1f;background:#18160f}
.pq-mobile-flow-item span{font-weight:800;min-width:0}
.pq-mobile-flow-item small{color:var(--pq-muted);white-space:nowrap}
.pq-mobile-flow-macros{margin-top:12px}
.pq-mobile-flow-macro{display:grid;gap:5px}
.pq-mobile-flow-macro .pq-row{font-size:13px}
.pq-mobile-flow-bar{height:10px;background:#080808;border:1px solid #333;border-radius:999px;overflow:hidden}
.pq-mobile-flow-bar span{display:block;height:100%;border-radius:999px;background:#777}
.pq-mobile-flow-macro.protein .pq-mobile-flow-bar span{background:var(--macro-protein)}
.pq-mobile-flow-macro.carbs .pq-mobile-flow-bar span{background:var(--macro-carbs)}
.pq-mobile-flow-macro.fat .pq-mobile-flow-bar span{background:var(--macro-fat)}
.pq-mobile-flow-macro.fiber .pq-mobile-flow-bar span{background:var(--macro-fiber)}
.pq-mobile-flow-more{margin:8px 0 0}
.pq-mobile-flow-explorer-head{display:grid;gap:10px;border:1px solid #4b3d18;border-radius:12px;padding:12px;background:linear-gradient(180deg,#19150c,#101010)}
.pq-mobile-flow-explorer-head strong{font-size:16px;color:#fff}
.pq-mobile-flow-explorer-head p{margin:4px 0 0;line-height:1.35}
.pq-mobile-flow-explorer-head .pq-btn{width:100%}
.pq-mobile-flow-choice{appearance:none;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:opacity .18s ease,filter .18s ease,border-color .18s ease,box-shadow .18s ease}
.pq-mobile-flow-choice:focus-visible{outline:2px solid var(--pq-gold-2);outline-offset:2px}
.pq-mobile-flow-choice.pq-flow-locked{border-color:#fff!important;box-shadow:0 0 0 2px #fff4,0 0 16px currentColor}
.pq-mobile-flow-macro{border:1px solid #303030;border-radius:10px;padding:9px 11px;background:#111}
.pq-mobile-map-hint{display:none;position:sticky;left:0;width:min(330px,calc(100vw - 72px));z-index:4;gap:3px;margin:0 0 8px;padding:8px 10px;border:1px solid #3e3e3e;border-radius:10px;background:#151515e8;font-size:12px;line-height:1.25}
.pq-mobile-map-hint span{display:block}

@media(max-width:900px){
  .pq-food-controls{padding:14px;margin-bottom:12px}
  .pq-food-quick-filter-groups{display:grid;gap:7px}
  .pq-food-quick-ranges{display:grid;gap:6px}
  .pq-food-quick-days{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pq-food-rolling-ranges{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pq-food-range-button{min-width:0;padding:9px 5px;line-height:1.1}
  .pq-food-date-row{grid-template-columns:1fr 1fr}
  .pq-food-date-row .pq-food-apply-button{grid-column:1/-1;width:100%}
  .pq-food-primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .pq-food-primary-actions>.pq-link-button{grid-column:1/-1;text-align:left;padding:6px 0}
  .pq-food-add-panel{padding:14px}
  .pq-food-panel-head{align-items:flex-start}
  .pq-macro-grid-colored{gap:10px}
  .pq-macro-card{min-height:102px;padding:14px}
  .pq-macro-content strong{font-size:27px}
  .pq-macro-content em{margin-top:7px}
  .pq-food-editor{padding:12px;margin-top:14px}
  .pq-food-editor>.pq-row.pq-space{align-items:flex-start}
  .pq-food-day-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:11px 10px}
  .pq-food-day-head>.pq-btn{padding:9px 10px}
  .pq-food-day-title strong{font-size:18px}
  .pq-food-day-title small{font-size:12px;line-height:1.35}
  .pq-food-meals{padding:8px}
  .pq-food-day-tools{padding:8px 8px 0;justify-content:stretch}
  .pq-food-day-tools .pq-btn{width:100%}
  .pq-food-meal-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:10px}
  .pq-food-meal-title{grid-column:2}
  .pq-food-meal-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
  .pq-food-meal-actions .pq-btn{min-width:0;padding:9px 7px;font-size:13px}
  .pq-food-item-row{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:11px 0}
  .pq-food-item-row .pq-pill{font-size:11px;padding:3px 7px}
  .pq-food-insights-shell{padding:14px}
  .pq-food-insight-grid{grid-template-columns:1fr}
  .pq-food-flow-section{padding:12px}
  .pq-sankey-scroll-stage{display:none;margin-top:12px;overflow-x:auto;overflow-y:hidden;border:1px solid #343434;border-radius:14px;background:#080808;padding:10px 8px 12px;overscroll-behavior-x:contain;scrollbar-gutter:stable;touch-action:pan-x pan-y}
  .pq-sankey-scroll-stage.mobile-open{display:block}
  .pq-sankey-scroll-stage.mobile-open .pq-mobile-map-hint{display:grid}
  .pq-sankey-desktop-canvas{display:grid!important;grid-template-columns:1100px 74px!important;gap:12px;width:max-content;min-width:1186px;align-items:stretch}
  .pq-sankey-desktop-canvas .pq-sankey-svg{width:1100px;min-width:1100px;max-width:none;height:auto}
  .pq-sankey-desktop-canvas .pq-sankey-percent{width:74px;min-width:74px;min-height:390px;flex-direction:column!important;position:sticky;right:0;z-index:3;box-shadow:-10px 0 18px #0008}
  .pq-sankey-mobile-summary{display:grid;gap:12px;margin-top:12px}
  .pq-food-flow-card svg{min-width:0}
  .pq-food-manual-grid{grid-template-columns:1fr}
  .pq-food-manual-wide{grid-column:auto}
  .pq-food-manual-actions{position:sticky;bottom:0;background:linear-gradient(180deg,transparent,#0c0c0c 24%);padding-top:18px;justify-content:stretch}
  .pq-food-manual-actions .pq-btn{width:100%}
  .pq-ai-food-box,.pq-add-food-manual{padding:13px}
}

@media(min-width:901px){
  .pq-sankey-desktop-canvas{display:grid}
}

/* v21.23 interactive macro flow and animated goal overflow */
.pq-macro-grid-colored{padding-top:34px}
.pq-macro-card{appearance:none;width:100%;text-align:left;color:inherit;cursor:pointer;overflow:visible!important;isolation:isolate;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.pq-macro-card:hover,.pq-macro-card:focus-visible{transform:translateY(-2px);border-color:#777!important;box-shadow:0 10px 26px #0008!important;outline:none}
.pq-macro-card.pq-flow-selected{border-color:#fff!important;box-shadow:0 0 0 2px rgba(255,255,255,.26),0 12px 30px #000a!important}
.pq-macro-reservoir{position:absolute;inset:0;border-radius:15px;overflow:visible;pointer-events:none}
.pq-macro-reservoir>.pq-macro-fill{border-radius:0 0 15px 15px;overflow:hidden}
.pq-macro-goal-line{position:absolute;left:10px;right:10px;top:8px;border-top:1px dashed rgba(255,255,255,.7);opacity:.72;z-index:2}
.pq-macro-overflow{position:absolute;top:-29px;left:50%;width:64px;height:41px;transform:translateX(-50%) scaleY(calc(.72 + var(--pq-over-scale)));transform-origin:bottom;z-index:4;filter:drop-shadow(0 5px 8px rgba(0,0,0,.65));animation:pq-overflow-rise .75s cubic-bezier(.2,.85,.25,1.2) both}
.pq-overflow-neck{position:absolute;left:19px;right:19px;bottom:0;height:23px;border-radius:18px 18px 5px 5px;background:currentColor;opacity:.94}
.pq-overflow-cap{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);min-width:62px;padding:4px 7px;border-radius:999px;background:#101010;border:1px solid currentColor;color:#fff;font-size:10px;font-weight:900;text-align:center;white-space:nowrap;line-height:1.1}
.pq-macro-protein .pq-macro-overflow{color:var(--macro-protein)}
.pq-macro-fiber .pq-macro-overflow{color:var(--macro-fiber)}
.pq-macro-fat .pq-macro-overflow{color:#d7cf42}
.pq-macro-carbs .pq-macro-overflow{color:#2d70bc}
.pq-macro-calories .pq-macro-overflow{color:#b9b9b9}
.pq-drop{position:absolute;display:block;width:8px;height:11px;border-radius:60% 60% 65% 65%;background:currentColor;opacity:0;transform:rotate(18deg);animation:pq-drop-pop 1.25s cubic-bezier(.15,.75,.3,1) .38s both}
.pq-drop-1{left:4px;bottom:16px;animation-delay:.32s}
.pq-drop-2{right:4px;bottom:14px;width:7px;height:9px;animation-delay:.44s}
.pq-drop-3{left:28px;bottom:34px;width:6px;height:8px;animation-delay:.54s}
.pq-macro-status-over{font-weight:800;color:#fff!important}
.pq-over-positive .pq-macro-status-over{color:#c9ffd0!important}
.pq-over-neutral .pq-macro-status-over{color:#fff0a8!important}
@keyframes pq-overflow-rise{0%{opacity:0;transform:translateX(-50%) scale(.35,.12)}70%{opacity:1;transform:translateX(-50%) scale(1.05,calc(.8 + var(--pq-over-scale)))}100%{opacity:1;transform:translateX(-50%) scale(1,calc(.72 + var(--pq-over-scale)))}}
@keyframes pq-drop-pop{0%{opacity:0;transform:translate(0,4px) rotate(20deg) scale(.35)}25%{opacity:.95}100%{opacity:0;transform:translate(var(--drop-x,7px),-23px) rotate(45deg) scale(.8)}}
.pq-drop-2{--drop-x:-8px}.pq-drop-3{--drop-x:2px}

.pq-sankey-toolbar{margin-bottom:8px}.pq-sankey-toolbar-note{margin:0!important}
.pq-flow-interactive{cursor:pointer;transition:opacity .16s ease,filter .16s ease}.pq-flow-interactive:focus{outline:none}.pq-flow-interactive:focus rect{stroke:#fff;stroke-width:2.5}
.pq-sankey-link{transition:opacity .18s ease,filter .18s ease}.pq-flow-bright{filter:drop-shadow(0 0 6px currentColor)}
.pq-flow-dim{opacity:.13!important;filter:saturate(.25)}.pq-sankey-link.pq-flow-dim{opacity:.055!important}
.pq-flow-locked rect,.pq-sankey-percent-seg.pq-flow-locked{stroke:#fff!important;box-shadow:0 0 0 2px #fff5,0 0 18px currentColor}
.pq-sankey-percent-seg{border:0;cursor:pointer;padding:0;width:100%;transition:opacity .18s ease,filter .18s ease,transform .18s ease}.pq-sankey-percent-seg:hover,.pq-sankey-percent-seg:focus-visible{transform:scaleX(1.05);outline:none;filter:brightness(1.22)}
.pq-flow-detail-card{border:1px solid #454545;background:#111;border-radius:16px;padding:16px;margin-top:14px}.pq-flow-detail-card h3{margin:3px 0 0}.pq-flow-detail-card p{margin:8px 0}.pq-flow-detail-macros{display:flex;gap:8px;flex-wrap:wrap}.pq-flow-detail-macros span{border:1px solid currentColor;border-radius:999px;padding:5px 9px;font-weight:800;font-size:12px}.pq-flow-detail-macros .protein{color:#64e66c}.pq-flow-detail-macros .carbs{color:#5a9be8}.pq-flow-detail-macros .fat{color:#e5de54}.pq-flow-detail-macros .fiber{color:#e78047}.pq-flow-ingredients ul{margin:7px 0 0;padding-left:20px}
@media(max-width:900px){.pq-macro-grid-colored{padding-top:28px}.pq-macro-overflow{top:-24px;transform:translateX(-50%) scale(.9)}.pq-sankey-percent-seg{width:auto;flex:1}.pq-flow-detail-card{padding:13px}}
@media(prefers-reduced-motion:reduce){.pq-macro-card,.pq-sankey-link,.pq-flow-interactive,.pq-sankey-percent-seg{transition:none!important}.pq-macro-overflow,.pq-drop{animation:none!important}.pq-drop{display:none!important}}


/* v21.24: resilient mobile fallback screen. */
.pq-fatal{max-width:100%;overflow-x:hidden;overflow-wrap:anywhere}
.pq-fatal h1{font-size:clamp(36px,12vw,56px)!important;line-height:.98;max-width:100%;overflow-wrap:anywhere}
.pq-fatal pre{max-width:100%;overflow:auto;word-break:break-word}
@media(max-width:700px){.pq-fatal{padding:22px 18px}.pq-fatal pre{padding:14px;font-size:13px}}

/* v21.27 mobile Sankey full-screen containment */
.pq-sankey-wrap,.pq-sankey-mobile-summary,.pq-mobile-flow-explorer-head,.pq-sankey-scroll-stage{min-width:0;max-width:100%}
.pq-mobile-flow-more-button{width:100%;justify-content:center;text-align:center}
.pq-sankey-scroll-stage.mobile-open{
  display:block!important;
  position:fixed!important;
  inset:0!important;
  z-index:160!important;
  width:100vw!important;
  max-width:100vw!important;
  height:100dvh!important;
  max-height:100dvh!important;
  margin:0!important;
  padding:calc(10px + env(safe-area-inset-top)) calc(10px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(10px + env(safe-area-inset-left))!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  touch-action:pan-x pan-y!important;
  border:0!important;
  border-radius:0!important;
  background:#070707!important;
  box-shadow:none!important;
  scrollbar-gutter:auto!important;
}
.pq-sankey-scroll-stage.mobile-open .pq-mobile-map-hint{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px 14px;
  position:sticky!important;
  top:0!important;
  left:0!important;
  z-index:12!important;
  width:min(760px,calc(100vw - 20px))!important;
  max-width:calc(100vw - 20px)!important;
  margin:0 0 10px!important;
  padding:10px!important;
  border:1px solid #4a4a4a!important;
  border-radius:14px!important;
  background:rgba(17,17,17,.96)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.55)!important;
  backdrop-filter:blur(10px);
}
.pq-mobile-map-copy{display:grid;gap:2px;min-width:0}
.pq-mobile-map-copy strong{font-size:16px}
.pq-mobile-map-copy span{font-size:12px;line-height:1.3}
.pq-mobile-map-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.pq-mobile-map-actions .pq-btn{min-height:40px;padding:8px 10px;white-space:nowrap}
.pq-mobile-map-close{border-color:#8a6a20!important;color:#ffd76a!important}
.pq-mobile-map-selection{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:2px 10px;
  align-items:center;
  min-width:0;
  padding-top:8px;
  border-top:1px solid #333;
}
.pq-mobile-map-selection small{grid-row:1/3}
.pq-mobile-map-selection strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pq-mobile-map-selection span{color:var(--pq-muted);font-size:11px;white-space:normal}
.pq-sankey-scroll-stage.mobile-open .pq-sankey-desktop-canvas{
  display:grid!important;
  grid-template-columns:1100px 74px!important;
  gap:12px!important;
  width:max-content!important;
  min-width:1186px!important;
  max-width:none!important;
  align-items:stretch!important;
}
.pq-sankey-scroll-stage.mobile-open .pq-sankey-svg{
  width:1100px!important;
  min-width:1100px!important;
  max-width:none!important;
  height:auto!important;
}
.pq-sankey-scroll-stage.mobile-open .pq-sankey-percent{
  width:74px!important;
  min-width:74px!important;
  min-height:390px!important;
  flex-direction:column!important;
  position:sticky!important;
  right:0!important;
  z-index:6!important;
  box-shadow:-10px 0 18px #0008!important;
}
@media(max-width:900px){
  .pq-food-flow-section{min-width:0;max-width:100%;overflow:hidden}
  .pq-sankey-scroll-stage:not(.mobile-open){display:none!important}
  .pq-mobile-flow-items{max-width:100%}
  .pq-mobile-flow-item span{overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:560px){
  .pq-sankey-scroll-stage.mobile-open .pq-mobile-map-hint{grid-template-columns:1fr}
  .pq-mobile-map-actions{justify-content:stretch}
  .pq-mobile-map-actions .pq-btn{flex:1 1 auto}
}
@media(orientation:landscape) and (max-height:560px){
  .pq-sankey-scroll-stage.mobile-open .pq-mobile-map-hint{grid-template-columns:minmax(260px,1fr) auto;padding:7px 9px!important}
  .pq-mobile-map-copy .pq-muted{display:none}
  .pq-mobile-map-actions .pq-btn{min-height:34px;padding:6px 9px}
}

/* ========================================================================
   v21.28 - Nutrition module, selectable skins, accessible palettes,
   and mobile app shell. This final override intentionally sits after the
   historical patch CSS so one appearance system controls every page.
   ======================================================================== */
:root{
  --pq-accent:#ffc21f;
  --pq-accent-2:#d99a16;
  --pq-accent-soft:rgba(255,194,31,.16);
  --pq-on-accent:#111318;
  --pq-surface:#111111;
  --pq-surface-2:#181818;
  --pq-surface-3:#222222;
  --pq-page-bg:#050505;
  --pq-sidebar-bg:#090b10;
  --pq-card-shadow:0 18px 45px rgba(0,0,0,.24);
  --pq-card-shadow-soft:0 8px 24px rgba(0,0,0,.14);
  --pq-focus:0 0 0 3px rgba(255,194,31,.32);
  --pq-success-accent:#2f9e67;
  --pq-warning-accent:#e69f00;
  --pq-danger-accent:#d55e5e;
  --macro-protein:#2f9e67;
  --macro-carbs:#2f78c4;
  --macro-fat:#e1b12c;
  --macro-fiber:#d06d35;
}
html[data-pq-theme="light"]{
  --pq-page-bg:#f4f6fb;
  --pq-bg:#f4f6fb;
  --pq-bg-2:#edf1f7;
  --pq-surface:#ffffff;
  --pq-surface-2:#f7f8fc;
  --pq-surface-3:#eef1f6;
  --pq-panel:#ffffff;
  --pq-panel-2:#f7f8fc;
  --pq-panel-warm:#fff8e8;
  --pq-sidebar-bg:#ffffff;
  --pq-line:#dce2ec;
  --pq-line-soft:#e8ecf3;
  --pq-text:#1d2a3a;
  --pq-muted:#69778b;
  --pq-success:#e8f7ef;
  --pq-danger:#fff0f0;
  --pq-card-shadow:0 18px 50px rgba(42,55,79,.12);
  --pq-card-shadow-soft:0 7px 24px rgba(42,55,79,.09);
}
html[data-pq-theme="dark"]{
  --pq-page-bg:#07090e;
  --pq-bg:#07090e;
  --pq-bg-2:#0c1018;
  --pq-surface:#111620;
  --pq-surface-2:#171e2a;
  --pq-surface-3:#202938;
  --pq-panel:#111620;
  --pq-panel-2:#171e2a;
  --pq-panel-warm:#241c0e;
  --pq-sidebar-bg:#0b0f17;
  --pq-line:#2b3546;
  --pq-line-soft:#222a38;
  --pq-text:#f7f8fb;
  --pq-muted:#aeb9ca;
  --pq-success:#123d31;
  --pq-danger:#4a2020;
}
html[data-pq-palette="gold"]{
  --pq-accent:#ffc21f;--pq-accent-2:#d99a16;--pq-accent-soft:rgba(255,194,31,.16);--pq-on-accent:#14110a;
  --macro-protein:#37a661;--macro-carbs:#3479c7;--macro-fat:#e0b42f;--macro-fiber:#cd713e;
}
html[data-pq-palette="meadow"]{
  --pq-accent:#8bbd38;--pq-accent-2:#5d8e20;--pq-accent-soft:rgba(139,189,56,.18);--pq-on-accent:#17220d;
  --macro-protein:#e66d78;--macro-carbs:#5bb7d8;--macro-fat:#efc84d;--macro-fiber:#a6794b;
}
html[data-pq-palette="ocean"]{
  --pq-accent:#3e8ee8;--pq-accent-2:#1765b8;--pq-accent-soft:rgba(62,142,232,.17);--pq-on-accent:#071a2d;
  --macro-protein:#1ba784;--macro-carbs:#3d82db;--macro-fat:#efa733;--macro-fiber:#8b69c7;
}
html[data-pq-palette="colorblind"]{
  --pq-accent:#0072b2;--pq-accent-2:#00547f;--pq-accent-soft:rgba(0,114,178,.17);--pq-on-accent:#ffffff;
  --pq-success-accent:#009e73;--pq-warning-accent:#e69f00;--pq-danger-accent:#cc79a7;
  --macro-protein:#009e73;--macro-carbs:#0072b2;--macro-fat:#e69f00;--macro-fiber:#cc79a7;
}
:root,
html[data-pq-theme]{
  --pq-gold:var(--pq-accent);
  --pq-gold-2:var(--pq-accent-2);
  --pq-gold-3:var(--pq-accent-2);
}

html,body,#projectquest-root{background:var(--pq-page-bg)!important;color:var(--pq-text)!important;}
body{min-height:100vh;background:var(--pq-page-bg)!important;color:var(--pq-text)!important;}
.pq-app,.pq-main{background:transparent!important;color:var(--pq-text)!important;}
.pq-main{padding-bottom:70px;}
.pq-sidebar{background:var(--pq-sidebar-bg)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-topbar{background:color-mix(in srgb,var(--pq-page-bg) 88%,transparent)!important;border-color:var(--pq-line)!important;backdrop-filter:blur(16px);position:sticky;top:0;z-index:36;}
.pq-title-brand,.pq-display,.pq-gold{color:var(--pq-accent)!important;}
.pq-display{font-size:clamp(38px,5.5vw,72px);line-height:1;letter-spacing:-.035em;}
.pq-subtitle{color:var(--pq-muted)!important;max-width:850px;line-height:1.55;}
.pq-page{width:100%;max-width:1480px;margin:0 auto;}
.pq-card,.pq-thread-list,.pq-chat-panel,.pq-modal,.pq-pop,.pq-user-pop,.pq-menu,.pq-food-day,.pq-food-meal,.pq-action-group,.pq-estimate-box,.pq-period,.pq-filters{
  background:var(--pq-surface)!important;
  color:var(--pq-text)!important;
  border-color:var(--pq-line)!important;
  box-shadow:var(--pq-card-shadow-soft);
}
.pq-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
@media(hover:hover){.pq-card:hover{border-color:color-mix(in srgb,var(--pq-accent) 34%,var(--pq-line))!important;}}
.pq-muted,.pq-help,.pq-subtitle,.pq-card small,.pq-thread-list small,.pq-food-day-title small,.pq-food-item-row small{color:var(--pq-muted)!important;}
.pq-input,.pq-textarea,.pq-select{
  background:var(--pq-surface-2)!important;color:var(--pq-text)!important;border-color:var(--pq-line)!important;border-radius:14px!important;
}
.pq-input:focus,.pq-textarea:focus,.pq-select:focus,button:focus-visible{outline:none!important;box-shadow:var(--pq-focus)!important;border-color:var(--pq-accent)!important;}
.pq-btn{
  min-height:43px;border-radius:14px!important;background:var(--pq-surface-2)!important;color:var(--pq-text)!important;border-color:var(--pq-line)!important;
  box-shadow:none;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.pq-btn:hover{transform:translateY(-1px);filter:none!important;box-shadow:var(--pq-card-shadow-soft);}
.pq-btn-primary,.pq-tabs .active{
  background:linear-gradient(135deg,color-mix(in srgb,var(--pq-accent) 92%,white),var(--pq-accent-2))!important;
  color:var(--pq-on-accent)!important;border-color:var(--pq-accent-2)!important;
}
.pq-btn-danger{background:color-mix(in srgb,var(--pq-danger-accent) 22%,var(--pq-surface))!important;border-color:var(--pq-danger-accent)!important;color:var(--pq-text)!important;}
.pq-link-button{color:var(--pq-accent)!important;}
.pq-badge,.pq-pill{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-click-row,.pq-mini-row,.pq-review-row,.pq-recipe-row,.pq-invite-row,.pq-table-row{border-color:var(--pq-line-soft)!important;color:var(--pq-text)!important;}
.pq-click-row:hover,.pq-mini-row:hover{background:var(--pq-accent-soft)!important;}
.pq-side-nav button,.pq-nav-group-head,.pq-nav-group-items button{color:var(--pq-text)!important;}
.pq-sidebar nav button.active,.pq-nav-group-items button.active{background:var(--pq-accent-soft)!important;border-color:var(--pq-accent)!important;color:var(--pq-text)!important;}
.pq-wallet span{background:var(--pq-surface)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-success{background:color-mix(in srgb,var(--pq-success-accent) 16%,var(--pq-surface))!important;border-color:var(--pq-success-accent)!important;color:var(--pq-text)!important;}
.pq-warning{background:color-mix(in srgb,var(--pq-warning-accent) 18%,var(--pq-surface))!important;border-color:var(--pq-warning-accent)!important;color:var(--pq-text)!important;}
.pq-error{background:color-mix(in srgb,var(--pq-danger-accent) 16%,var(--pq-surface))!important;border-color:var(--pq-danger-accent)!important;color:var(--pq-text)!important;}
.pq-msg{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-msg.user{background:var(--pq-accent-soft)!important;border-color:var(--pq-accent)!important;}
.pq-composer{background:color-mix(in srgb,var(--pq-surface) 94%,transparent)!important;border-color:var(--pq-line)!important;backdrop-filter:blur(14px);}

/* Skin personality: structure and rhythm, not just recoloring. */
html[data-pq-skin="classic"]{--pq-radius:18px;--pq-font-title:"Cinzel Decorative","Cinzel",Georgia,serif;}
html[data-pq-skin="storybook"]{
  --pq-radius:28px;--pq-font-title:Georgia,"Times New Roman",serif;
  --pq-card-shadow:0 22px 55px rgba(65,81,104,.14);--pq-card-shadow-soft:0 9px 28px rgba(65,81,104,.10);
}
html[data-pq-skin="storybook"] body{
  background:
    radial-gradient(circle at 84% 4%,color-mix(in srgb,var(--pq-accent) 22%,transparent) 0 80px,transparent 81px),
    radial-gradient(circle at 76% 8%,color-mix(in srgb,var(--pq-accent) 9%,transparent) 0 145px,transparent 146px),
    linear-gradient(180deg,color-mix(in srgb,var(--pq-page-bg) 92%,#dff4ff),var(--pq-page-bg) 36%)!important;
}
html[data-pq-skin="storybook"] .pq-card,
html[data-pq-skin="storybook"] .pq-thread-list,
html[data-pq-skin="storybook"] .pq-chat-panel{border-radius:28px!important;box-shadow:var(--pq-card-shadow-soft);}
html[data-pq-skin="storybook"] .pq-btn{border-radius:999px!important;padding-inline:18px;}
html[data-pq-skin="storybook"] .pq-display{font-weight:500;text-transform:none;}
html[data-pq-skin="storybook"] .pq-topbar{border-bottom:0!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+1){background:color-mix(in srgb,var(--pq-surface) 88%,#fff0b9)!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+2){background:color-mix(in srgb,var(--pq-surface) 90%,#d9f3f0)!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+3){background:color-mix(in srgb,var(--pq-surface) 90%,#ffe0e5)!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+4){background:color-mix(in srgb,var(--pq-surface) 90%,#e6efc7)!important;}
html[data-pq-skin="guild"]{--pq-radius:22px;--pq-font-title:"Cinzel Decorative",Georgia,serif;}
html[data-pq-skin="guild"] body{background:radial-gradient(circle at 70% -10%,color-mix(in srgb,var(--pq-accent) 20%,transparent),transparent 34%),linear-gradient(160deg,#0a1020,var(--pq-page-bg) 56%)!important;}
html[data-pq-skin="guild"] .pq-card{background:linear-gradient(145deg,color-mix(in srgb,var(--pq-surface) 95%,#1a2750),var(--pq-surface))!important;border-width:1px;}
html[data-pq-skin="guild"] .pq-btn-primary{box-shadow:0 0 28px color-mix(in srgb,var(--pq-accent) 24%,transparent);}
html[data-pq-skin="focus"]{--pq-radius:12px;--pq-font-title:var(--pq-font-body);--pq-card-shadow:none;--pq-card-shadow-soft:none;}
html[data-pq-skin="focus"] .pq-card{border-radius:12px!important;box-shadow:none!important;}
html[data-pq-skin="focus"] .pq-display{font-weight:850;letter-spacing:-.05em;}
html[data-pq-skin="focus"] .pq-btn{border-radius:10px!important;}

/* Nutrition module shell and app-inspired dashboard. */
.pq-nutrition-page{max-width:1240px;}
.pq-nutrition-subnav{display:flex;gap:8px;overflow-x:auto;padding:5px 2px 12px;margin:-2px 0 18px;scrollbar-width:none;}
.pq-nutrition-subnav::-webkit-scrollbar{display:none;}
.pq-nutrition-subnav button{flex:0 0 auto;display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 14px;border-radius:999px;border:1px solid var(--pq-line);background:var(--pq-surface);color:var(--pq-muted);font-weight:800;cursor:pointer;}
.pq-nutrition-subnav button.active{background:var(--pq-accent-soft);border-color:var(--pq-accent);color:var(--pq-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pq-accent) 40%,transparent);}
.pq-nutrition-subnav-icon{font-size:18px;}
.pq-nutrition-hero{border-radius:32px;padding:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--pq-accent) 26%,var(--pq-surface)),var(--pq-surface) 64%);border:1px solid color-mix(in srgb,var(--pq-accent) 40%,var(--pq-line));box-shadow:var(--pq-card-shadow);}
.pq-nutrition-calorie-summary{display:grid;grid-template-columns:1fr minmax(180px,240px) 1fr;align-items:center;gap:20px;max-width:760px;margin:0 auto 26px;text-align:center;}
.pq-nutrition-side-stat{display:grid;gap:3px;}
.pq-nutrition-side-stat strong{font-size:clamp(28px,5vw,46px);}
.pq-nutrition-side-stat span{color:var(--pq-muted);font-weight:750;}
.pq-calorie-ring{--pq-progress:0%;width:clamp(150px,24vw,220px);aspect-ratio:1;border-radius:50%;border:0;margin:auto;display:grid;place-content:center;position:relative;background:conic-gradient(var(--pq-accent) var(--pq-progress),color-mix(in srgb,var(--pq-surface) 76%,transparent) 0);color:var(--pq-text);cursor:pointer;box-shadow:0 12px 35px color-mix(in srgb,var(--pq-accent) 18%,transparent);}
.pq-calorie-ring::before{content:"";position:absolute;inset:13px;border-radius:50%;background:var(--pq-surface);box-shadow:inset 0 0 0 1px var(--pq-line);}
.pq-calorie-ring strong,.pq-calorie-ring span{position:relative;z-index:1;}
.pq-calorie-ring strong{font-size:clamp(34px,6vw,54px);line-height:1;}
.pq-calorie-ring span{font-weight:800;color:var(--pq-muted);margin-top:5px;}
.pq-nutrition-macro-panel{background:color-mix(in srgb,var(--pq-surface) 90%,transparent);border:1px solid color-mix(in srgb,var(--pq-line) 75%,transparent);border-radius:26px;padding:22px;}
.pq-section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;}
.pq-section-title h2,.pq-section-title h3,.pq-section-title p{margin:0;}
.pq-section-title button{border:0;background:transparent;color:var(--pq-accent);font-weight:850;cursor:pointer;}
.pq-nutrition-rings{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:16px;margin-top:20px;}
.pq-nutrition-ring{border:0;background:transparent;color:var(--pq-text);display:grid;justify-items:center;gap:9px;cursor:pointer;}
.pq-nutrition-ring-track{--pq-progress:0%;width:104px;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;position:relative;background:conic-gradient(currentColor var(--pq-progress),color-mix(in srgb,var(--pq-line) 55%,transparent) 0);}
.pq-nutrition-ring-track::before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--pq-surface);}
.pq-nutrition-ring-track strong,.pq-nutrition-ring-track small{position:relative;z-index:1;color:var(--pq-text)!important;}
.pq-nutrition-ring-track strong{font-size:22px;line-height:1;}
.pq-nutrition-ring-track small{font-size:11px;}
.pq-nutrition-ring.protein{color:var(--macro-protein)}.pq-nutrition-ring.carbs{color:var(--macro-carbs)}.pq-nutrition-ring.fat{color:var(--macro-fat)}.pq-nutrition-ring.fiber{color:var(--macro-fiber)}
.pq-nutrition-ring>b{color:var(--pq-text);}
.pq-today-meals{padding:22px!important;margin-top:22px!important;}
.pq-meal-journal-list{display:grid;margin-top:12px;}
.pq-meal-journal-row{display:grid;grid-template-columns:58px minmax(0,1fr) 42px;gap:14px;align-items:center;width:100%;padding:15px 4px;border:0;border-top:1px solid var(--pq-line-soft);background:transparent;color:var(--pq-text);text-align:left;cursor:pointer;}
.pq-meal-journal-row:first-child{border-top:0;}
.pq-meal-journal-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:var(--pq-accent-soft);font-size:26px;}
.pq-meal-journal-copy{display:grid;gap:4px;min-width:0;}
.pq-meal-journal-copy strong{font-size:18px;}.pq-meal-journal-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--pq-muted)!important;}
.pq-meal-journal-add{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--pq-surface-2);border:1px solid var(--pq-line);font-size:24px;font-weight:500;}
.pq-meal-journal-row.empty .pq-meal-journal-copy small{font-style:italic;}
.pq-nutrition-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0;}
.pq-nutrition-tool-card{min-height:154px;display:grid;align-content:center;justify-items:start;gap:6px;padding:22px;border:1px solid var(--pq-line);border-radius:26px;background:var(--pq-surface);color:var(--pq-text);text-align:left;cursor:pointer;box-shadow:var(--pq-card-shadow-soft);}
.pq-nutrition-tool-card:nth-child(3n+1){background:color-mix(in srgb,var(--pq-surface) 88%,#ffd9dd)!important;}.pq-nutrition-tool-card:nth-child(3n+2){background:color-mix(in srgb,var(--pq-surface) 88%,#d8f0ee)!important;}.pq-nutrition-tool-card:nth-child(3n+3){background:color-mix(in srgb,var(--pq-surface) 88%,#e7efbd)!important;}
.pq-nutrition-tool-icon{font-size:34px;}.pq-nutrition-tool-card strong{font-size:18px;}.pq-nutrition-tool-card small{color:var(--pq-muted)!important;}
.pq-nutrition-actions{justify-content:center;margin:20px 0 34px;}
.pq-app-tabs{background:var(--pq-surface);border:1px solid var(--pq-line);border-radius:18px;padding:5px;gap:5px!important;box-shadow:var(--pq-card-shadow-soft);}
.pq-app-tabs .pq-btn{min-height:40px;margin:0;border-color:transparent!important;}
.pq-meal-toolbar{align-items:center;position:sticky;top:78px;z-index:21;background:color-mix(in srgb,var(--pq-page-bg) 88%,transparent);padding:10px 0;backdrop-filter:blur(16px);}
.pq-target-intro{background:linear-gradient(135deg,var(--pq-accent-soft),var(--pq-surface))!important;}

/* Appearance controls. */
.pq-appearance-settings{display:grid;gap:16px;}
.pq-appearance-mode{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:540px;}
.pq-appearance-mode .pq-select{width:min(260px,60vw);}
.pq-skin-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;}
.pq-skin-option,.pq-palette-option{border:1px solid var(--pq-line);background:var(--pq-surface-2);color:var(--pq-text);border-radius:18px;padding:12px;text-align:left;cursor:pointer;display:grid;gap:10px;}
.pq-skin-option.active,.pq-palette-option.active{border:2px solid var(--pq-accent);background:var(--pq-accent-soft);box-shadow:var(--pq-focus);}
.pq-skin-option>span:last-child,.pq-palette-option>span:last-child{display:grid;gap:4px;}.pq-skin-option small,.pq-palette-option small{color:var(--pq-muted)!important;line-height:1.35;}
.pq-skin-preview{height:82px;border-radius:14px;padding:9px;display:grid;grid-template-columns:30% 1fr;grid-template-rows:16px 1fr;gap:7px;background:#101318;border:1px solid #303744;overflow:hidden;}
.pq-skin-preview i{grid-row:1/3;border-radius:8px;background:#242b36;}.pq-skin-preview b{border-radius:99px;background:#d99a16;}.pq-skin-preview em{border-radius:10px;background:#fff;opacity:.85;}
.pq-skin-preview.storybook{background:#e8f5ff;border-color:#cee4f3;}.pq-skin-preview.storybook i{background:#dbe88c;}.pq-skin-preview.storybook b{background:#ffd75a;}.pq-skin-preview.storybook em{background:#fff;border-radius:16px;}
.pq-skin-preview.guild{background:#111a31;border-color:#37466a;}.pq-skin-preview.guild i{background:#25345f;}.pq-skin-preview.guild b{background:#e1b12c;}.pq-skin-preview.guild em{background:#212b4b;}
.pq-skin-preview.focus{background:#f5f7fa;border-color:#d8dde6;}.pq-skin-preview.focus i{background:#e2e6ec;border-radius:3px;}.pq-skin-preview.focus b{background:#3e8ee8;border-radius:3px;}.pq-skin-preview.focus em{background:#fff;border-radius:3px;}
.pq-palette-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;}
.pq-swatches{display:flex;height:30px;border-radius:999px;overflow:hidden;border:1px solid color-mix(in srgb,var(--pq-line) 70%,transparent);}.pq-swatches i{flex:1;}

/* Mobile app shell. */
.pq-bottom-nav{display:none;}
@media(max-width:900px){
  .pq-app{display:block!important;min-height:100dvh;}
  .pq-sidebar{display:none!important;}
  .pq-main{padding:0 14px calc(92px + env(safe-area-inset-bottom))!important;}
  .pq-topbar{height:58px;margin:0 -14px;padding:0 14px;border-bottom:1px solid var(--pq-line)!important;}
  .pq-title-brand{font-size:18px!important;}
  .pq-wallet span{padding:6px 9px!important;font-size:12px;}
  .pq-user-label{display:none;}
  .pq-realm-picker{grid-template-columns:1fr!important;margin:10px 0 4px!important;gap:5px!important;}
  .pq-realm-picker label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}
  .pq-realm-picker .pq-select{border-radius:999px!important;padding:8px 14px!important;background:var(--pq-surface)!important;}
  .pq-display{font-size:clamp(36px,11vw,54px)!important;margin:20px 0 6px!important;}
  .pq-subtitle{font-size:14px;margin-bottom:16px!important;}
  .pq-card{padding:16px!important;margin:11px 0!important;border-radius:22px!important;}
  .pq-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:70;padding:7px 7px calc(7px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--pq-surface) 94%,transparent);border-top:1px solid var(--pq-line);backdrop-filter:blur(18px);box-shadow:0 -10px 30px rgba(0,0,0,.12);}
  .pq-bottom-nav button{display:grid;justify-items:center;gap:3px;padding:5px 2px;border:0;background:transparent;color:var(--pq-muted);font-size:11px;font-weight:750;cursor:pointer;}
  .pq-bottom-nav button.active{color:var(--pq-text);}
  .pq-bottom-nav button.active .pq-bottom-nav-icon{background:var(--pq-accent-soft);color:var(--pq-accent);transform:translateY(-2px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pq-accent) 36%,transparent);}
  .pq-bottom-nav-icon{width:37px;height:31px;border-radius:16px;display:grid;place-items:center;font-size:23px;line-height:1;transition:.16s ease;}
  .pq-nutrition-subnav{margin-inline:-14px;padding-inline:14px;}
  .pq-nutrition-subnav button{min-height:42px;padding:8px 12px;}
  .pq-nutrition-hero{margin-inline:-14px;border-radius:0 0 34px 34px;border-left:0;border-right:0;padding:22px 16px;}
  .pq-nutrition-calorie-summary{grid-template-columns:1fr minmax(135px,165px) 1fr;gap:8px;margin-bottom:20px;}
  .pq-nutrition-side-stat strong{font-size:25px;}.pq-nutrition-side-stat span{font-size:12px;}
  .pq-calorie-ring{width:145px;}.pq-calorie-ring::before{inset:11px;}.pq-calorie-ring strong{font-size:34px;}
  .pq-nutrition-macro-panel{padding:17px 10px;border-radius:24px;}
  .pq-nutrition-rings{grid-template-columns:repeat(4,minmax(72px,1fr));gap:5px;}
  .pq-nutrition-ring-track{width:70px;}.pq-nutrition-ring-track::before{inset:7px;}.pq-nutrition-ring-track strong{font-size:16px;}.pq-nutrition-ring-track small{font-size:9px;}.pq-nutrition-ring>b{font-size:11px;}
  .pq-nutrition-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .pq-nutrition-tool-card{min-height:132px;padding:17px;border-radius:22px;}
  .pq-meal-toolbar{top:58px;margin-inline:-14px;padding:8px 14px;overflow-x:auto;display:block!important;}
  .pq-meal-toolbar>.pq-row{flex-wrap:nowrap!important;width:max-content;}
  .pq-app-tabs{flex-wrap:nowrap!important;}
  .pq-app-tabs .pq-btn{white-space:nowrap;}
  .pq-skin-grid,.pq-palette-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:520px){
  .pq-topbar-actions{gap:5px!important;}.pq-topbar-actions .pq-btn{padding:7px 9px!important;min-height:38px!important;}
  .pq-wallet span:nth-child(2){display:none;}
  .pq-nutrition-calorie-summary{grid-template-columns:1fr 135px 1fr;}
  .pq-calorie-ring{width:128px;}.pq-calorie-ring strong{font-size:30px;}
  .pq-nutrition-rings{grid-template-columns:repeat(2,1fr);gap:14px;}
  .pq-nutrition-ring-track{width:82px;}.pq-nutrition-ring>b{font-size:12px;}
  .pq-meal-journal-row{grid-template-columns:50px minmax(0,1fr) 38px;gap:10px;}.pq-meal-journal-icon{width:46px;height:46px;border-radius:15px;}
  .pq-skin-grid,.pq-palette-grid{grid-template-columns:1fr;}
}

/* Color-blind palette gets redundant non-color cues. */
html[data-pq-palette="colorblind"] .pq-nutrition-ring.protein .pq-nutrition-ring-track{background:repeating-conic-gradient(var(--macro-protein) 0 7deg,color-mix(in srgb,var(--macro-protein) 64%,white) 7deg 10deg,color-mix(in srgb,var(--pq-line) 55%,transparent) 10deg 12deg);}
html[data-pq-palette="colorblind"] .pq-macro-card{border-width:2px!important;}
html[data-pq-palette="colorblind"] .pq-flow-selected,html[data-pq-palette="colorblind"] .active{outline:2px dashed var(--pq-accent);outline-offset:2px;}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg{border:2px solid #fff;}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}

/* v21.29 persistent appearance sync and non-color accessibility cues. */
.pq-appearance-sync{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--pq-line);border-radius:14px;background:var(--pq-surface-2);color:var(--pq-muted);font-size:13px;font-weight:750;line-height:1.35}
.pq-appearance-sync>span:first-child{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border-radius:50%;background:var(--pq-accent-soft);color:var(--pq-accent);font-weight:950}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.protein .pq-nutrition-ring-track{outline:3px solid var(--macro-protein);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.carbs .pq-nutrition-ring-track{outline:3px dashed var(--macro-carbs);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.fat .pq-nutrition-ring-track{outline:4px double var(--macro-fat);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.fiber .pq-nutrition-ring-track{outline:3px dotted var(--macro-fiber);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.protein{background:repeating-linear-gradient(45deg,#009e73 0 10px,#007f5e 10px 20px)}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.carbs{background:repeating-linear-gradient(90deg,#0072b2 0 12px,#005f94 12px 24px)}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.fat{background:repeating-linear-gradient(135deg,#e69f00 0 9px,#c18400 9px 18px)}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.fiber{background:repeating-linear-gradient(0deg,#cc79a7 0 8px,#a95d88 8px 16px)}
@media(max-width:700px){.pq-appearance-sync{align-items:flex-start}.pq-appearance-mode{align-items:flex-start;flex-direction:column}.pq-appearance-mode .pq-select{width:100%}}

/* ========================================================================
   v21.30 cohesive appearance variables, complete presets, food photo input,
   and completed-review cleanup.
   ======================================================================== */
:root{
  --pq-accent:#ffc21f;
  --pq-accent-2:#d99a16;
  --pq-accent-soft:rgba(255,194,31,.16);
  --pq-on-accent:#111318;
  --pq-surface:#111111;
  --pq-surface-2:#181818;
  --pq-surface-3:#222222;
  --pq-page-bg:#050505;
  --pq-sidebar-bg:#090b10;
  --pq-card-shadow:0 18px 45px rgba(0,0,0,.24);
  --pq-card-shadow-soft:0 8px 24px rgba(0,0,0,.14);
  --pq-focus:0 0 0 3px rgba(255,194,31,.32);
  --pq-success-accent:#2f9e67;
  --pq-warning-accent:#e69f00;
  --pq-danger-accent:#d55e5e;
  --macro-protein:#2f9e67;
  --macro-carbs:#2f78c4;
  --macro-fat:#e1b12c;
  --macro-fiber:#d06d35;
}
html[data-pq-theme="light"]{
  --pq-page-bg:#f4f6fb;
  --pq-bg:#f4f6fb;
  --pq-bg-2:#edf1f7;
  --pq-surface:#ffffff;
  --pq-surface-2:#f7f8fc;
  --pq-surface-3:#eef1f6;
  --pq-panel:#ffffff;
  --pq-panel-2:#f7f8fc;
  --pq-panel-warm:#fff8e8;
  --pq-sidebar-bg:#ffffff;
  --pq-line:#dce2ec;
  --pq-line-soft:#e8ecf3;
  --pq-text:#1d2a3a;
  --pq-muted:#69778b;
  --pq-success:#e8f7ef;
  --pq-danger:#fff0f0;
  --pq-card-shadow:0 18px 50px rgba(42,55,79,.12);
  --pq-card-shadow-soft:0 7px 24px rgba(42,55,79,.09);
}
html[data-pq-theme="dark"]{
  --pq-page-bg:#07090e;
  --pq-bg:#07090e;
  --pq-bg-2:#0c1018;
  --pq-surface:#111620;
  --pq-surface-2:#171e2a;
  --pq-surface-3:#202938;
  --pq-panel:#111620;
  --pq-panel-2:#171e2a;
  --pq-panel-warm:#241c0e;
  --pq-sidebar-bg:#0b0f17;
  --pq-line:#2b3546;
  --pq-line-soft:#222a38;
  --pq-text:#f7f8fb;
  --pq-muted:#aeb9ca;
  --pq-success:#123d31;
  --pq-danger:#4a2020;
}
html[data-pq-palette="gold"]{
  --pq-accent:#ffc21f;--pq-accent-2:#d99a16;--pq-accent-soft:rgba(255,194,31,.16);--pq-on-accent:#14110a;
  --macro-protein:#37a661;--macro-carbs:#3479c7;--macro-fat:#e0b42f;--macro-fiber:#cd713e;
}
html[data-pq-palette="meadow"]{
  --pq-accent:#8bbd38;--pq-accent-2:#5d8e20;--pq-accent-soft:rgba(139,189,56,.18);--pq-on-accent:#17220d;
  --macro-protein:#e66d78;--macro-carbs:#5bb7d8;--macro-fat:#efc84d;--macro-fiber:#a6794b;
}
html[data-pq-palette="ocean"]{
  --pq-accent:#3e8ee8;--pq-accent-2:#1765b8;--pq-accent-soft:rgba(62,142,232,.17);--pq-on-accent:#071a2d;
  --macro-protein:#1ba784;--macro-carbs:#3d82db;--macro-fat:#efa733;--macro-fiber:#8b69c7;
}
html[data-pq-palette="colorblind"]{
  --pq-accent:#0072b2;--pq-accent-2:#00547f;--pq-accent-soft:rgba(0,114,178,.17);--pq-on-accent:#ffffff;
  --pq-success-accent:#009e73;--pq-warning-accent:#e69f00;--pq-danger-accent:#cc79a7;
  --macro-protein:#009e73;--macro-carbs:#0072b2;--macro-fat:#e69f00;--macro-fiber:#cc79a7;
}
:root,
html[data-pq-theme]{
  --pq-gold:var(--pq-accent);
  --pq-gold-2:var(--pq-accent-2);
  --pq-gold-3:var(--pq-accent-2);
}

html,body,#projectquest-root{background:var(--pq-page-bg)!important;color:var(--pq-text)!important;}
body{min-height:100vh;background:var(--pq-page-bg)!important;color:var(--pq-text)!important;}
.pq-app,.pq-main{background:transparent!important;color:var(--pq-text)!important;}
.pq-main{padding-bottom:70px;}
.pq-sidebar{background:var(--pq-sidebar-bg)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-topbar{background:color-mix(in srgb,var(--pq-page-bg) 88%,transparent)!important;border-color:var(--pq-line)!important;backdrop-filter:blur(16px);position:sticky;top:0;z-index:36;}
.pq-title-brand,.pq-display,.pq-gold{color:var(--pq-accent)!important;}
.pq-display{font-size:clamp(38px,5.5vw,72px);line-height:1;letter-spacing:-.035em;}
.pq-subtitle{color:var(--pq-muted)!important;max-width:850px;line-height:1.55;}
.pq-page{width:100%;max-width:1480px;margin:0 auto;}
.pq-card,.pq-thread-list,.pq-chat-panel,.pq-modal,.pq-pop,.pq-user-pop,.pq-menu,.pq-food-day,.pq-food-meal,.pq-action-group,.pq-estimate-box,.pq-period,.pq-filters{
  background:var(--pq-surface)!important;
  color:var(--pq-text)!important;
  border-color:var(--pq-line)!important;
  box-shadow:var(--pq-card-shadow-soft);
}
.pq-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
@media(hover:hover){.pq-card:hover{border-color:color-mix(in srgb,var(--pq-accent) 34%,var(--pq-line))!important;}}
.pq-muted,.pq-help,.pq-subtitle,.pq-card small,.pq-thread-list small,.pq-food-day-title small,.pq-food-item-row small{color:var(--pq-muted)!important;}
.pq-input,.pq-textarea,.pq-select{
  background:var(--pq-surface-2)!important;color:var(--pq-text)!important;border-color:var(--pq-line)!important;border-radius:14px!important;
}
.pq-input:focus,.pq-textarea:focus,.pq-select:focus,button:focus-visible{outline:none!important;box-shadow:var(--pq-focus)!important;border-color:var(--pq-accent)!important;}
.pq-btn{
  min-height:43px;border-radius:14px!important;background:var(--pq-surface-2)!important;color:var(--pq-text)!important;border-color:var(--pq-line)!important;
  box-shadow:none;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.pq-btn:hover{transform:translateY(-1px);filter:none!important;box-shadow:var(--pq-card-shadow-soft);}
.pq-btn-primary,.pq-tabs .active{
  background:linear-gradient(135deg,color-mix(in srgb,var(--pq-accent) 92%,white),var(--pq-accent-2))!important;
  color:var(--pq-on-accent)!important;border-color:var(--pq-accent-2)!important;
}
.pq-btn-danger{background:color-mix(in srgb,var(--pq-danger-accent) 22%,var(--pq-surface))!important;border-color:var(--pq-danger-accent)!important;color:var(--pq-text)!important;}
.pq-link-button{color:var(--pq-accent)!important;}
.pq-badge,.pq-pill{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-click-row,.pq-mini-row,.pq-review-row,.pq-recipe-row,.pq-invite-row,.pq-table-row{border-color:var(--pq-line-soft)!important;color:var(--pq-text)!important;}
.pq-click-row:hover,.pq-mini-row:hover{background:var(--pq-accent-soft)!important;}
.pq-side-nav button,.pq-nav-group-head,.pq-nav-group-items button{color:var(--pq-text)!important;}
.pq-sidebar nav button.active,.pq-nav-group-items button.active{background:var(--pq-accent-soft)!important;border-color:var(--pq-accent)!important;color:var(--pq-text)!important;}
.pq-wallet span{background:var(--pq-surface)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-success{background:color-mix(in srgb,var(--pq-success-accent) 16%,var(--pq-surface))!important;border-color:var(--pq-success-accent)!important;color:var(--pq-text)!important;}
.pq-warning{background:color-mix(in srgb,var(--pq-warning-accent) 18%,var(--pq-surface))!important;border-color:var(--pq-warning-accent)!important;color:var(--pq-text)!important;}
.pq-error{background:color-mix(in srgb,var(--pq-danger-accent) 16%,var(--pq-surface))!important;border-color:var(--pq-danger-accent)!important;color:var(--pq-text)!important;}
.pq-msg{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-msg.user{background:var(--pq-accent-soft)!important;border-color:var(--pq-accent)!important;}
.pq-composer{background:color-mix(in srgb,var(--pq-surface) 94%,transparent)!important;border-color:var(--pq-line)!important;backdrop-filter:blur(14px);}

/* Skin personality: structure and rhythm, not just recoloring. */
html[data-pq-skin="classic"]{--pq-radius:18px;--pq-font-title:"Cinzel Decorative","Cinzel",Georgia,serif;}
html[data-pq-skin="storybook"]{
  --pq-radius:28px;--pq-font-title:Georgia,"Times New Roman",serif;
  --pq-card-shadow:0 22px 55px rgba(65,81,104,.14);--pq-card-shadow-soft:0 9px 28px rgba(65,81,104,.10);
}
html[data-pq-skin="storybook"] body{
  background:
    radial-gradient(circle at 84% 4%,color-mix(in srgb,var(--pq-accent) 22%,transparent) 0 80px,transparent 81px),
    radial-gradient(circle at 76% 8%,color-mix(in srgb,var(--pq-accent) 9%,transparent) 0 145px,transparent 146px),
    linear-gradient(180deg,color-mix(in srgb,var(--pq-page-bg) 92%,#dff4ff),var(--pq-page-bg) 36%)!important;
}
html[data-pq-skin="storybook"] .pq-card,
html[data-pq-skin="storybook"] .pq-thread-list,
html[data-pq-skin="storybook"] .pq-chat-panel{border-radius:28px!important;box-shadow:var(--pq-card-shadow-soft);}
html[data-pq-skin="storybook"] .pq-btn{border-radius:999px!important;padding-inline:18px;}
html[data-pq-skin="storybook"] .pq-display{font-weight:500;text-transform:none;}
html[data-pq-skin="storybook"] .pq-topbar{border-bottom:0!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+1){background:color-mix(in srgb,var(--pq-surface) 88%,#fff0b9)!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+2){background:color-mix(in srgb,var(--pq-surface) 90%,#d9f3f0)!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+3){background:color-mix(in srgb,var(--pq-surface) 90%,#ffe0e5)!important;}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card:nth-child(4n+4){background:color-mix(in srgb,var(--pq-surface) 90%,#e6efc7)!important;}
html[data-pq-skin="guild"]{--pq-radius:22px;--pq-font-title:"Cinzel Decorative",Georgia,serif;}
html[data-pq-skin="guild"] body{background:radial-gradient(circle at 70% -10%,color-mix(in srgb,var(--pq-accent) 20%,transparent),transparent 34%),linear-gradient(160deg,#0a1020,var(--pq-page-bg) 56%)!important;}
html[data-pq-skin="guild"] .pq-card{background:linear-gradient(145deg,color-mix(in srgb,var(--pq-surface) 95%,#1a2750),var(--pq-surface))!important;border-width:1px;}
html[data-pq-skin="guild"] .pq-btn-primary{box-shadow:0 0 28px color-mix(in srgb,var(--pq-accent) 24%,transparent);}
html[data-pq-skin="focus"]{--pq-radius:12px;--pq-font-title:var(--pq-font-body);--pq-card-shadow:none;--pq-card-shadow-soft:none;}
html[data-pq-skin="focus"] .pq-card{border-radius:12px!important;box-shadow:none!important;}
html[data-pq-skin="focus"] .pq-display{font-weight:850;letter-spacing:-.05em;}
html[data-pq-skin="focus"] .pq-btn{border-radius:10px!important;}

/* Nutrition module shell and app-inspired dashboard. */
.pq-nutrition-page{max-width:1240px;}
.pq-nutrition-subnav{display:flex;gap:8px;overflow-x:auto;padding:5px 2px 12px;margin:-2px 0 18px;scrollbar-width:none;}
.pq-nutrition-subnav::-webkit-scrollbar{display:none;}
.pq-nutrition-subnav button{flex:0 0 auto;display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 14px;border-radius:999px;border:1px solid var(--pq-line);background:var(--pq-surface);color:var(--pq-muted);font-weight:800;cursor:pointer;}
.pq-nutrition-subnav button.active{background:var(--pq-accent-soft);border-color:var(--pq-accent);color:var(--pq-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pq-accent) 40%,transparent);}
.pq-nutrition-subnav-icon{font-size:18px;}
.pq-nutrition-hero{border-radius:32px;padding:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--pq-accent) 26%,var(--pq-surface)),var(--pq-surface) 64%);border:1px solid color-mix(in srgb,var(--pq-accent) 40%,var(--pq-line));box-shadow:var(--pq-card-shadow);}
.pq-nutrition-calorie-summary{display:grid;grid-template-columns:1fr minmax(180px,240px) 1fr;align-items:center;gap:20px;max-width:760px;margin:0 auto 26px;text-align:center;}
.pq-nutrition-side-stat{display:grid;gap:3px;}
.pq-nutrition-side-stat strong{font-size:clamp(28px,5vw,46px);}
.pq-nutrition-side-stat span{color:var(--pq-muted);font-weight:750;}
.pq-calorie-ring{--pq-progress:0%;width:clamp(150px,24vw,220px);aspect-ratio:1;border-radius:50%;border:0;margin:auto;display:grid;place-content:center;position:relative;background:conic-gradient(var(--pq-accent) var(--pq-progress),color-mix(in srgb,var(--pq-surface) 76%,transparent) 0);color:var(--pq-text);cursor:pointer;box-shadow:0 12px 35px color-mix(in srgb,var(--pq-accent) 18%,transparent);}
.pq-calorie-ring::before{content:"";position:absolute;inset:13px;border-radius:50%;background:var(--pq-surface);box-shadow:inset 0 0 0 1px var(--pq-line);}
.pq-calorie-ring strong,.pq-calorie-ring span{position:relative;z-index:1;}
.pq-calorie-ring strong{font-size:clamp(34px,6vw,54px);line-height:1;}
.pq-calorie-ring span{font-weight:800;color:var(--pq-muted);margin-top:5px;}
.pq-nutrition-macro-panel{background:color-mix(in srgb,var(--pq-surface) 90%,transparent);border:1px solid color-mix(in srgb,var(--pq-line) 75%,transparent);border-radius:26px;padding:22px;}
.pq-section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;}
.pq-section-title h2,.pq-section-title h3,.pq-section-title p{margin:0;}
.pq-section-title button{border:0;background:transparent;color:var(--pq-accent);font-weight:850;cursor:pointer;}
.pq-nutrition-rings{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:16px;margin-top:20px;}
.pq-nutrition-ring{border:0;background:transparent;color:var(--pq-text);display:grid;justify-items:center;gap:9px;cursor:pointer;}
.pq-nutrition-ring-track{--pq-progress:0%;width:104px;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;position:relative;background:conic-gradient(currentColor var(--pq-progress),color-mix(in srgb,var(--pq-line) 55%,transparent) 0);}
.pq-nutrition-ring-track::before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--pq-surface);}
.pq-nutrition-ring-track strong,.pq-nutrition-ring-track small{position:relative;z-index:1;color:var(--pq-text)!important;}
.pq-nutrition-ring-track strong{font-size:22px;line-height:1;}
.pq-nutrition-ring-track small{font-size:11px;}
.pq-nutrition-ring.protein{color:var(--macro-protein)}.pq-nutrition-ring.carbs{color:var(--macro-carbs)}.pq-nutrition-ring.fat{color:var(--macro-fat)}.pq-nutrition-ring.fiber{color:var(--macro-fiber)}
.pq-nutrition-ring>b{color:var(--pq-text);}
.pq-today-meals{padding:22px!important;margin-top:22px!important;}
.pq-meal-journal-list{display:grid;margin-top:12px;}
.pq-meal-journal-row{display:grid;grid-template-columns:58px minmax(0,1fr) 42px;gap:14px;align-items:center;width:100%;padding:15px 4px;border:0;border-top:1px solid var(--pq-line-soft);background:transparent;color:var(--pq-text);text-align:left;cursor:pointer;}
.pq-meal-journal-row:first-child{border-top:0;}
.pq-meal-journal-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:var(--pq-accent-soft);font-size:26px;}
.pq-meal-journal-copy{display:grid;gap:4px;min-width:0;}
.pq-meal-journal-copy strong{font-size:18px;}.pq-meal-journal-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--pq-muted)!important;}
.pq-meal-journal-add{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--pq-surface-2);border:1px solid var(--pq-line);font-size:24px;font-weight:500;}
.pq-meal-journal-row.empty .pq-meal-journal-copy small{font-style:italic;}
.pq-nutrition-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0;}
.pq-nutrition-tool-card{min-height:154px;display:grid;align-content:center;justify-items:start;gap:6px;padding:22px;border:1px solid var(--pq-line);border-radius:26px;background:var(--pq-surface);color:var(--pq-text);text-align:left;cursor:pointer;box-shadow:var(--pq-card-shadow-soft);}
.pq-nutrition-tool-card:nth-child(3n+1){background:color-mix(in srgb,var(--pq-surface) 88%,#ffd9dd)!important;}.pq-nutrition-tool-card:nth-child(3n+2){background:color-mix(in srgb,var(--pq-surface) 88%,#d8f0ee)!important;}.pq-nutrition-tool-card:nth-child(3n+3){background:color-mix(in srgb,var(--pq-surface) 88%,#e7efbd)!important;}
.pq-nutrition-tool-icon{font-size:34px;}.pq-nutrition-tool-card strong{font-size:18px;}.pq-nutrition-tool-card small{color:var(--pq-muted)!important;}
.pq-nutrition-actions{justify-content:center;margin:20px 0 34px;}
.pq-app-tabs{background:var(--pq-surface);border:1px solid var(--pq-line);border-radius:18px;padding:5px;gap:5px!important;box-shadow:var(--pq-card-shadow-soft);}
.pq-app-tabs .pq-btn{min-height:40px;margin:0;border-color:transparent!important;}
.pq-meal-toolbar{align-items:center;position:sticky;top:78px;z-index:21;background:color-mix(in srgb,var(--pq-page-bg) 88%,transparent);padding:10px 0;backdrop-filter:blur(16px);}
.pq-target-intro{background:linear-gradient(135deg,var(--pq-accent-soft),var(--pq-surface))!important;}

/* Appearance controls. */
.pq-appearance-settings{display:grid;gap:16px;}
.pq-appearance-mode{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:540px;}
.pq-appearance-mode .pq-select{width:min(260px,60vw);}
.pq-skin-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;}
.pq-skin-option,.pq-palette-option{border:1px solid var(--pq-line);background:var(--pq-surface-2);color:var(--pq-text);border-radius:18px;padding:12px;text-align:left;cursor:pointer;display:grid;gap:10px;}
.pq-skin-option.active,.pq-palette-option.active{border:2px solid var(--pq-accent);background:var(--pq-accent-soft);box-shadow:var(--pq-focus);}
.pq-skin-option>span:last-child,.pq-palette-option>span:last-child{display:grid;gap:4px;}.pq-skin-option small,.pq-palette-option small{color:var(--pq-muted)!important;line-height:1.35;}
.pq-skin-preview{height:82px;border-radius:14px;padding:9px;display:grid;grid-template-columns:30% 1fr;grid-template-rows:16px 1fr;gap:7px;background:#101318;border:1px solid #303744;overflow:hidden;}
.pq-skin-preview i{grid-row:1/3;border-radius:8px;background:#242b36;}.pq-skin-preview b{border-radius:99px;background:#d99a16;}.pq-skin-preview em{border-radius:10px;background:#fff;opacity:.85;}
.pq-skin-preview.storybook{background:#e8f5ff;border-color:#cee4f3;}.pq-skin-preview.storybook i{background:#dbe88c;}.pq-skin-preview.storybook b{background:#ffd75a;}.pq-skin-preview.storybook em{background:#fff;border-radius:16px;}
.pq-skin-preview.guild{background:#111a31;border-color:#37466a;}.pq-skin-preview.guild i{background:#25345f;}.pq-skin-preview.guild b{background:#e1b12c;}.pq-skin-preview.guild em{background:#212b4b;}
.pq-skin-preview.focus{background:#f5f7fa;border-color:#d8dde6;}.pq-skin-preview.focus i{background:#e2e6ec;border-radius:3px;}.pq-skin-preview.focus b{background:#3e8ee8;border-radius:3px;}.pq-skin-preview.focus em{background:#fff;border-radius:3px;}
.pq-palette-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;}
.pq-swatches{display:flex;height:30px;border-radius:999px;overflow:hidden;border:1px solid color-mix(in srgb,var(--pq-line) 70%,transparent);}.pq-swatches i{flex:1;}

/* Mobile app shell. */
.pq-bottom-nav{display:none;}
@media(max-width:900px){
  .pq-app{display:block!important;min-height:100dvh;}
  .pq-sidebar{display:none!important;}
  .pq-main{padding:0 14px calc(92px + env(safe-area-inset-bottom))!important;}
  .pq-topbar{height:58px;margin:0 -14px;padding:0 14px;border-bottom:1px solid var(--pq-line)!important;}
  .pq-title-brand{font-size:18px!important;}
  .pq-wallet span{padding:6px 9px!important;font-size:12px;}
  .pq-user-label{display:none;}
  .pq-realm-picker{grid-template-columns:1fr!important;margin:10px 0 4px!important;gap:5px!important;}
  .pq-realm-picker label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}
  .pq-realm-picker .pq-select{border-radius:999px!important;padding:8px 14px!important;background:var(--pq-surface)!important;}
  .pq-display{font-size:clamp(36px,11vw,54px)!important;margin:20px 0 6px!important;}
  .pq-subtitle{font-size:14px;margin-bottom:16px!important;}
  .pq-card{padding:16px!important;margin:11px 0!important;border-radius:22px!important;}
  .pq-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:70;padding:7px 7px calc(7px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--pq-surface) 94%,transparent);border-top:1px solid var(--pq-line);backdrop-filter:blur(18px);box-shadow:0 -10px 30px rgba(0,0,0,.12);}
  .pq-bottom-nav button{display:grid;justify-items:center;gap:3px;padding:5px 2px;border:0;background:transparent;color:var(--pq-muted);font-size:11px;font-weight:750;cursor:pointer;}
  .pq-bottom-nav button.active{color:var(--pq-text);}
  .pq-bottom-nav button.active .pq-bottom-nav-icon{background:var(--pq-accent-soft);color:var(--pq-accent);transform:translateY(-2px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pq-accent) 36%,transparent);}
  .pq-bottom-nav-icon{width:37px;height:31px;border-radius:16px;display:grid;place-items:center;font-size:23px;line-height:1;transition:.16s ease;}
  .pq-nutrition-subnav{margin-inline:-14px;padding-inline:14px;}
  .pq-nutrition-subnav button{min-height:42px;padding:8px 12px;}
  .pq-nutrition-hero{margin-inline:-14px;border-radius:0 0 34px 34px;border-left:0;border-right:0;padding:22px 16px;}
  .pq-nutrition-calorie-summary{grid-template-columns:1fr minmax(135px,165px) 1fr;gap:8px;margin-bottom:20px;}
  .pq-nutrition-side-stat strong{font-size:25px;}.pq-nutrition-side-stat span{font-size:12px;}
  .pq-calorie-ring{width:145px;}.pq-calorie-ring::before{inset:11px;}.pq-calorie-ring strong{font-size:34px;}
  .pq-nutrition-macro-panel{padding:17px 10px;border-radius:24px;}
  .pq-nutrition-rings{grid-template-columns:repeat(4,minmax(72px,1fr));gap:5px;}
  .pq-nutrition-ring-track{width:70px;}.pq-nutrition-ring-track::before{inset:7px;}.pq-nutrition-ring-track strong{font-size:16px;}.pq-nutrition-ring-track small{font-size:9px;}.pq-nutrition-ring>b{font-size:11px;}
  .pq-nutrition-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .pq-nutrition-tool-card{min-height:132px;padding:17px;border-radius:22px;}
  .pq-meal-toolbar{top:58px;margin-inline:-14px;padding:8px 14px;overflow-x:auto;display:block!important;}
  .pq-meal-toolbar>.pq-row{flex-wrap:nowrap!important;width:max-content;}
  .pq-app-tabs{flex-wrap:nowrap!important;}
  .pq-app-tabs .pq-btn{white-space:nowrap;}
  .pq-skin-grid,.pq-palette-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:520px){
  .pq-topbar-actions{gap:5px!important;}.pq-topbar-actions .pq-btn{padding:7px 9px!important;min-height:38px!important;}
  .pq-wallet span:nth-child(2){display:none;}
  .pq-nutrition-calorie-summary{grid-template-columns:1fr 135px 1fr;}
  .pq-calorie-ring{width:128px;}.pq-calorie-ring strong{font-size:30px;}
  .pq-nutrition-rings{grid-template-columns:repeat(2,1fr);gap:14px;}
  .pq-nutrition-ring-track{width:82px;}.pq-nutrition-ring>b{font-size:12px;}
  .pq-meal-journal-row{grid-template-columns:50px minmax(0,1fr) 38px;gap:10px;}.pq-meal-journal-icon{width:46px;height:46px;border-radius:15px;}
  .pq-skin-grid,.pq-palette-grid{grid-template-columns:1fr;}
}

/* Color-blind palette gets redundant non-color cues. */
html[data-pq-palette="colorblind"] .pq-nutrition-ring.protein .pq-nutrition-ring-track{background:repeating-conic-gradient(var(--macro-protein) 0 7deg,color-mix(in srgb,var(--macro-protein) 64%,white) 7deg 10deg,color-mix(in srgb,var(--pq-line) 55%,transparent) 10deg 12deg);}
html[data-pq-palette="colorblind"] .pq-macro-card{border-width:2px!important;}
html[data-pq-palette="colorblind"] .pq-flow-selected,html[data-pq-palette="colorblind"] .active{outline:2px dashed var(--pq-accent);outline-offset:2px;}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg{border:2px solid #fff;}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}

/* v21.29 persistent appearance sync and non-color accessibility cues. */
.pq-appearance-sync{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--pq-line);border-radius:14px;background:var(--pq-surface-2);color:var(--pq-muted);font-size:13px;font-weight:750;line-height:1.35}
.pq-appearance-sync>span:first-child{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border-radius:50%;background:var(--pq-accent-soft);color:var(--pq-accent);font-weight:950}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.protein .pq-nutrition-ring-track{outline:3px solid var(--macro-protein);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.carbs .pq-nutrition-ring-track{outline:3px dashed var(--macro-carbs);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.fat .pq-nutrition-ring-track{outline:4px double var(--macro-fat);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-nutrition-ring.fiber .pq-nutrition-ring-track{outline:3px dotted var(--macro-fiber);outline-offset:2px}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.protein{background:repeating-linear-gradient(45deg,#009e73 0 10px,#007f5e 10px 20px)}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.carbs{background:repeating-linear-gradient(90deg,#0072b2 0 12px,#005f94 12px 24px)}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.fat{background:repeating-linear-gradient(135deg,#e69f00 0 9px,#c18400 9px 18px)}
html[data-pq-palette="colorblind"] .pq-sankey-percent-seg.fiber{background:repeating-linear-gradient(0deg,#cc79a7 0 8px,#a95d88 8px 16px)}
@media(max-width:700px){.pq-appearance-sync{align-items:flex-start}.pq-appearance-mode{align-items:flex-start;flex-direction:column}.pq-appearance-mode .pq-select{width:100%}}

/* Semantic color aliases used by every composition. */
:root{
  --pq-primary:var(--pq-accent);
  --pq-primary-strong:var(--pq-accent-2);
  --pq-secondary:#2f9f8f;
  --pq-secondary-strong:#207a6e;
  --pq-secondary-soft:color-mix(in srgb,var(--pq-secondary) 18%,transparent);
  --pq-highlight:var(--pq-accent);
  --pq-on-primary:var(--pq-on-accent);
  --pq-neutral:#87919f;
}

/* Exact legacy ProjectQuest/Tailwind system from resources/css/app.css.
   These variables remain available to Blade/Tailwind and React so the
   Original ProjectQuest preset is one cohesive black/gold/emerald/sky skin. */
html[data-pq-theme="dark"][data-pq-palette="gold"]{
  --pq-bg-rgb:10 10 10;
  --pq-bg-panel-rgb:23 23 23;
  --pq-bg-subtle-rgb:38 38 38;
  --pq-text-rgb:245 245 245;
  --pq-text-muted-rgb:163 163 163;
  --pq-border-rgb:38 38 38;
  --pq-border-soft-rgb:64 64 64;
  --pq-primary-300-rgb:252 211 77;
  --pq-primary-400-rgb:251 191 36;
  --pq-primary-500-rgb:245 158 11;
  --pq-primary-600-rgb:217 119 6;
  --pq-secondary-400-rgb:52 211 153;
  --pq-secondary-500-rgb:16 185 129;
  --pq-secondary-600-rgb:5 150 105;
  --pq-accent-300-rgb:125 211 252;
  --pq-accent-400-rgb:56 189 248;
  --pq-accent-500-rgb:14 165 233;

  --pq-page-bg:#0a0a0a;
  --pq-bg:#0a0a0a;
  --pq-bg-2:#050505;
  --pq-surface:#171717;
  --pq-surface-2:#262626;
  --pq-surface-3:#303030;
  --pq-panel:#171717;
  --pq-panel-2:#262626;
  --pq-panel-warm:#1f1604;
  --pq-sidebar-bg:#050505;
  --pq-line:#404040;
  --pq-line-soft:#262626;
  --pq-text:#f5f5f5;
  --pq-muted:#a3a3a3;

  --pq-primary-300:#fcd34d;
  --pq-primary-400:#fbbf24;
  --pq-primary-500:#f59e0b;
  --pq-primary-600:#d97706;
  --pq-secondary-400:#34d399;
  --pq-secondary-500:#10b981;
  --pq-secondary-600:#059669;
  --pq-brand-accent-300:#7dd3fc;
  --pq-brand-accent-400:#38bdf8;
  --pq-brand-accent-500:#0ea5e9;

  --pq-accent:var(--pq-primary-500);
  --pq-accent-2:var(--pq-primary-600);
  --pq-accent-soft:rgba(245,158,11,.16);
  --pq-on-accent:#050505;
  --pq-primary:var(--pq-primary-500);
  --pq-primary-strong:var(--pq-primary-600);
  --pq-secondary:var(--pq-secondary-500);
  --pq-secondary-strong:var(--pq-secondary-600);
  --pq-neutral:var(--pq-muted);
  --pq-highlight:var(--pq-brand-accent-400);
  --pq-card-shadow:0 22px 55px rgba(0,0,0,.30);
  --pq-card-shadow-soft:0 8px 24px rgba(0,0,0,.20);

  --macro-protein:#4cc745;
  --macro-carbs:#1b3c6b;
  --macro-fat:#f7f063;
  --macro-fiber:#cc6731;
}
html[data-pq-theme="dark"][data-pq-skin="classic"][data-pq-palette="gold"] body{
  background:#0a0a0a!important;
}
html[data-pq-theme="dark"][data-pq-skin="classic"][data-pq-palette="gold"] .pq-card,
html[data-pq-theme="dark"][data-pq-skin="classic"][data-pq-palette="gold"] .pq-thread-list,
html[data-pq-theme="dark"][data-pq-skin="classic"][data-pq-palette="gold"] .pq-chat-panel{
  border-radius:18px!important;
  box-shadow:none;
}
html[data-pq-theme="dark"][data-pq-skin="classic"][data-pq-palette="gold"] .pq-btn{
  border-radius:12px!important;
}
html[data-pq-theme="dark"][data-pq-skin="classic"][data-pq-palette="gold"] .pq-sidebar{
  background:#0b0e15!important;
}

/* Additional complete color systems. */
html[data-pq-palette="royal"]{
  --pq-accent:#d8a33a;
  --pq-accent-2:#a8781f;
  --pq-accent-soft:rgba(216,163,58,.17);
  --pq-on-accent:#120d05;
  --pq-secondary:#7056b8;
  --macro-protein:#4fb78b;
  --macro-carbs:#568be0;
  --macro-fat:#d8a33a;
  --macro-fiber:#a66bb5;
}
html[data-pq-theme="dark"][data-pq-palette="royal"]{
  --pq-page-bg:#070b16;
  --pq-bg:#070b16;
  --pq-bg-2:#0b1020;
  --pq-surface:#11182a;
  --pq-surface-2:#18223a;
  --pq-surface-3:#223052;
  --pq-panel:#11182a;
  --pq-panel-2:#18223a;
  --pq-panel-warm:#261d11;
  --pq-sidebar-bg:#080d19;
  --pq-line:#34425f;
  --pq-line-soft:#27334b;
  --pq-text:#f5f1e9;
  --pq-muted:#b7bfd2;
}
html[data-pq-palette="slate"]{
  --pq-accent:#3e8ee8;
  --pq-accent-2:#1765b8;
  --pq-accent-soft:rgba(62,142,232,.16);
  --pq-on-accent:#06182c;
  --pq-secondary:#87919f;
  --macro-protein:#2f9f8f;
  --macro-carbs:#3e8ee8;
  --macro-fat:#c79632;
  --macro-fiber:#8b78b9;
}
html[data-pq-theme="dark"][data-pq-palette="slate"]{
  --pq-page-bg:#0c1016;
  --pq-bg:#0c1016;
  --pq-bg-2:#111722;
  --pq-surface:#171d27;
  --pq-surface-2:#1e2633;
  --pq-surface-3:#293444;
  --pq-panel:#171d27;
  --pq-panel-2:#1e2633;
  --pq-panel-warm:#1d2023;
  --pq-sidebar-bg:#10151d;
  --pq-line:#354152;
  --pq-line-soft:#2a3442;
  --pq-text:#f1f4f8;
  --pq-muted:#aeb8c6;
}
html[data-pq-theme="light"][data-pq-palette="slate"]{
  --pq-page-bg:#eef1f5;
  --pq-bg:#eef1f5;
  --pq-bg-2:#e5e9ef;
  --pq-surface:#ffffff;
  --pq-surface-2:#f5f7fa;
  --pq-surface-3:#e9edf2;
  --pq-panel:#ffffff;
  --pq-panel-2:#f5f7fa;
  --pq-sidebar-bg:#f8f9fb;
  --pq-line:#d3d9e2;
  --pq-line-soft:#e2e6ec;
  --pq-text:#1b2635;
  --pq-muted:#667386;
}

/* Make legacy hard-coded panels inherit the selected color system. */
.pq-food-day,.pq-food-meal,.pq-food-flow-section,.pq-food-insights-shell,
.pq-sankey-scroll-stage,.pq-sankey-percent,.pq-mobile-flow-explorer-head,
.pq-mobile-flow-macro,.pq-flow-detail-card,.pq-router,.pq-confirm-note,
.pq-review-quest,.pq-review-objective,.pq-add-food,.pq-ai-food-box,
.pq-add-food-manual,.pq-voice-review,.pq-transcript-ready{
  background:var(--pq-surface)!important;
  border-color:var(--pq-line)!important;
  color:var(--pq-text)!important;
}
.pq-food-meals,.pq-food-items,.pq-review-editor,.pq-thread-row button,
.pq-food-preview-group,.pq-editable-preview{
  background:var(--pq-surface-2)!important;
  border-color:var(--pq-line-soft)!important;
  color:var(--pq-text)!important;
}
.pq-table th{color:var(--pq-accent)!important;}
.pq-table td,.pq-table th,.pq-tree,.pq-line,.pq-food-item-row,
.pq-food-day-head,.pq-food-meal-head{border-color:var(--pq-line-soft)!important;}

/* Complete theme presets are the primary choice; composition and colors remain advanced controls. */
.pq-appearance-help{margin:-6px 0 0;}
.pq-preset-grid{display:grid;grid-template-columns:repeat(5,minmax(165px,1fr));gap:12px;}
.pq-preset-option{border:1px solid var(--pq-line);background:var(--pq-surface-2);color:var(--pq-text);border-radius:18px;padding:12px;text-align:left;cursor:pointer;display:grid;gap:10px;min-height:154px;}
.pq-preset-option:hover{border-color:color-mix(in srgb,var(--pq-accent) 48%,var(--pq-line));}
.pq-preset-option.active{border:2px solid var(--pq-accent);background:var(--pq-accent-soft);box-shadow:var(--pq-focus);}
.pq-preset-option>span:last-child{display:grid;gap:4px;}
.pq-preset-option small{color:var(--pq-muted)!important;line-height:1.35;}
.pq-preset-preview{height:70px;border-radius:14px;padding:8px;display:grid;grid-template-columns:28% 1fr;grid-template-rows:14px 1fr;gap:6px;border:1px solid rgba(128,128,128,.4);overflow:hidden;}
.pq-preset-preview i{grid-row:1/3;border-radius:7px;}.pq-preset-preview b{border-radius:999px;}.pq-preset-preview em{border-radius:8px;}.pq-preset-preview u{display:none;}
.pq-preset-preview.original{background:#0a0a0a}.pq-preset-preview.original i{background:#171717}.pq-preset-preview.original b{background:#f59e0b}.pq-preset-preview.original em{background:#a3a3a3}
.pq-preset-preview.family{background:#f5f7e7}.pq-preset-preview.family i{background:#dce98d}.pq-preset-preview.family b{background:#ffd75a}.pq-preset-preview.family em{background:#fff}
.pq-preset-preview.royal{background:#0b1020}.pq-preset-preview.royal i{background:#18223a}.pq-preset-preview.royal b{background:#d8a33a}.pq-preset-preview.royal em{background:#7056b8}
.pq-preset-preview.work{background:#eef1f5}.pq-preset-preview.work i{background:#d8dee7}.pq-preset-preview.work b{background:#3e8ee8}.pq-preset-preview.work em{background:#fff}
.pq-preset-preview.accessible{background:#eef2f6}.pq-preset-preview.accessible i{background:#0072b2}.pq-preset-preview.accessible b{background:#e69f00}.pq-preset-preview.accessible em{background:#009e73}

/* Add Food photo / gallery / file picker. */
.pq-visually-hidden{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;}
.pq-food-attachment-actions{display:grid;gap:8px;margin:4px 0 12px;}
.pq-food-attachment-actions .pq-food-photo-launch{width:100%;min-height:54px;justify-content:center;border-style:dashed;background:var(--pq-page-accent-soft);border-color:color-mix(in srgb,var(--pq-page-accent) 70%,var(--pq-line));}
.pq-food-attachment-actions .pq-food-photo-launch:hover{background:color-mix(in srgb,var(--pq-page-accent-soft) 80%,var(--pq-surface-2));}
.pq-food-attachment-actions>small{display:block;line-height:1.4;}
.pq-food-attach-list{margin:8px 0 12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px;}
.pq-food-attach-list .pq-attach-draft{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;}
.pq-food-attach-list .pq-attach-draft img{object-fit:cover;}

/* A finished food review should not leave the old editable proposal in chat. */
.pq-msg-review-complete{max-width:min(82%,720px);}
.pq-review-complete{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--pq-success-accent) 55%,var(--pq-line));border-radius:13px;background:color-mix(in srgb,var(--pq-success-accent) 13%,var(--pq-surface));}
.pq-review-complete-icon{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border-radius:50%;background:var(--pq-success-accent);color:#fff;font-weight:950;}
.pq-review-complete>span:last-child{display:grid;gap:1px;}.pq-review-complete small{color:var(--pq-muted)!important;}

@media(max-width:1100px){.pq-preset-grid{grid-template-columns:repeat(3,minmax(170px,1fr));}}
@media(max-width:700px){
  .pq-preset-grid{grid-template-columns:1fr 1fr;}
  .pq-preset-option{min-height:142px;}
  .pq-food-attachment-actions{display:grid;grid-template-columns:1fr;}
  .pq-food-attachment-actions .pq-btn{min-width:0;padding-inline:12px;}
  .pq-food-attach-list{grid-template-columns:1fr;}
}
@media(max-width:430px){.pq-preset-grid{grid-template-columns:1fr;}}

/* ========================================================================
   v21.31 sitewide grouped theme system
   Extends the cohesive appearance presets to every ProjectQuest module.
   The route group supplies a semantic page accent while the saved user
   theme, skin, and palette continue to own all actual colors and surfaces.
   ======================================================================== */
:root{
  --pq-page-accent:var(--pq-primary,var(--pq-accent));
  --pq-page-accent-strong:var(--pq-primary-strong,var(--pq-accent-2));
  --pq-page-accent-soft:color-mix(in srgb,var(--pq-page-accent) 14%,transparent);
  --pq-page-accent-faint:color-mix(in srgb,var(--pq-page-accent) 7%,transparent);
  --pq-page-on-accent:var(--pq-on-primary,var(--pq-on-accent));
  --pq-group-today:var(--pq-primary,var(--pq-accent));
  --pq-group-nutrition:var(--pq-secondary,var(--macro-protein));
  --pq-group-home:var(--pq-warning-accent,#e69f00);
  --pq-group-capture:var(--pq-highlight,var(--macro-carbs));
  --pq-group-plan:var(--macro-carbs,var(--pq-highlight));
  --pq-group-review:var(--pq-success-accent,#2f9e67);
  --pq-group-admin:var(--pq-neutral,#87919f);
  --pq-group-account:var(--pq-primary,var(--pq-accent));
  --pq-control-height:44px;
  --pq-section-gap:18px;
  --pq-panel-padding:clamp(16px,2vw,24px);
}
.pq-app[data-page-group="today"],.pq-main[data-page-group="today"]{--pq-page-accent:var(--pq-group-today);}
.pq-app[data-page-group="nutrition"],.pq-main[data-page-group="nutrition"]{--pq-page-accent:var(--pq-group-nutrition);}
.pq-app[data-page-group="home"],.pq-main[data-page-group="home"]{--pq-page-accent:var(--pq-group-home);}
.pq-app[data-page-group="capture"],.pq-main[data-page-group="capture"]{--pq-page-accent:var(--pq-group-capture);}
.pq-app[data-page-group="plan"],.pq-main[data-page-group="plan"]{--pq-page-accent:var(--pq-group-plan);}
.pq-app[data-page-group="review"],.pq-main[data-page-group="review"]{--pq-page-accent:var(--pq-group-review);}
.pq-app[data-page-group="admin"],.pq-main[data-page-group="admin"]{--pq-page-accent:var(--pq-group-admin);}
.pq-app[data-page-group="account"],.pq-main[data-page-group="account"]{--pq-page-accent:var(--pq-group-account);}
.pq-app[data-page-group],.pq-main[data-page-group]{
  --pq-page-accent-strong:color-mix(in srgb,var(--pq-page-accent) 76%,black);
  --pq-page-accent-soft:color-mix(in srgb,var(--pq-page-accent) 15%,transparent);
  --pq-page-accent-faint:color-mix(in srgb,var(--pq-page-accent) 7%,transparent);
}

/* App chrome and module grouping. */
.pq-main[data-page-group]{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at 92% 2%,var(--pq-page-accent-faint),transparent 27%),
    transparent!important;
}
.pq-main[data-page-group]::before{
  content:"";
  position:fixed;
  top:0;
  right:0;
  left:210px;
  height:3px;
  z-index:45;
  pointer-events:none;
  background:linear-gradient(90deg,var(--pq-page-accent),color-mix(in srgb,var(--pq-page-accent) 35%,transparent),transparent 78%);
}
.pq-topbar{
  min-height:70px;
  height:auto;
  padding:10px 0;
  gap:14px;
}
.pq-title-brand{letter-spacing:.035em;text-shadow:0 0 24px var(--pq-page-accent-soft);}
.pq-main[data-page-group] .pq-title-brand,
.pq-main[data-page-group] .pq-display,
.pq-main[data-page-group] .pq-gold{color:var(--pq-page-accent)!important;}
.pq-topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
.pq-realm-picker{
  background:color-mix(in srgb,var(--pq-surface) 90%,transparent)!important;
  border:1px solid var(--pq-line)!important;
  border-left:4px solid var(--pq-page-accent)!important;
  border-radius:16px;
  padding:10px 14px;
  box-shadow:var(--pq-card-shadow-soft);
}
.pq-realm-picker label{font-weight:900;color:var(--pq-page-accent);letter-spacing:.03em;}
.pq-realm-picker .pq-select{min-height:40px;}

.pq-sidebar{display:flex;flex-direction:column;overflow:hidden;}
.pq-brand{flex:0 0 auto;}
.pq-side-nav{flex:1;min-height:0;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--pq-line) transparent;}
.pq-nav-group{--pq-nav-accent:var(--pq-accent);border-top:1px solid var(--pq-line-soft);padding:8px 0;}
.pq-nav-group:first-child{border-top:0;}
.pq-nav-group-today{--pq-nav-accent:var(--pq-group-today);}
.pq-nav-group-nutrition{--pq-nav-accent:var(--pq-group-nutrition);}
.pq-nav-group-home{--pq-nav-accent:var(--pq-group-home);}
.pq-nav-group-capture{--pq-nav-accent:var(--pq-group-capture);}
.pq-nav-group-plan{--pq-nav-accent:var(--pq-group-plan);}
.pq-nav-group-do-and-review{--pq-nav-accent:var(--pq-group-review);}
.pq-nav-group-realm-admin{--pq-nav-accent:var(--pq-group-admin);}
.pq-nav-group-help{--pq-nav-accent:var(--pq-group-account);}
.pq-nav-group-head{
  position:relative;
  width:100%;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  min-height:36px;
  padding:7px 10px 7px 18px!important;
  border:0!important;
  background:transparent!important;
  color:var(--pq-nav-accent)!important;
  font-size:12px;
  font-weight:950;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.pq-nav-group-head::before{
  content:"";
  position:absolute;
  left:5px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--pq-nav-accent);
  box-shadow:0 0 10px color-mix(in srgb,var(--pq-nav-accent) 50%,transparent);
}
.pq-nav-group-head b{font-size:16px;color:var(--pq-nav-accent);}
.pq-nav-group-items{display:grid;gap:4px;padding:1px 0 4px;}
.pq-nav-group-items button{
  min-height:42px;
  padding:10px 11px!important;
  border-radius:12px!important;
  border:1px solid transparent!important;
  font-weight:760;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.pq-nav-group-items button:hover{background:color-mix(in srgb,var(--pq-nav-accent) 9%,transparent)!important;transform:translateX(2px);}
.pq-nav-group-items button.active{
  background:color-mix(in srgb,var(--pq-nav-accent) 17%,var(--pq-surface))!important;
  border-color:color-mix(in srgb,var(--pq-nav-accent) 65%,var(--pq-line))!important;
  box-shadow:inset 3px 0 0 var(--pq-nav-accent);
}

/* The menu uses the same module language as the sidebar. */
.pq-menu-section{--pq-menu-accent:var(--pq-accent);position:relative;border:1px solid var(--pq-line);border-radius:16px;padding:12px;background:var(--pq-surface-2);}
.pq-menu-section-today{--pq-menu-accent:var(--pq-group-today);}
.pq-menu-section-nutrition{--pq-menu-accent:var(--pq-group-nutrition);}
.pq-menu-section-home{--pq-menu-accent:var(--pq-group-home);}
.pq-menu-section-capture{--pq-menu-accent:var(--pq-group-capture);}
.pq-menu-section-plan{--pq-menu-accent:var(--pq-group-plan);}
.pq-menu-section-do-and-review{--pq-menu-accent:var(--pq-group-review);}
.pq-menu-section-realm-admin{--pq-menu-accent:var(--pq-group-admin);}
.pq-menu-section-account{--pq-menu-accent:var(--pq-group-account);}
.pq-menu-section>strong{display:block;color:var(--pq-menu-accent);font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 7px;}
.pq-menu-item{border-radius:12px!important;}
.pq-menu-section .pq-menu-item:hover{background:color-mix(in srgb,var(--pq-menu-accent) 12%,transparent)!important;}

/* Consistent page rhythm and section grouping. */
.pq-page{padding-bottom:24px;}
.pq-page>h1,.pq-page>h2,.pq-page>h3{color:var(--pq-text);}
.pq-page>.pq-display,.pq-page>.pq-display-big{margin-top:22px;}
.pq-section-title,.pq-section-head,.pq-food-panel-head,.pq-chat-thread-head,.pq-review-dock-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 14px;
  padding:0 0 12px;
  border-bottom:1px solid var(--pq-line-soft);
}
.pq-section-title h2,.pq-section-title h3,.pq-section-head h2,.pq-section-head h3,
.pq-food-panel-head h2,.pq-food-panel-head h3,.pq-chat-thread-head h2,.pq-chat-thread-head h3{
  margin:0;
  color:var(--pq-text);
}
.pq-section-title::before,.pq-section-head::before{
  content:"";
  width:6px;
  align-self:stretch;
  min-height:28px;
  border-radius:999px;
  background:var(--pq-page-accent);
  order:-1;
}
.pq-section-title>div:first-of-type,.pq-section-head>div:first-of-type{flex:1;min-width:220px;}
.pq-section-title p,.pq-section-head p{margin:.3rem 0 0;line-height:1.45;}

/* Universal surfaces: old pages now inherit the saved theme instead of
   retaining hard-coded black, gray, blue, or gold fragments. */
.pq-subcard,.pq-stat-panel,.pq-plan-card,.pq-goal-card,.pq-goal-primer,.pq-goal-link-box,
.pq-member-card,.pq-invite-panel,.pq-queue-card,.pq-archive-card,.pq-onboarding-card,
.pq-tutorial-step,.pq-callout,.pq-chaos-card,.pq-recommendation,.pq-pending-review,
.pq-pending-quest,.pq-review-quest,.pq-review-objective,.pq-pewter-review,
.pq-gatekeeper-item,.pq-time-rollup,.pq-time-log-list,.pq-meal-workspace,.pq-meal-cell,
.pq-grocery-group,.pq-recipe-book,.pq-recipe-row,.pq-food-add-panel,.pq-food-daily-card,
.pq-diary-day,.pq-diary-period-review-card,.pq-diary-questlog-context,.pq-security-activity,
.pq-voice-capture,.pq-voice-map,.pq-voice-mappings,.pq-scan-summary,.pq-target-intro,
.pq-nutrition-tool-card,.pq-today-meals,.pq-board-rail,.pq-board-main,.pq-board-list,
.pq-board-person,.pq-board-chore,.pq-display-panel,.pq-family-tutorial,.pq-group-pick,
.pq-picker-list,.pq-editable-preview,.pq-food-preview-group,.pq-ai-food-card,
.pq-architect-guidance,.pq-existing-context,.pq-seer-review,.pq-seer-followups{
  background:var(--pq-surface)!important;
  color:var(--pq-text)!important;
  border:1px solid var(--pq-line)!important;
  border-radius:var(--pq-radius)!important;
  box-shadow:var(--pq-card-shadow-soft);
}
.pq-subcard,.pq-goal-link-box,.pq-food-preview-group,.pq-editable-preview,.pq-existing-context,
.pq-diary-questlog-context,.pq-board-person,.pq-board-chore,.pq-recipe-row,.pq-grocery-item,
.pq-time-log-row,.pq-voice-segment,.pq-meal-journal-row,.pq-due-plan-row{
  background:var(--pq-surface-2)!important;
  border-color:var(--pq-line-soft)!important;
}
.pq-card,.pq-subcard,.pq-stat-panel,.pq-plan-card,.pq-goal-card,.pq-member-card,.pq-queue-card,
.pq-archive-card,.pq-onboarding-card,.pq-tutorial-step,.pq-nutrition-tool-card,.pq-board-person,
.pq-board-chore,.pq-recipe-row,.pq-click-row,.pq-mini-row,.pq-review-row{
  transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease;
}
@media(hover:hover){
  .pq-plan-card:hover,.pq-goal-card:hover,.pq-member-card:hover,.pq-queue-card:hover,.pq-archive-card:hover,
  .pq-tutorial-step:hover,.pq-nutrition-tool-card:hover,.pq-board-person:hover,.pq-board-chore:hover,
  .pq-recipe-row:hover,.pq-click-row:hover,.pq-mini-row:hover,.pq-review-row:hover{
    border-color:color-mix(in srgb,var(--pq-page-accent) 48%,var(--pq-line))!important;
    background:color-mix(in srgb,var(--pq-page-accent) 6%,var(--pq-surface))!important;
    transform:translateY(-1px);
  }
}

/* Grid and layout normalization. */
.pq-grid,.pq-grid-2,.pq-grid-two,.pq-grid-3,.pq-dashboard-grid,.pq-mini-grid,.pq-review-grid,
.pq-archive-grid,.pq-goal-primer-grid,.pq-goal-signal-grid,.pq-goal-summary-grid,
.pq-tutorial-grid,.pq-tutorial-steps,.pq-board-stats,.pq-gatekeeper-queues,.pq-gatekeeper-plans,
.pq-dish-quick-slots,.pq-meal-board-grid,.pq-nutrition-tools,.pq-nutrition-actions{
  gap:var(--pq-section-gap)!important;
}
.pq-grid-2,.pq-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.pq-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
.pq-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));}
.pq-dashboard-grid>.pq-card,.pq-dashboard-grid>.pq-stat-panel{grid-column:span 4;}
.pq-dashboard-grid>.pq-wide,.pq-dashboard-grid>.pq-full{grid-column:1/-1;}
.pq-stat-grid{gap:var(--pq-section-gap)!important;}
.pq-stat-panel,.pq-stat-grid>.pq-card{position:relative;overflow:hidden;}
.pq-stat-panel::before,.pq-stat-grid>.pq-card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--pq-page-accent);
}
.pq-stat-panel strong,.pq-stat-grid strong{font-variant-numeric:tabular-nums;}

/* Buttons, toggles, tabs, filters, and action tiles. */
.pq-btn,.pq-pill-button,.pq-link-button,.pq-tab,.pq-view-toggle button,.pq-app-tabs button,
.pq-add-food-tabs button,.pq-food-range-button,.pq-food-quick-days button,.pq-food-quick-ranges button,
.pq-food-rolling-ranges button,.pq-group-pick-list button,.pq-picker-list button{
  min-height:var(--pq-control-height);
}
.pq-btn-primary,.pq-food-apply-button,.pq-add-selected-food{
  background:linear-gradient(135deg,color-mix(in srgb,var(--pq-page-accent) 92%,white),color-mix(in srgb,var(--pq-page-accent) 78%,black))!important;
  border-color:var(--pq-page-accent)!important;
  color:var(--pq-page-on-accent)!important;
}
.pq-tabs,.pq-app-tabs,.pq-add-food-tabs,.pq-view-toggle{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:6px;
  border:1px solid var(--pq-line);
  border-radius:16px;
  background:var(--pq-surface-2)!important;
}
.pq-tabs button,.pq-app-tabs button,.pq-add-food-tabs button,.pq-view-toggle button{
  flex:1 1 120px;
  background:transparent!important;
  border:1px solid transparent!important;
  color:var(--pq-muted)!important;
  border-radius:12px!important;
  padding:10px 13px;
  font-weight:850;
}
.pq-tabs button.active,.pq-app-tabs button.active,.pq-add-food-tabs button.active,.pq-view-toggle button.active{
  background:var(--pq-page-accent-soft)!important;
  border-color:var(--pq-page-accent)!important;
  color:var(--pq-text)!important;
  box-shadow:inset 0 -2px 0 var(--pq-page-accent);
}
.pq-filter-panel,.pq-filter-bar,.pq-filters,.pq-food-controls,.pq-meal-toolbar,.pq-diary-period-actions,
.pq-diary-review-controls,.pq-food-tools,.pq-food-primary-actions,.pq-food-confirm-actions,
.pq-food-manual-actions,.pq-food-estimate-actions,.pq-review-actions,.pq-time-actions{
  background:var(--pq-surface)!important;
  border-color:var(--pq-line)!important;
  color:var(--pq-text)!important;
}
.pq-chip,.pq-pill,.pq-badge,.pq-status-pill,.pq-linked-chip,.pq-dish-chip,.pq-skill-chip,.pq-change-pill{
  background:var(--pq-surface-2)!important;
  color:var(--pq-text)!important;
  border:1px solid var(--pq-line)!important;
}
.pq-chip.active,.pq-pill.active,.pq-status-pill.active,.pq-skill-chip.active{
  background:var(--pq-page-accent-soft)!important;
  border-color:var(--pq-page-accent)!important;
}

/* Forms and editors. */
.pq-field,.pq-goal-form,.pq-board-form,.pq-food-edit-form,.pq-ai-food-edit,.pq-preview-edit-grid,
.pq-food-manual-grid,.pq-edit-table,.pq-target-grid,.pq-chore-detail-grid,.pq-goal-edit-link-list{
  color:var(--pq-text)!important;
}
.pq-field label,.pq-target-grid label,.pq-food-edit-grid label,.pq-preview-edit-grid label,
.pq-food-manual-grid label,.pq-goal-form label,.pq-board-form label{
  color:var(--pq-muted)!important;
  font-weight:760;
}
.pq-input,.pq-textarea,.pq-select,input.pq-input,textarea.pq-textarea,select.pq-select{
  min-height:var(--pq-control-height);
  box-shadow:inset 0 1px 0 color-mix(in srgb,white 3%,transparent);
}
.pq-textarea{min-height:110px;}
.pq-check-row,.pq-setting-toggle,.pq-rpg-check{
  background:var(--pq-surface-2)!important;
  border:1px solid var(--pq-line)!important;
  border-radius:14px;
  color:var(--pq-text)!important;
}
input[type="checkbox"],input[type="radio"]{accent-color:var(--pq-page-accent);}

/* Tables and dense administration views. */
.pq-table-wrap,.pq-msg-table-wrap{overflow:auto;border:1px solid var(--pq-line);border-radius:16px;background:var(--pq-surface);}
.pq-table,.pq-table-lite,.pq-msg-table{background:transparent!important;color:var(--pq-text)!important;}
.pq-table th,.pq-table-lite th,.pq-msg-table th{
  position:sticky;top:0;z-index:2;
  background:color-mix(in srgb,var(--pq-surface-2) 96%,transparent)!important;
  color:var(--pq-page-accent)!important;
  border-color:var(--pq-line)!important;
  font-size:12px;text-transform:uppercase;letter-spacing:.05em;
}
.pq-table td,.pq-table-lite td,.pq-msg-table td{border-color:var(--pq-line-soft)!important;color:var(--pq-text)!important;}
.pq-table tbody tr:hover,.pq-table-lite tbody tr:hover{background:var(--pq-page-accent-faint)!important;}
.pq-table-row{background:var(--pq-surface)!important;border-color:var(--pq-line-soft)!important;}

/* Modal, popover, and picker cohesion. */
.pq-modal-backdrop,.pq-attachment-backdrop,.pq-thread-backdrop,.pq-voice-backdrop{
  background:color-mix(in srgb,var(--pq-page-bg) 75%,black 25%)!important;
  backdrop-filter:blur(8px);
}
.pq-modal,.pq-wide-modal,.pq-chore-modal,.pq-confirm-modal,.pq-picker-modal,.pq-group-modal,
.pq-goal-edit-modal,.pq-time-log-modal,.pq-meal-action-modal,.pq-move-meal-modal,.pq-move-dish-modal,
.pq-voice-modal,.pq-attachment-modal{
  background:var(--pq-surface)!important;
  color:var(--pq-text)!important;
  border:1px solid color-mix(in srgb,var(--pq-page-accent) 40%,var(--pq-line))!important;
  border-top:4px solid var(--pq-page-accent)!important;
  box-shadow:0 28px 90px color-mix(in srgb,var(--pq-page-bg) 65%,transparent)!important;
}
.pq-pop,.pq-user-pop,.pq-mini-menu,.pq-menu{
  background:var(--pq-surface)!important;color:var(--pq-text)!important;border-color:var(--pq-line)!important;
}
.pq-pop button:hover,.pq-user-pop button:hover,.pq-mini-menu button:hover{background:var(--pq-page-accent-soft)!important;}

/* Progress, queues, and status signals. */
.pq-progress,.pq-mini-bar,.pq-daily-track,.pq-stack{
  background:var(--pq-surface-3)!important;
  border:1px solid var(--pq-line)!important;
  overflow:hidden;
}
.pq-progress>i,.pq-progress>span,.pq-mini-bar>i,.pq-daily-track>i{
  background:linear-gradient(90deg,var(--pq-page-accent),color-mix(in srgb,var(--pq-page-accent) 62%,white))!important;
}
.pq-queue-card,.pq-pending-review,.pq-pending-quest,.pq-review-quest,.pq-review-objective,
.pq-gatekeeper-item,.pq-pewter-review,.pq-plan-card{
  border-left:5px solid var(--pq-page-accent)!important;
}
.pq-status-open,.pq-status-active,.pq-status-ready{--pq-status-color:var(--pq-success-accent);}
.pq-status-waiting,.pq-status-pending,.pq-status-review{--pq-status-color:var(--pq-warning-accent);}
.pq-status-closed,.pq-status-complete,.pq-status-done{--pq-status-color:var(--pq-success-accent);}
.pq-status-blocked,.pq-status-danger{--pq-status-color:var(--pq-danger-accent);}
[class*="pq-status-"]{border-color:var(--pq-status-color,var(--pq-line))!important;}

/* TODAY: dashboard and check-in surfaces. */
.pq-main-group-today .pq-intro-hero,.pq-main-group-today .pq-display-hero,
.pq-main-group-today .pq-daily-panel{
  background:
    linear-gradient(135deg,var(--pq-page-accent-faint),transparent 60%),
    var(--pq-surface)!important;
  border-color:color-mix(in srgb,var(--pq-page-accent) 35%,var(--pq-line))!important;
}
.pq-daily-panel{padding:var(--pq-panel-padding);}
.pq-daily-reward{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;}
.pq-daily-reward.today{border-color:var(--pq-page-accent)!important;background:var(--pq-page-accent-soft)!important;}
.pq-streak-big{color:var(--pq-page-accent)!important;}
.pq-skill-chip .pq-mini-bar i{background:var(--pq-page-accent)!important;}

/* HOME: family board and chores. */
.pq-board-layout{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:var(--pq-section-gap);align-items:start;}
.pq-board-rail,.pq-board-main{padding:var(--pq-panel-padding);}
.pq-board-list{display:grid;gap:10px;padding:10px;}
.pq-board-person,.pq-board-chore{padding:14px;}
.pq-board-person.active,.pq-board-chore.active{background:var(--pq-page-accent-soft)!important;border-color:var(--pq-page-accent)!important;}
.pq-board-chore::before{content:"";display:block;width:5px;align-self:stretch;background:var(--pq-page-accent);border-radius:99px;}
.pq-board-chore{display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:12px;align-items:center;}
.pq-family-display{background:var(--pq-page-bg)!important;color:var(--pq-text)!important;}
.pq-display-panel,.pq-display-task,.pq-display-person,.pq-display-meal{border-color:var(--pq-line)!important;color:var(--pq-text)!important;}

/* CAPTURE: chat, diary, voice, and reviews. */
.pq-chat-layout{gap:var(--pq-section-gap)!important;}
.pq-thread-list,.pq-chat-panel{padding:var(--pq-panel-padding)!important;}
.pq-thread-row button,.pq-thread-list>button{
  background:var(--pq-surface-2)!important;color:var(--pq-text)!important;border-color:var(--pq-line)!important;
}
.pq-thread-row button.active,.pq-thread-list>button.active{background:var(--pq-page-accent-soft)!important;border-color:var(--pq-page-accent)!important;}
.pq-msg.assistant{border-left:4px solid var(--pq-page-accent)!important;}
.pq-msg.user{border-right:4px solid var(--pq-page-accent)!important;}
.pq-composer-actions{gap:10px;}
.pq-attach-button,.pq-voice-button{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-diary-grid{gap:var(--pq-section-gap)!important;}
.pq-diary-day{overflow:hidden;}
.pq-diary-day-head{background:var(--pq-page-accent-faint)!important;border-color:var(--pq-line)!important;padding:14px 16px;}
.pq-diary-entry,.pq-diary-questlog-line{border-color:var(--pq-line-soft)!important;}
.pq-voice-wave-bar{background:var(--pq-page-accent)!important;}

/* PLAN: goals, weekly planning, and Architect. */
.pq-goals-layout{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:var(--pq-section-gap);align-items:start;}
.pq-goal-primer,.pq-goal-card,.pq-architect-guidance{padding:var(--pq-panel-padding);}
.pq-goal-card{position:relative;overflow:hidden;}
.pq-goal-card::before,.pq-architect-guidance::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--pq-page-accent);}
.pq-goal-top,.pq-goal-link-row,.pq-goal-signal,.pq-due-plan-row{border-color:var(--pq-line-soft)!important;}
.pq-goal-signal{background:var(--pq-surface-2)!important;color:var(--pq-text)!important;}
.pq-step-runes .pq-rune-orb{border-color:var(--pq-page-accent)!important;}

/* DO & REVIEW: quest log, Pewter, Gatekeeper, archive. */
.pq-tree,.pq-children,.pq-quest,.pq-objective,.pq-pending-tree,.pq-review-list,.pq-review-queue{
  border-color:var(--pq-line-soft)!important;
}
.pq-tree-row,.pq-objective,.pq-review-row,.pq-mini-row,.pq-click-row{
  color:var(--pq-text)!important;
}
.pq-tree-row:hover,.pq-objective:hover,.pq-review-row:hover{background:var(--pq-page-accent-faint)!important;}
.pq-children{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;}
.pq-round{background:var(--pq-surface-3)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}
.pq-round:hover{border-color:var(--pq-page-accent)!important;background:var(--pq-page-accent-soft)!important;}
.pq-review-editor,.pq-quest-review-editor,.pq-action-subgroup,.pq-router-group,.pq-router-subgroup{
  background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;
}
.pq-archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.pq-archive-card{padding:var(--pq-panel-padding);}

/* ADMIN and ACCOUNT. */
.pq-member-card,.pq-invite-panel,.pq-security-activity,.pq-appearance-settings{padding:var(--pq-panel-padding);}
.pq-member,.pq-member-actions,.pq-invite-row,.pq-security-activity tr{border-color:var(--pq-line-soft)!important;}
.pq-member-identity,.pq-member-email{color:var(--pq-text)!important;}
.pq-wallet-button,.pq-wallet span{font-variant-numeric:tabular-nums;}
.pq-wallet-button:hover span{border-color:var(--pq-page-accent)!important;}
.pq-appearance-settings{background:var(--pq-surface)!important;border-color:var(--pq-line)!important;}
.pq-preset-option,.pq-skin-option,.pq-palette-option{
  background:var(--pq-surface-2)!important;color:var(--pq-text)!important;border-color:var(--pq-line)!important;
}
.pq-preset-option.active,.pq-skin-option.active,.pq-palette-option.active{
  background:var(--pq-page-accent-soft)!important;border-color:var(--pq-page-accent)!important;
}
.pq-recovery-code{background:var(--pq-surface-2)!important;border-color:var(--pq-line)!important;color:var(--pq-text)!important;}

/* NUTRITION remains the visual benchmark while inheriting the same grouping. */
.pq-nutrition-page .pq-card,.pq-nutrition-hero,.pq-nutrition-macro-panel,.pq-today-meals{
  border-color:color-mix(in srgb,var(--pq-page-accent) 27%,var(--pq-line))!important;
}
.pq-nutrition-hero{
  background:
    radial-gradient(circle at 50% 10%,var(--pq-page-accent-soft),transparent 42%),
    var(--pq-surface)!important;
}
.pq-nutrition-subnav{background:color-mix(in srgb,var(--pq-surface) 94%,transparent)!important;border-color:var(--pq-line)!important;}
.pq-nutrition-subnav button.active{background:var(--pq-page-accent-soft)!important;border-color:var(--pq-page-accent)!important;color:var(--pq-text)!important;}
.pq-nutrition-tool-card{padding:18px;}
.pq-nutrition-tool-icon{background:var(--pq-page-accent-soft)!important;color:var(--pq-page-accent)!important;}
.pq-calorie-ring,.pq-nutrition-ring-track{--pq-ring-accent:var(--pq-page-accent);}
.pq-food-group-card,.pq-food-flow-section,.pq-food-insights-shell{border-color:var(--pq-line)!important;box-shadow:var(--pq-card-shadow-soft);}
.pq-food-group-head,.pq-food-insights-head,.pq-food-flow-head{background:var(--pq-page-accent-faint)!important;border-color:var(--pq-line)!important;}

/* Skin-specific sitewide behavior. */
html[data-pq-skin="classic"] .pq-main[data-page-group]::before{height:2px;}
html[data-pq-skin="classic"] .pq-section-title::before,html[data-pq-skin="classic"] .pq-section-head::before{border-radius:1px;}
html[data-pq-skin="classic"] .pq-card,html[data-pq-skin="classic"] .pq-subcard,
html[data-pq-skin="classic"] .pq-plan-card,html[data-pq-skin="classic"] .pq-member-card{box-shadow:none;}

html[data-pq-skin="storybook"] .pq-main[data-page-group]{
  background:
    radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--pq-page-accent) 13%,transparent),transparent 29%),
    radial-gradient(circle at 78% 8%,color-mix(in srgb,var(--pq-page-accent) 6%,transparent),transparent 22%),
    transparent!important;
}
html[data-pq-skin="storybook"] .pq-sidebar{border-radius:0 28px 28px 0;}
html[data-pq-skin="storybook"] .pq-nav-group-items button{border-radius:999px!important;}
html[data-pq-skin="storybook"] .pq-section-title::before,html[data-pq-skin="storybook"] .pq-section-head::before{width:10px;border-radius:999px;}
html[data-pq-skin="storybook"] .pq-subcard,html[data-pq-skin="storybook"] .pq-plan-card,
html[data-pq-skin="storybook"] .pq-goal-card,html[data-pq-skin="storybook"] .pq-member-card,
html[data-pq-skin="storybook"] .pq-queue-card,html[data-pq-skin="storybook"] .pq-board-person,
html[data-pq-skin="storybook"] .pq-board-chore,html[data-pq-skin="storybook"] .pq-diary-day{
  border-radius:24px!important;
}
html[data-pq-skin="storybook"] .pq-stat-grid>.pq-card::after,
html[data-pq-skin="storybook"] .pq-stat-panel::after{
  content:"";position:absolute;width:42px;height:42px;right:-10px;bottom:-12px;border-radius:50%;
  background:var(--pq-page-accent-soft);pointer-events:none;
}
html[data-pq-skin="storybook"] .pq-table-wrap{border-radius:24px;}
html[data-pq-skin="storybook"] .pq-modal{border-radius:30px!important;}

html[data-pq-skin="guild"] .pq-main[data-page-group]{
  background:
    radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--pq-page-accent) 15%,transparent),transparent 30%),
    linear-gradient(155deg,color-mix(in srgb,var(--pq-page-bg) 96%,#152040),var(--pq-page-bg) 58%)!important;
}
html[data-pq-skin="guild"] .pq-section-title,html[data-pq-skin="guild"] .pq-section-head{border-bottom-color:color-mix(in srgb,var(--pq-page-accent) 34%,var(--pq-line));}
html[data-pq-skin="guild"] .pq-card,html[data-pq-skin="guild"] .pq-subcard,
html[data-pq-skin="guild"] .pq-plan-card,html[data-pq-skin="guild"] .pq-member-card,
html[data-pq-skin="guild"] .pq-queue-card,html[data-pq-skin="guild"] .pq-board-rail,
html[data-pq-skin="guild"] .pq-board-main{
  background:linear-gradient(145deg,color-mix(in srgb,var(--pq-surface) 93%,var(--pq-page-accent) 7%),var(--pq-surface))!important;
  border-color:color-mix(in srgb,var(--pq-page-accent) 24%,var(--pq-line))!important;
}
html[data-pq-skin="guild"] .pq-nav-group-head{font-family:var(--pq-font-title);letter-spacing:.06em;}

html[data-pq-skin="focus"] .pq-main{max-width:none;}
html[data-pq-skin="focus"] .pq-card,html[data-pq-skin="focus"] .pq-subcard,
html[data-pq-skin="focus"] .pq-plan-card,html[data-pq-skin="focus"] .pq-member-card,
html[data-pq-skin="focus"] .pq-queue-card{box-shadow:none!important;}
html[data-pq-skin="focus"] .pq-section-title,html[data-pq-skin="focus"] .pq-section-head{padding-bottom:8px;margin-bottom:10px;}
html[data-pq-skin="focus"] .pq-section-title::before,html[data-pq-skin="focus"] .pq-section-head::before{width:3px;}
html[data-pq-skin="focus"] .pq-nav-group-items button{min-height:38px;padding-block:8px!important;}
html[data-pq-skin="focus"] .pq-stat-grid,html[data-pq-skin="focus"] .pq-grid,
html[data-pq-skin="focus"] .pq-grid-2,html[data-pq-skin="focus"] .pq-grid-two{gap:12px!important;}

/* Color-blind-safe mode never relies on color alone. */
html[data-pq-palette="colorblind"] .pq-nav-group-items button.active,
html[data-pq-palette="colorblind"] .pq-tabs button.active,
html[data-pq-palette="colorblind"] .pq-app-tabs button.active,
html[data-pq-palette="colorblind"] .pq-preset-option.active,
html[data-pq-palette="colorblind"] .pq-skin-option.active,
html[data-pq-palette="colorblind"] .pq-palette-option.active{
  outline:2px dashed var(--pq-page-accent)!important;
  outline-offset:2px;
}
html[data-pq-palette="colorblind"] .pq-progress>i,
html[data-pq-palette="colorblind"] .pq-progress>span,
html[data-pq-palette="colorblind"] .pq-mini-bar>i{
  background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.32) 0 5px,transparent 5px 10px),linear-gradient(90deg,var(--pq-page-accent),var(--pq-page-accent-strong))!important;
}
html[data-pq-palette="colorblind"] .pq-status-pill,html[data-pq-palette="colorblind"] [class*="pq-status-"]{border-width:2px!important;border-style:double!important;}
html[data-pq-palette="colorblind"] .pq-queue-card,html[data-pq-palette="colorblind"] .pq-review-quest,
html[data-pq-palette="colorblind"] .pq-review-objective{border-left-style:double!important;border-left-width:7px!important;}

/* Mobile: retain the app-like Nutrition quality everywhere. */
@media(max-width:1100px){
  .pq-dashboard-grid>.pq-card,.pq-dashboard-grid>.pq-stat-panel{grid-column:span 6;}
  .pq-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pq-goals-layout{grid-template-columns:1fr;}
}
@media(max-width:900px){
  .pq-main[data-page-group]::before{left:0;}
  .pq-sidebar{border-radius:0!important;}
  .pq-board-layout{grid-template-columns:1fr;}
  .pq-board-rail{position:relative!important;top:auto!important;}
  .pq-main{padding-inline:16px!important;padding-top:0!important;}
  .pq-topbar{position:sticky;top:0;margin-inline:-16px;padding-inline:16px;}
  .pq-realm-picker{grid-template-columns:72px minmax(0,1fr)!important;margin:12px 0!important;}
  .pq-page>.pq-display{font-size:clamp(38px,12vw,58px);}
  .pq-grid-2,.pq-grid-two,.pq-grid-3{grid-template-columns:1fr;}
  .pq-dashboard-grid{grid-template-columns:1fr;}
  .pq-dashboard-grid>.pq-card,.pq-dashboard-grid>.pq-stat-panel{grid-column:1;}
  .pq-dashboard-grid>.pq-wide,.pq-dashboard-grid>.pq-full{grid-column:1;}
  .pq-bottom-nav{
    background:color-mix(in srgb,var(--pq-surface) 96%,transparent)!important;
    border-color:var(--pq-line)!important;
    backdrop-filter:blur(18px);
  }
  .pq-bottom-nav button{color:var(--pq-muted)!important;border:1px solid transparent!important;}
  .pq-bottom-nav button.active{
    color:var(--pq-text)!important;
    background:var(--pq-page-accent-soft)!important;
    border-color:var(--pq-page-accent)!important;
    box-shadow:inset 0 3px 0 var(--pq-page-accent);
  }
  .pq-bottom-nav button.active .pq-bottom-nav-icon{color:var(--pq-page-accent)!important;}
  .pq-modal-backdrop{padding:10px!important;align-items:end!important;}
  .pq-modal,.pq-wide-modal,.pq-chore-modal,.pq-confirm-modal,.pq-picker-modal,.pq-group-modal,
  .pq-goal-edit-modal,.pq-time-log-modal,.pq-meal-action-modal,.pq-move-meal-modal,.pq-move-dish-modal,
  .pq-voice-modal,.pq-attachment-modal{
    width:100%!important;max-width:none!important;max-height:92dvh!important;border-radius:28px 28px 12px 12px!important;
  }
  .pq-table th{position:static;}
  .pq-section-title,.pq-section-head{align-items:flex-start;}
}
@media(max-width:600px){
  :root{--pq-section-gap:12px;--pq-panel-padding:15px;}
  .pq-main{padding-inline:12px!important;padding-bottom:94px!important;}
  .pq-topbar{margin-inline:-12px;padding-inline:12px;min-height:60px;}
  .pq-title-brand{font-size:19px;}
  .pq-topbar-actions{gap:6px;}
  .pq-wallet span{padding:7px 9px!important;}
  .pq-realm-picker{grid-template-columns:1fr!important;gap:6px!important;}
  .pq-card,.pq-subcard,.pq-stat-panel,.pq-plan-card,.pq-goal-card,.pq-member-card,.pq-queue-card,
  .pq-archive-card,.pq-onboarding-card,.pq-tutorial-step,.pq-board-rail,.pq-board-main{
    margin-block:10px!important;
  }
  .pq-section-title::before,.pq-section-head::before{width:5px;min-height:24px;}
  .pq-board-chore{grid-template-columns:5px minmax(0,1fr);}
  .pq-board-chore>*:last-child{grid-column:2;}
  .pq-tabs,.pq-app-tabs,.pq-add-food-tabs,.pq-view-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  .pq-tabs button,.pq-app-tabs button,.pq-add-food-tabs button,.pq-view-toggle button{min-width:0;}
}
@media(prefers-reduced-motion:reduce){
  .pq-card,.pq-subcard,.pq-plan-card,.pq-goal-card,.pq-member-card,.pq-queue-card,.pq-archive-card,
  .pq-nav-group-items button,.pq-btn{transition:none!important;}
  .pq-card:hover,.pq-plan-card:hover,.pq-goal-card:hover,.pq-member-card:hover,.pq-nav-group-items button:hover{transform:none!important;}
}

/* v21.32 — Food Journal dials and legacy nutrition-goal continuity. */
.pq-journal-dials{margin:18px 0 20px;padding:24px;border:1px solid color-mix(in srgb,var(--pq-page-accent) 42%,var(--pq-line));border-radius:30px;background:linear-gradient(145deg,color-mix(in srgb,var(--pq-page-accent) 18%,var(--pq-surface)),var(--pq-surface) 62%);box-shadow:var(--pq-card-shadow);}
.pq-journal-dial-title{margin-bottom:10px;}.pq-journal-dial-title p{max-width:720px;margin-top:4px!important;}
.pq-journal-calorie-summary{display:grid;grid-template-columns:1fr minmax(170px,230px) 1fr;align-items:center;gap:18px;max-width:760px;margin:18px auto 24px;text-align:center;}
.pq-journal-calorie-ring{width:clamp(150px,22vw,205px);}
.pq-journal-calorie-ring.pq-flow-selected{outline:3px solid var(--pq-page-accent);outline-offset:5px;box-shadow:0 0 0 7px color-mix(in srgb,var(--pq-page-accent) 18%,transparent),0 16px 38px color-mix(in srgb,var(--pq-page-accent) 26%,transparent);}
.pq-journal-calorie-ring.pq-ring-over{background:conic-gradient(var(--pq-danger) var(--pq-progress),color-mix(in srgb,var(--pq-surface) 76%,transparent) 0);}
.pq-journal-macro-panel{margin-top:0;}.pq-journal-rings{margin-top:16px;}
.pq-journal-ring{padding:8px 5px;border-radius:18px;transition:transform .18s ease,background .18s ease,box-shadow .18s ease;}
.pq-journal-ring:hover,.pq-journal-ring:focus-visible{transform:translateY(-2px);background:color-mix(in srgb,currentColor 9%,transparent);outline:none;}
.pq-journal-ring.pq-flow-selected{background:color-mix(in srgb,currentColor 13%,transparent);box-shadow:inset 0 0 0 2px currentColor,0 8px 22px color-mix(in srgb,currentColor 20%,transparent);}
.pq-journal-ring em{font-style:normal;font-size:12px;font-weight:800;color:var(--pq-muted);min-height:16px;}
.pq-journal-ring.pq-ring-over em{color:var(--pq-danger);}.pq-journal-ring.pq-ring-over .pq-nutrition-ring-track{box-shadow:0 0 0 3px color-mix(in srgb,currentColor 18%,transparent);}
html[data-pq-palette="colorblind"] .pq-journal-ring.pq-flow-selected{outline:3px dashed currentColor;outline-offset:3px;}
@media(max-width:700px){.pq-journal-dials{padding:18px 14px;border-radius:26px}.pq-journal-calorie-summary{grid-template-columns:1fr minmax(126px,150px) 1fr;gap:8px;margin:14px auto 18px}.pq-journal-calorie-ring{width:128px}.pq-journal-calorie-summary .pq-nutrition-side-stat strong{font-size:25px}.pq-journal-calorie-summary .pq-nutrition-side-stat span{font-size:11px}.pq-journal-rings{grid-template-columns:repeat(2,1fr)!important;gap:12px}.pq-journal-ring{padding:7px 3px}.pq-journal-ring .pq-nutrition-ring-track{width:86px}.pq-journal-ring em{font-size:11px}}

/* v21.33 — Pewter identity and Fate relationship */
.pq-pewter-identity{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  margin:0 0 18px;
  padding:18px;
  border:1px solid color-mix(in srgb,var(--pq-accent) 42%,var(--pq-line));
  border-radius:var(--pq-card-radius,22px);
  background:
    radial-gradient(circle at 8% 20%,color-mix(in srgb,var(--pq-accent) 20%,transparent),transparent 34%),
    linear-gradient(135deg,color-mix(in srgb,var(--pq-surface) 94%,var(--pq-accent)),var(--pq-surface));
  box-shadow:var(--pq-card-shadow,0 14px 34px rgba(0,0,0,.16));
}
.pq-pewter-identity.compact{padding:14px 16px;gap:13px;}
.pq-pewter-avatar{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  flex:none;
  border-radius:17px;
  border:1px solid color-mix(in srgb,var(--pq-accent) 70%,var(--pq-line));
  background:linear-gradient(145deg,var(--pq-accent),var(--pq-accent-2));
  color:var(--pq-button-text,#071018);
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  font-weight:800;
  box-shadow:0 10px 24px color-mix(in srgb,var(--pq-accent) 22%,transparent);
}
.pq-pewter-copy{min-width:0;}
.pq-pewter-title{align-items:center;gap:8px;margin-bottom:4px;}
.pq-pewter-title>strong{font-size:1.16rem;color:var(--pq-heading);}
.pq-pewter-copy>p{margin:0;color:var(--pq-muted);line-height:1.48;}
.pq-pewter-fates{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.pq-pewter-fates>span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:6px 9px;
  border:1px solid var(--pq-line);
  border-radius:999px;
  background:color-mix(in srgb,var(--pq-surface-2) 86%,transparent);
  color:var(--pq-muted);
  font-size:.79rem;
  white-space:nowrap;
}
.pq-pewter-fates b{color:var(--pq-text);}
.pq-chat-page>.pq-pewter-identity{margin-top:-4px;}
.pq-msg.assistant .pq-speaker{color:var(--pq-accent);}

@media(max-width:760px){
  .pq-pewter-identity,.pq-pewter-identity.compact{
    grid-template-columns:auto minmax(0,1fr);
    padding:14px;
    gap:11px;
  }
  .pq-pewter-identity>.pq-btn{grid-column:1/-1;width:100%;}
  .pq-pewter-avatar{width:44px;height:44px;border-radius:14px;font-size:24px;}
  .pq-pewter-copy>p{font-size:.89rem;}
  .pq-pewter-fates{gap:6px;}
  .pq-pewter-fates>span{font-size:.72rem;padding:5px 7px;}
}

/* v21.34 — food-log-first Nutrition and mobile Questlog repair. */
.pq-loading-inline{display:flex;align-items:center;justify-content:center;min-height:88px;color:var(--pq-muted);font-weight:800;}
.pq-nutrition-range-controls{display:grid;gap:14px;}
.pq-nutrition-range-controls .pq-food-primary-actions{margin-top:0;}
.pq-nutrition-plan-preview .pq-section-title{margin-bottom:8px;}
.pq-nutrition-plan-preview .pq-meal-journal-list{margin-top:12px;}
.pq-daily-calorie-dials{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:14px;}
.pq-daily-calorie-dial{display:grid;justify-items:center;gap:7px;min-width:0;padding:14px 10px;border:1px solid var(--pq-line);border-radius:18px;background:var(--pq-surface-2);color:var(--pq-text);cursor:pointer;}
.pq-daily-calorie-dial:hover,.pq-daily-calorie-dial:focus-visible{border-color:var(--pq-page-accent);background:var(--pq-page-accent-faint);outline:none;}
.pq-daily-calorie-dial.over{border-color:color-mix(in srgb,var(--pq-danger) 65%,var(--pq-line));}
.pq-mini-calorie-ring{--pq-progress:0%;width:92px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at center,var(--pq-surface) 58%,transparent 60%),conic-gradient(var(--pq-page-accent) var(--pq-progress),color-mix(in srgb,var(--pq-surface) 72%,var(--pq-line)) 0);box-shadow:inset 0 0 0 1px var(--pq-line);}
.pq-daily-calorie-dial.over .pq-mini-calorie-ring{background:radial-gradient(circle at center,var(--pq-surface) 58%,transparent 60%),conic-gradient(var(--pq-danger) var(--pq-progress),color-mix(in srgb,var(--pq-surface) 72%,var(--pq-line)) 0);}
.pq-mini-calorie-ring strong{font-size:20px;line-height:1;}.pq-mini-calorie-ring small{font-size:10px;color:var(--pq-muted);}
.pq-daily-calorie-dial>b{font-size:12px;}.pq-daily-calorie-dial>em{font-style:normal;font-size:11px;color:var(--pq-muted);}

.pq-tree-primary{flex:1;min-width:0;}
.pq-tree-primary>.pq-gold,.pq-tree-title>strong{overflow-wrap:anywhere;word-break:normal;line-height:1.12;}
.pq-tree-count{display:block;margin-top:4px;}
.pq-tree-inline-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;}
.pq-tree-actions,.pq-objective-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;}
.pq-tree-actions .pq-menu-wrap,.pq-objective-actions .pq-menu-wrap{margin-left:0;}
.pq-objective-meta{display:flex;align-items:center;}
.pq-objective{grid-template-columns:minmax(260px,1fr) auto auto;}

body.pq-modal-open{overflow:hidden!important;}
.pq-questlog-modal-backdrop{z-index:220!important;}
.pq-questlog-edit-modal{display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0!important;max-height:min(92dvh,var(--pq-visual-viewport-height,92dvh))!important;}
.pq-modal-sticky-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex:0 0 auto;padding:18px 20px 14px;border-bottom:1px solid var(--pq-line);background:var(--pq-surface);}
.pq-modal-sticky-head h3{margin:0;}.pq-modal-sticky-head p{margin:5px 0 0;}
.pq-modal-scroll-body{display:grid;gap:14px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 20px 24px;scrollbar-gutter:stable;}
.pq-modal-scroll-body>label,.pq-modal-scroll-body .pq-grid-3>label{display:grid;gap:7px;min-width:0;}
.pq-modal-sticky-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:0 0 auto;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--pq-line);background:linear-gradient(180deg,color-mix(in srgb,var(--pq-surface) 94%,transparent),var(--pq-surface) 22%);box-shadow:0 -12px 28px rgba(0,0,0,.24);}

@media(max-width:700px){
  .pq-food-quick-filter-groups{overflow-x:auto;scrollbar-width:none;padding-bottom:3px;}
  .pq-food-quick-filter-groups::-webkit-scrollbar{display:none;}
  .pq-food-quick-ranges{flex-wrap:nowrap!important;min-width:max-content;}
  .pq-food-range-button{white-space:nowrap;}
  .pq-daily-calorie-dials{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pq-mini-calorie-ring{width:78px;}
  .pq-tree-row.pq-realm-row,.pq-tree-row.pq-quest-row{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto;align-items:start!important;gap:8px!important;padding:12px 10px!important;}
  .pq-tree-row.pq-quest-row .pq-drag-handle{display:none!important;}
  .pq-tree-row.pq-quest-row>.pq-tree-primary{grid-column:2;}
  .pq-tree-row.pq-realm-row>.pq-tree-primary{grid-column:2;}
  .pq-tree-row.pq-realm-row>.pq-tree-actions,.pq-tree-row.pq-quest-row>.pq-tree-actions{grid-column:3;grid-row:1 / span 2;align-self:start;display:grid;grid-template-columns:repeat(2,38px);justify-content:end;gap:6px;}
  .pq-tree-actions .pq-btn{width:38px;height:38px;min-width:38px;padding:0!important;display:grid;place-items:center;}
  .pq-tree-actions>.pq-time-rollup{grid-column:1/-1;max-width:82px;white-space:normal!important;font-size:10px;text-align:right;margin:0!important;}
  .pq-tree-primary>.pq-gold{font-size:20px!important;line-height:1.08!important;}
  .pq-tree-title>strong{font-size:16px!important;line-height:1.15!important;}
  .pq-tree-title>small{font-size:12px;line-height:1.28;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .pq-tree-inline-meta{gap:6px;margin-top:7px;}.pq-tree-inline-meta .pq-muted{font-size:11px;}
  .pq-children{margin-left:8px!important;margin-right:0!important;border-radius:15px!important;}
  .pq-objectives{padding:4px 8px 12px!important;}
  .pq-objective{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;padding:12px 8px!important;align-items:start!important;}
  .pq-objective-main{min-width:0;}.pq-objective-main strong{font-size:15px;line-height:1.18;overflow-wrap:anywhere;}.pq-objective-main small{font-size:11px;line-height:1.25;}
  .pq-objective-meta{grid-column:1;margin-top:4px;}
  .pq-objective-actions{grid-column:2;grid-row:1 / span 2;display:grid;grid-template-columns:repeat(2,36px);gap:6px;}
  .pq-objective-actions .pq-btn{width:36px;height:36px;min-width:36px;padding:0!important;display:grid;place-items:center;}
  .pq-objective-actions .pq-menu-summary{width:36px;height:36px;}
  .pq-questlog-modal-backdrop{padding:0!important;align-items:end!important;}
  .pq-questlog-edit-modal{width:100vw!important;max-width:100vw!important;max-height:calc(100dvh - env(safe-area-inset-top))!important;border-radius:24px 24px 0 0!important;}
  .pq-modal-sticky-head{padding:16px 14px 12px;}.pq-modal-sticky-head p{display:none;}
  .pq-modal-scroll-body{padding:14px 14px 28px;}
  .pq-modal-sticky-actions{padding:12px 14px calc(12px + env(safe-area-inset-bottom));}
  .pq-modal-sticky-actions .pq-btn{flex:1 1 0;min-height:48px;}
}

/* ========================================================================
   v21.35 - item-level Move to meal and usable mobile macro-map navigation
   ======================================================================== */
.pq-move-item-modal{width:min(680px,96vw)}
.pq-item-quick-slots{margin:10px 0 4px;gap:8px}
.pq-item-quick-slots .pq-btn{min-height:40px}
.pq-mini-menu-inline button:first-child{color:var(--pq-page-accent,var(--pq-accent));}

/* A full-screen map owns the viewport. Do not leave the app tab bar active
   underneath it, and do not let page-shell stacking contexts win. */
html.pq-mobile-map-open .pq-bottom-nav,
body.pq-mobile-map-open .pq-bottom-nav{display:none!important;visibility:hidden!important;pointer-events:none!important}
html.pq-mobile-map-open,
body.pq-mobile-map-open{overscroll-behavior:none!important}
body.pq-mobile-map-open .pq-sankey-scroll-stage.mobile-open{z-index:2147483000!important}

.pq-mobile-map-steps{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  padding-top:8px;
  border-top:1px solid color-mix(in srgb,var(--pq-line) 78%,transparent);
}
.pq-mobile-map-steps button{
  min-width:0;
  min-height:36px;
  border:1px solid var(--pq-line);
  border-radius:999px;
  background:var(--pq-surface-2,#151515);
  color:var(--pq-muted);
  font-weight:850;
  padding:7px 9px;
  cursor:pointer;
}
.pq-mobile-map-steps button.active{
  color:var(--pq-on-accent,#111);
  border-color:var(--pq-page-accent,var(--pq-accent));
  background:var(--pq-page-accent,var(--pq-accent));
  box-shadow:0 0 0 2px var(--pq-page-accent-soft,var(--pq-accent-soft));
}
.pq-sankey-scroll-stage.mobile-open .pq-flow-interactive,
.pq-sankey-scroll-stage.mobile-open .pq-sankey-percent-seg{
  pointer-events:auto!important;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.pq-sankey-scroll-stage.mobile-open .pq-flow-interactive:active rect{
  stroke:var(--pq-page-accent,var(--pq-accent));
  stroke-width:3;
}

@media(max-width:700px){
  .pq-mini-menu-inline{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .pq-mini-menu-inline button{padding:.65rem .35rem!important;font-size:.9rem;white-space:normal!important}
  .pq-move-item-modal{max-height:calc(100dvh - 24px)!important}
  .pq-sankey-scroll-stage.mobile-open{
    padding-bottom:calc(12px + env(safe-area-inset-bottom))!important;
  }
  .pq-sankey-scroll-stage.mobile-open .pq-mobile-map-hint{
    width:calc(100vw - 20px)!important;
  }
}
@media(orientation:landscape) and (max-height:560px){
  .pq-mobile-map-steps{grid-column:1/-1;grid-template-columns:repeat(3,minmax(86px,1fr));padding-top:5px}
  .pq-mobile-map-steps button{min-height:30px;padding:4px 7px;font-size:12px}
}

/* ========================================================================
   v21.37 - concise Wallet, sectioned Store, and first-Realm onboarding
   ======================================================================== */
.pq-eyebrow{display:block;font-size:.72rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--pq-page-accent,var(--pq-accent));margin-bottom:5px}
.pq-wallet-membership,.pq-store-featured,.pq-realm-guide-hero,.pq-first-realm-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,var(--pq-surface-2),color-mix(in srgb,var(--pq-page-accent-soft,var(--pq-accent-soft)) 48%,var(--pq-surface)))}
.pq-wallet-membership h2,.pq-store-featured h2,.pq-realm-guide-hero h2,.pq-first-realm-intro h2{margin:.15rem 0 .35rem;font-size:clamp(1.45rem,3vw,2.2rem)}
.pq-wallet-balance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pq-wallet-balance{width:100%;display:flex;align-items:center;gap:16px;text-align:left;cursor:pointer;color:var(--pq-text);transition:transform .16s ease,border-color .16s ease}
.pq-wallet-balance:hover{transform:translateY(-2px);border-color:var(--pq-page-accent,var(--pq-accent))}
.pq-wallet-balance-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:20px;background:var(--pq-page-accent-soft,var(--pq-accent-soft));font-size:1.8rem}
.pq-wallet-balance div{display:grid;gap:2px}.pq-wallet-balance strong{font-size:2rem;line-height:1}.pq-wallet-balance small{color:var(--pq-muted)}
.pq-wallet-capacity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pq-wallet-capacity>div{display:grid;gap:3px;padding:12px 16px;border-radius:16px;background:var(--pq-surface-2);border:1px solid var(--pq-line)}
.pq-wallet-capacity span,.pq-wallet-capacity small{color:var(--pq-muted)}.pq-wallet-capacity strong{font-size:1.35rem}
.pq-wallet-recent{display:grid}.pq-wallet-recent-row{display:flex;justify-content:space-between;gap:16px;padding:13px 2px;border-top:1px solid var(--pq-line)}
.pq-wallet-recent-row:first-child{border-top:0}.pq-wallet-recent-row>div{display:grid;gap:3px}.pq-wallet-recent-row>div:last-child{text-align:right;font-weight:800}
.pq-wallet-help,.pq-realm-guide-actions{display:flex;justify-content:space-between;align-items:center;gap:18px}
.pq-wallet-activity-list{display:grid;gap:10px}.pq-wallet-activity-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px}
.pq-wallet-activity-row>div{display:grid;gap:4px}.pq-wallet-deltas{grid-template-columns:repeat(2,auto);gap:12px!important;font-weight:900}.pq-wallet-deltas .positive{color:var(--pq-success,var(--pq-secondary))}.pq-wallet-deltas .negative{color:var(--pq-danger,#ef4444)}

.pq-store-tabs{position:sticky;top:0;z-index:12;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px;border:1px solid var(--pq-line);border-radius:22px;background:color-mix(in srgb,var(--pq-bg) 92%,transparent);backdrop-filter:blur(15px)}
.pq-store-tab{min-height:54px;border:1px solid transparent;border-radius:16px;background:transparent;color:var(--pq-muted);font:inherit;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.pq-store-tab.active{color:var(--pq-on-accent,#111);background:var(--pq-page-accent,var(--pq-accent));border-color:var(--pq-page-accent,var(--pq-accent));box-shadow:0 8px 22px var(--pq-page-accent-soft,var(--pq-accent-soft))}
.pq-store-section{display:grid;gap:16px}.pq-store-renewal,.pq-store-explainer{max-width:860px}
.pq-store-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pq-store-product{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:20px;border-radius:24px;border:1px solid var(--pq-line);background:linear-gradient(145deg,var(--pq-surface),var(--pq-surface-2));box-shadow:var(--pq-shadow)}
.pq-store-product .pq-btn{grid-column:1/-1;width:100%}.pq-store-product-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:19px;background:var(--pq-page-accent-soft,var(--pq-accent-soft));font-size:1.8rem}.pq-store-product p{margin:.25rem 0 0}

.pq-realm-guide-mark{display:grid;place-items:center;flex:0 0 auto;width:86px;height:86px;border-radius:28px;background:var(--pq-page-accent-soft,var(--pq-accent-soft));font-size:2.5rem;border:1px solid color-mix(in srgb,var(--pq-page-accent,var(--pq-accent)) 45%,var(--pq-line))}
.pq-realm-guide-grid,.pq-realm-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pq-step-number{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:var(--pq-page-accent,var(--pq-accent));color:var(--pq-on-accent,#111);margin-bottom:12px}
.pq-realm-example{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;align-items:stretch}
.pq-realm-example>div{position:relative;display:grid;gap:5px;padding:14px;border:1px solid var(--pq-line);border-radius:16px;background:var(--pq-surface-2)}
.pq-realm-example>div:not(:last-child)::after{content:'›';position:absolute;right:-9px;top:50%;transform:translateY(-50%);z-index:2;color:var(--pq-page-accent,var(--pq-accent));font-size:1.4rem;font-weight:900}
.pq-realm-example span{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--pq-muted)}
.pq-first-realm-form{display:grid;gap:16px}.pq-realm-type{min-height:180px;padding:20px;border-radius:24px;border:1px solid var(--pq-line);background:var(--pq-surface);color:var(--pq-text);font:inherit;text-align:left;cursor:pointer;display:grid;align-content:start;gap:8px;box-shadow:var(--pq-shadow)}
.pq-realm-type:hover,.pq-realm-type.active{border-color:var(--pq-page-accent,var(--pq-accent));background:linear-gradient(145deg,var(--pq-surface),var(--pq-page-accent-soft,var(--pq-accent-soft)));transform:translateY(-2px)}
.pq-realm-type.active{box-shadow:0 0 0 2px var(--pq-page-accent-soft,var(--pq-accent-soft)),var(--pq-shadow)}.pq-realm-type-icon{font-size:2.2rem}.pq-realm-type strong{font-size:1.15rem}.pq-realm-type small{color:var(--pq-muted);line-height:1.45}
.pq-first-realm-name label{display:grid;gap:9px;font-weight:900}.pq-first-realm-name input{font-size:1.15rem}.pq-first-realm-next ol{display:grid;gap:8px;padding-left:1.3rem;color:var(--pq-muted)}

@media(max-width:800px){
  .pq-wallet-membership,.pq-store-featured,.pq-realm-guide-hero,.pq-first-realm-intro,.pq-wallet-help,.pq-realm-guide-actions{align-items:stretch;flex-direction:column}
  .pq-wallet-membership .pq-row,.pq-store-featured .pq-row,.pq-wallet-help .pq-row,.pq-realm-guide-actions .pq-row{width:100%}.pq-wallet-membership .pq-btn,.pq-store-featured .pq-btn,.pq-wallet-help .pq-btn,.pq-realm-guide-actions .pq-btn{flex:1 1 auto}
  .pq-wallet-capacity{grid-template-columns:1fr}.pq-store-products,.pq-realm-guide-grid,.pq-realm-type-grid{grid-template-columns:1fr}.pq-realm-type{min-height:0}
  .pq-realm-example{grid-template-columns:1fr}.pq-realm-example>div:not(:last-child)::after{content:'⌄';right:auto;left:50%;top:auto;bottom:-16px;transform:translateX(-50%)}
}
@media(max-width:560px){
  .pq-wallet-balance-grid{grid-template-columns:1fr}.pq-wallet-balance strong{font-size:1.7rem}.pq-store-tabs{top:2px}.pq-store-tab{min-height:50px;flex-direction:column;gap:1px;font-size:.78rem}
  .pq-wallet-recent-row,.pq-wallet-activity-row{align-items:flex-start;flex-direction:column}.pq-wallet-recent-row>div:last-child{text-align:left;display:flex;gap:12px}.pq-wallet-deltas{display:flex!important}
}

/* v21.38: keep billing maintenance secondary to normal automatic Stripe updates. */
.pq-billing-maintenance{margin-top:16px;padding-top:14px;border-top:1px solid var(--pq-line)}
.pq-billing-maintenance summary{cursor:pointer;font-weight:800;color:var(--pq-muted);list-style-position:inside}
.pq-billing-maintenance[open] summary{color:var(--pq-text)}
.pq-billing-maintenance .pq-btn{margin-top:4px}

/* ========================================================================
   v21.38 - focused Wallet, working Questlog, mobile-safe save, RACI editing
   ======================================================================== */
body.pq-modal-open .pq-bottom-nav{display:none!important;visibility:hidden!important;pointer-events:none!important}
.pq-questlog-modal-backdrop{height:var(--pq-visual-viewport-height,100dvh)!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;overflow:hidden!important}
.pq-questlog-edit-modal{height:min(92dvh,var(--pq-visual-viewport-height,92dvh))!important;min-height:min(520px,var(--pq-visual-viewport-height,92dvh))!important}
.pq-modal-scroll-body{flex:1 1 auto!important}
.pq-modal-sticky-actions{position:relative;z-index:3}
.pq-raci-editor{display:grid;gap:14px;padding:16px;border:1px solid var(--pq-line);border-radius:18px;background:color-mix(in srgb,var(--pq-surface-2) 88%,transparent)}
.pq-raci-editor h4{margin:0}.pq-raci-editor p{margin:.25rem 0 0}
.pq-raci-role{display:grid;gap:8px;min-width:0;margin:0;padding:12px;border:1px solid var(--pq-line);border-radius:14px}
.pq-raci-role legend{padding:0 6px;font-weight:850;color:var(--pq-text)}
.pq-raci-member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px}
.pq-raci-member{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 10px;border:1px solid var(--pq-line);border-radius:12px;background:var(--pq-surface);cursor:pointer}
.pq-raci-member.active{border-color:var(--pq-page-accent,var(--pq-accent));background:var(--pq-page-accent-faint,var(--pq-accent-soft))}
.pq-raci-member span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pq-raci-summary{display:block!important;margin-top:6px!important;color:var(--pq-page-accent,var(--pq-accent))!important;font-weight:750}
.pq-billing-maintenance{margin-top:12px;padding-top:10px;border-top:1px solid var(--pq-line)}
@media(max-width:700px){
  .pq-questlog-modal-backdrop{inset:0!important;padding:0!important;align-items:stretch!important;place-items:stretch!important}
  .pq-questlog-edit-modal{width:100vw!important;max-width:100vw!important;height:var(--pq-visual-viewport-height,100dvh)!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;min-height:0!important;border-radius:0!important;margin:0!important}
  .pq-modal-sticky-head{padding-top:max(14px,env(safe-area-inset-top))!important}
  .pq-modal-scroll-body{padding-bottom:24px!important}
  .pq-modal-sticky-actions{padding-bottom:max(14px,env(safe-area-inset-bottom))!important}
  .pq-raci-member-grid{grid-template-columns:1fr 1fr}
}

/* ========================================================================
   v21.39 unified saved theme, compact account hub, mobile voice/review sheets
   ======================================================================== */
:root{
  --pq-group-today:var(--pq-primary,var(--pq-accent));
  --pq-group-nutrition:var(--pq-primary,var(--pq-accent));
  --pq-group-home:var(--pq-primary,var(--pq-accent));
  --pq-group-capture:var(--pq-primary,var(--pq-accent));
  --pq-group-plan:var(--pq-primary,var(--pq-accent));
  --pq-group-review:var(--pq-primary,var(--pq-accent));
  --pq-group-admin:var(--pq-primary,var(--pq-accent));
  --pq-group-account:var(--pq-primary,var(--pq-accent));
}
.pq-app[data-page-group],.pq-main[data-page-group]{--pq-page-accent:var(--pq-primary,var(--pq-accent))!important;}
.pq-nav-group,.pq-nav-group-today,.pq-nav-group-nutrition,.pq-nav-group-home,.pq-nav-group-capture,.pq-nav-group-plan,.pq-nav-group-do-and-review,.pq-nav-group-realm-admin,.pq-nav-group-help{--pq-nav-accent:var(--pq-primary,var(--pq-accent))!important;}
.pq-menu-section,.pq-menu-section-today,.pq-menu-section-nutrition,.pq-menu-section-home,.pq-menu-section-capture,.pq-menu-section-plan,.pq-menu-section-do-and-review,.pq-menu-section-realm-admin,.pq-menu-section-account{--pq-menu-accent:var(--pq-primary,var(--pq-accent))!important;}

body.pq-overlay-open{overflow:hidden!important;overscroll-behavior:none;}
body.pq-overlay-open .pq-bottom-nav{display:none!important;}
.pq-overlay-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex:0 0 auto;padding:18px 20px;border-bottom:1px solid var(--pq-line);background:color-mix(in srgb,var(--pq-surface) 96%,transparent);}
.pq-overlay-sheet-header h2{margin:0 0 4px;font-size:clamp(24px,4vw,34px);}
.pq-overlay-sheet-header p{margin:0;max-width:720px;}
.pq-overlay-sheet-body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px;}
.pq-overlay-sheet-footer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:0 0 auto;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--pq-line);background:color-mix(in srgb,var(--pq-surface) 97%,transparent);box-shadow:0 -10px 28px rgba(0,0,0,.22);}

/* Account is a short hub; details open only when requested. */
.pq-account-summary{display:flex;align-items:center;gap:16px;padding:18px 20px;margin:14px 0;border:1px solid var(--pq-line);border-radius:var(--pq-radius);background:var(--pq-surface);}
.pq-account-summary h2,.pq-account-summary p{margin:0;}
.pq-account-avatar{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--pq-page-accent-soft);border:1px solid var(--pq-page-accent);color:var(--pq-page-accent);font-size:26px;font-weight:900;}
.pq-account-hub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0;}
.pq-account-hub-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;min-height:104px;padding:18px;text-align:left;border:1px solid var(--pq-line);border-radius:var(--pq-radius);background:var(--pq-surface);color:var(--pq-text);cursor:pointer;box-shadow:var(--pq-card-shadow-soft);}
.pq-account-hub-card:hover{border-color:var(--pq-page-accent);background:var(--pq-page-accent-faint);}
.pq-account-hub-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--pq-page-accent-soft);font-size:24px;}
.pq-account-hub-copy{display:grid;gap:5px;min-width:0;}
.pq-account-hub-copy strong{font-size:18px;}
.pq-account-hub-copy small{color:var(--pq-muted);line-height:1.35;}
.pq-account-hub-arrow{font-size:34px;color:var(--pq-page-accent);line-height:1;}
.pq-account-detail-sheet{width:min(980px,96vw)!important;max-height:92dvh!important;padding:0!important;display:flex;flex-direction:column;overflow:hidden!important;}
.pq-account-detail-content{display:grid;gap:16px;}
.pq-account-form-section{display:grid;gap:12px;padding:18px;border:1px solid var(--pq-line);border-radius:18px;background:var(--pq-surface-2);}
.pq-account-form-section h3{margin:0;}
.pq-account-detail-sheet .pq-preset-grid,.pq-account-detail-sheet .pq-skin-grid,.pq-account-detail-sheet .pq-palette-grid{margin-bottom:18px;}

/* Attachments get explicit Camera / Photos / Files choices. */
.pq-attachment-choice{width:min(620px,94vw)!important;padding:0!important;overflow:hidden!important;}
.pq-attachment-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px;}
.pq-attachment-choice-grid button{display:grid;place-items:center;gap:8px;min-height:150px;padding:18px;border:1px solid var(--pq-line);border-radius:20px;background:var(--pq-surface-2);color:var(--pq-text);cursor:pointer;text-align:center;}
.pq-attachment-choice-grid button:hover{border-color:var(--pq-page-accent);background:var(--pq-page-accent-soft);}
.pq-attachment-choice-grid button>span{font-size:36px;}
.pq-attachment-choice-grid button small{color:var(--pq-muted);}

/* Dictation is recording-first and owns the mobile viewport. */
.pq-voice-modal{padding:0!important;display:flex;flex-direction:column;overflow:hidden!important;max-height:92dvh!important;}
.pq-voice-body{display:grid;align-content:start;gap:18px;}
.pq-voice-capture{display:grid;gap:18px;place-items:center;text-align:center;padding:28px 18px;border:1px solid color-mix(in srgb,var(--pq-page-accent) 35%,var(--pq-line));border-radius:26px;background:linear-gradient(145deg,var(--pq-page-accent-soft),var(--pq-surface-2));}
.pq-voice-state{font-size:clamp(24px,6vw,38px);font-weight:900;display:flex;align-items:center;gap:10px;}
.pq-recording-dot{width:14px;height:14px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 8px rgba(239,68,68,.14);}
.pq-voice-waveform{width:min(560px,100%);height:120px;}
.pq-voice-primary-actions{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;width:100%;}
.pq-voice-primary-actions .pq-btn{min-height:48px;}
.pq-voice-people{border:1px solid var(--pq-line);border-radius:18px;padding:14px 16px;background:var(--pq-surface-2);}
.pq-voice-people summary{cursor:pointer;font-weight:900;}
.pq-voice-people[open] summary{margin-bottom:10px;}
.pq-voice-footer .pq-btn-primary{min-width:180px;}

/* Quest and action reviews no longer live in a clipped chat bubble. */
.pq-review-launch{display:grid;gap:9px;margin:12px 0;padding:14px;border:1px solid color-mix(in srgb,var(--pq-page-accent) 45%,var(--pq-line));border-radius:16px;background:var(--pq-page-accent-faint);}
.pq-review-launch p{margin:0;}
.pq-review-launch .pq-btn{justify-self:start;}
.pq-review-sheet{width:min(1120px,97vw)!important;height:min(92dvh,920px);max-height:92dvh!important;padding:0!important;display:flex;flex-direction:column;overflow:hidden!important;}
.pq-review-sheet .pq-pending-review,.pq-review-sheet .pq-seer-action-review{margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;}
.pq-seer-action-review{display:flex;flex-direction:column;min-height:0;}
.pq-seer-review-title,.pq-seer-review-tools{flex:0 0 auto;}
.pq-seer-review-scroll{display:grid;gap:12px;min-height:0;}
.pq-seer-review-footer{position:sticky;bottom:-20px;z-index:5;margin:16px -20px -20px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--pq-surface) 97%,transparent);border-top:1px solid var(--pq-line);}
.pq-chat-thread-head>strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;}

@media(max-width:760px){
  .pq-account-hub{grid-template-columns:1fr;}
  .pq-account-hub-card{min-height:92px;padding:15px;grid-template-columns:auto minmax(0,1fr) auto;}
  .pq-account-hub-card>.pq-pill{grid-column:2;justify-self:start;}
  .pq-account-hub-arrow{grid-column:3;grid-row:1 / span 2;}
  .pq-attachment-choice-backdrop,.pq-voice-backdrop,.pq-review-sheet-backdrop,.pq-account-detail-backdrop{padding:0!important;align-items:stretch!important;}
  .pq-attachment-choice,.pq-voice-modal,.pq-review-sheet,.pq-account-detail-sheet{width:100vw!important;max-width:100vw!important;height:var(--pq-visual-viewport-height,100dvh)!important;max-height:none!important;border-radius:0!important;border-left:0!important;border-right:0!important;border-bottom:0!important;}
  .pq-overlay-sheet-header{padding:14px 14px 12px;}
  .pq-overlay-sheet-header .pq-btn{flex:0 0 auto;}
  .pq-overlay-sheet-body{padding:14px;}
  .pq-overlay-sheet-footer{padding:10px 14px calc(10px + env(safe-area-inset-bottom));}
  .pq-overlay-sheet-footer .pq-btn{flex:1 1 auto;justify-content:center;}
  .pq-attachment-choice-grid{grid-template-columns:1fr;padding:14px;overflow:auto;}
  .pq-attachment-choice-grid button{grid-template-columns:auto 1fr;grid-template-rows:auto auto;place-items:start;align-items:center;text-align:left;min-height:92px;}
  .pq-attachment-choice-grid button>span{grid-row:1 / span 2;font-size:32px;}
  .pq-voice-capture{min-height:300px;padding:24px 14px;}
  .pq-voice-waveform{height:100px;}
  .pq-voice-footer{display:grid;grid-template-columns:1fr 1fr;}
  .pq-voice-footer .pq-btn-primary{grid-column:1 / -1;min-width:0;}
  .pq-review-sheet .pq-review-editor,.pq-review-sheet .pq-review-grid,.pq-review-sheet .pq-preview-edit-grid{grid-template-columns:1fr!important;}
  .pq-review-sheet .pq-review-objective{grid-template-columns:1fr!important;}
  .pq-review-sheet .pq-btn{max-width:100%;}
}
.pq-review-sheet .pq-review-actions{position:sticky;bottom:-20px;z-index:6;margin:18px -20px -20px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--pq-surface) 97%,transparent);border-top:1px solid var(--pq-line);box-shadow:0 -10px 28px rgba(0,0,0,.2);}
.pq-review-sheet .pq-review-actions .pq-btn{flex:1 1 180px;justify-content:center;}
@media(max-width:760px){
  .pq-review-sheet .pq-review-actions{bottom:-14px;margin:16px -14px -14px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));}
  .pq-review-sheet .pq-review-actions .pq-btn{flex:1 1 100%;}
}

/* ========================================================================
   v21.41 Pewter chat workspace, mobile one-scroll guardrails, and genuinely
   different theme structures. This block intentionally comes last.
   ======================================================================== */

/* Quest Pop is a kid-friendly purple palette, while Royal Hall now uses
   purple as its actual interaction color instead of hiding it as secondary. */
html[data-pq-palette="royal"]{
  --pq-accent:#8b5cf6!important;
  --pq-accent-2:#6d28d9!important;
  --pq-accent-soft:rgba(139,92,246,.20)!important;
  --pq-on-accent:#ffffff!important;
  --pq-primary:#8b5cf6!important;
  --pq-primary-strong:#6d28d9!important;
  --pq-secondary:#d8a33a!important;
  --pq-secondary-strong:#a8781f!important;
  --pq-highlight:#60a5fa!important;
}
html[data-pq-palette="violet"]{
  --pq-page-bg:#0d071a;
  --pq-bg:#0d071a;
  --pq-bg-2:#140b28;
  --pq-surface:#19102f;
  --pq-surface-2:#241744;
  --pq-surface-3:#32205d;
  --pq-panel:#19102f;
  --pq-panel-2:#241744;
  --pq-panel-warm:#301638;
  --pq-sidebar-bg:#10091f;
  --pq-line:#49356f;
  --pq-line-soft:#382856;
  --pq-text:#fff9ff;
  --pq-muted:#cbbce0;
  --pq-accent:#a855f7;
  --pq-accent-2:#7e22ce;
  --pq-accent-soft:rgba(168,85,247,.22);
  --pq-on-accent:#ffffff;
  --pq-primary:#a855f7;
  --pq-primary-strong:#7e22ce;
  --pq-secondary:#22d3ee;
  --pq-secondary-strong:#0891b2;
  --pq-highlight:#f472b6;
  --pq-success-accent:#34d399;
  --pq-warning-accent:#fbbf24;
  --macro-protein:#34d399;
  --macro-carbs:#22d3ee;
  --macro-fat:#fbbf24;
  --macro-fiber:#f472b6;
  --pq-focus:0 0 0 3px rgba(168,85,247,.38);
}
html[data-pq-theme="light"][data-pq-palette="violet"]{
  --pq-page-bg:#f7f1ff;
  --pq-bg:#f7f1ff;
  --pq-bg-2:#eee4fb;
  --pq-surface:#ffffff;
  --pq-surface-2:#f7f1ff;
  --pq-surface-3:#ecddfb;
  --pq-panel:#ffffff;
  --pq-panel-2:#f7f1ff;
  --pq-sidebar-bg:#fbf8ff;
  --pq-line:#d8c6eb;
  --pq-line-soft:#e9ddf4;
  --pq-text:#26143d;
  --pq-muted:#756488;
}

/* Each skin changes density, geometry, and interaction rhythm. */
html[data-pq-skin="classic"]{
  --pq-radius:12px!important;
  --pq-panel-padding:14px!important;
  --pq-section-gap:12px!important;
}
html[data-pq-skin="classic"] .pq-card,
html[data-pq-skin="classic"] .pq-subcard,
html[data-pq-skin="classic"] .pq-plan-card,
html[data-pq-skin="classic"] .pq-member-card,
html[data-pq-skin="classic"] .pq-queue-card{border-radius:12px!important;box-shadow:none!important;}
html[data-pq-skin="classic"] .pq-btn{min-height:38px!important;padding:8px 12px!important;border-radius:8px!important;}
html[data-pq-skin="classic"] .pq-input,
html[data-pq-skin="classic"] .pq-select,
html[data-pq-skin="classic"] .pq-textarea{border-radius:8px!important;}
html[data-pq-skin="classic"] .pq-grid,
html[data-pq-skin="classic"] .pq-grid-2,
html[data-pq-skin="classic"] .pq-grid-two,
html[data-pq-skin="classic"] .pq-stat-grid{gap:10px!important;}

html[data-pq-skin="storybook"]{
  --pq-radius:30px!important;
  --pq-panel-padding:22px!important;
  --pq-section-gap:22px!important;
}
html[data-pq-skin="storybook"] .pq-card,
html[data-pq-skin="storybook"] .pq-subcard,
html[data-pq-skin="storybook"] .pq-plan-card,
html[data-pq-skin="storybook"] .pq-member-card,
html[data-pq-skin="storybook"] .pq-queue-card{border-radius:30px!important;padding:22px!important;box-shadow:0 14px 34px color-mix(in srgb,var(--pq-accent) 12%,transparent)!important;}
html[data-pq-skin="storybook"] .pq-btn{min-height:52px!important;padding:12px 22px!important;border-radius:999px!important;}
html[data-pq-skin="storybook"] .pq-input,
html[data-pq-skin="storybook"] .pq-select,
html[data-pq-skin="storybook"] .pq-textarea{min-height:52px;border-radius:22px!important;padding:14px 16px!important;}
html[data-pq-skin="storybook"] .pq-grid,
html[data-pq-skin="storybook"] .pq-grid-2,
html[data-pq-skin="storybook"] .pq-grid-two,
html[data-pq-skin="storybook"] .pq-stat-grid{gap:20px!important;}
html[data-pq-skin="storybook"] .pq-bottom-nav-icon{border-radius:50%!important;}
html[data-pq-skin="storybook"] .pq-account-hub-card{min-height:118px!important;}

html[data-pq-skin="guild"]{
  --pq-radius:18px!important;
  --pq-panel-padding:19px!important;
  --pq-section-gap:17px!important;
}
html[data-pq-skin="guild"] .pq-card,
html[data-pq-skin="guild"] .pq-subcard,
html[data-pq-skin="guild"] .pq-plan-card,
html[data-pq-skin="guild"] .pq-member-card,
html[data-pq-skin="guild"] .pq-queue-card{
  border-radius:18px!important;
  padding:19px!important;
  border:1px solid color-mix(in srgb,var(--pq-accent) 46%,var(--pq-line))!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--pq-secondary) 38%,transparent),0 14px 34px rgba(0,0,0,.24)!important;
}
html[data-pq-skin="guild"] .pq-btn{min-height:46px!important;border-radius:10px!important;padding:10px 17px!important;letter-spacing:.015em;}
html[data-pq-skin="guild"] .pq-btn-primary{background:linear-gradient(145deg,var(--pq-accent),color-mix(in srgb,var(--pq-accent-2) 78%,#1e123c))!important;box-shadow:0 0 22px color-mix(in srgb,var(--pq-accent) 25%,transparent)!important;}
html[data-pq-skin="guild"] .pq-input,
html[data-pq-skin="guild"] .pq-select,
html[data-pq-skin="guild"] .pq-textarea{border-radius:10px!important;border-width:1px!important;}
html[data-pq-skin="guild"] .pq-section-title,
html[data-pq-skin="guild"] .pq-section-head{border-bottom:1px solid color-mix(in srgb,var(--pq-secondary) 45%,var(--pq-line))!important;}

html[data-pq-skin="focus"]{
  --pq-radius:8px!important;
  --pq-panel-padding:12px!important;
  --pq-section-gap:9px!important;
}
html[data-pq-skin="focus"] .pq-card,
html[data-pq-skin="focus"] .pq-subcard,
html[data-pq-skin="focus"] .pq-plan-card,
html[data-pq-skin="focus"] .pq-member-card,
html[data-pq-skin="focus"] .pq-queue-card{border-radius:8px!important;padding:12px!important;box-shadow:none!important;}
html[data-pq-skin="focus"] .pq-btn{min-height:34px!important;padding:6px 10px!important;border-radius:6px!important;font-size:13px;}
html[data-pq-skin="focus"] .pq-input,
html[data-pq-skin="focus"] .pq-select{min-height:38px!important;padding:8px 10px!important;border-radius:6px!important;}
html[data-pq-skin="focus"] .pq-textarea{border-radius:6px!important;}
html[data-pq-skin="focus"] .pq-grid,
html[data-pq-skin="focus"] .pq-grid-2,
html[data-pq-skin="focus"] .pq-grid-two,
html[data-pq-skin="focus"] .pq-stat-grid{gap:8px!important;}

/* Pewter is a chat workspace, not a dashboard with a chat trapped inside. */
.pq-chat-mobile-head{display:none;}
.pq-chat-desktop-intro{margin-bottom:10px;}
.pq-chat-desktop-toolbar{margin-bottom:10px;}
.pq-chat-thread-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--pq-line);background:var(--pq-surface);}
.pq-chat-thread-copy{display:grid;gap:3px;min-width:0;}
.pq-chat-thread-copy>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pq-chat-thread-menu{width:40px;height:40px;min-width:40px;border-radius:50%;border:1px solid var(--pq-line);background:var(--pq-surface-2);color:var(--pq-text);font-size:24px;line-height:1;cursor:pointer;}
.pq-thread-drawer-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 12px;}
.pq-thread-drawer-controls>.pq-btn:first-child{grid-column:1/-1;}
.pq-thread-bulk-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;border:1px solid var(--pq-line);border-radius:12px;background:var(--pq-surface-2);}
.pq-thread-empty{padding:18px 8px;text-align:center;}
.pq-chat-inline-notice{margin:8px 12px 0;padding:9px 12px;border:1px solid color-mix(in srgb,var(--pq-accent) 45%,var(--pq-line));border-radius:12px;background:var(--pq-accent-soft);font-size:13px;}
.pq-chat-seed-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 10px 8px;padding:8px 11px;border:1px solid var(--pq-line);border-radius:12px;background:var(--pq-surface-2);color:var(--pq-muted);font-size:12px;}
.pq-chat-seed-banner span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pq-chat-seed-banner button{width:28px;height:28px;min-width:28px;border-radius:50%;border:1px solid var(--pq-line);background:var(--pq-surface);color:var(--pq-text);}
.pq-chat-utility-sheet{width:min(620px,94vw)!important;max-height:min(88dvh,820px)!important;padding:0!important;display:flex;flex-direction:column;overflow:hidden!important;}
.pq-chat-action-list{display:grid;gap:10px;}
.pq-chat-action-list .pq-btn{width:100%;justify-content:flex-start;text-align:left;}

@media(min-width:901px){
  .pq-chat-layout{height:calc(100vh - 285px);min-height:520px!important;align-items:stretch!important;}
  .pq-chat-panel-one-scroll{height:100%;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
  .pq-messages-one-scroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;}
  .pq-chat-panel .pq-composer{position:relative!important;flex:0 0 auto!important;}
}

@media(max-width:900px){
  :root{--pq-mobile-nav-space:calc(76px + env(safe-area-inset-bottom));}
  body.pq-chat-active{overflow:hidden!important;overscroll-behavior:none!important;}
  body.pq-chat-active .pq-main-chat>.pq-topbar,
  body.pq-chat-active .pq-main-chat>.pq-realm-picker{display:none!important;}
  body.pq-chat-active .pq-main-chat{height:var(--pq-visual-viewport-height,100dvh)!important;min-height:0!important;padding:0!important;overflow:hidden!important;}
  body.pq-chat-active .pq-chat-page{height:calc(var(--pq-visual-viewport-height,100dvh) - var(--pq-mobile-nav-space))!important;max-height:calc(var(--pq-visual-viewport-height,100dvh) - var(--pq-mobile-nav-space))!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0!important;margin:0!important;}
  body.pq-chat-composer-focused .pq-bottom-nav{display:none!important;visibility:hidden!important;pointer-events:none!important;}
  body.pq-chat-composer-focused .pq-chat-page{height:var(--pq-visual-viewport-height,100dvh)!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;}
  .pq-chat-page>.pq-display,.pq-chat-page>.pq-subtitle,.pq-chat-desktop-intro,.pq-chat-desktop-toolbar{display:none!important;}
  .pq-chat-mobile-head{display:flex!important;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto;min-height:58px;padding:8px 10px;border-bottom:1px solid var(--pq-line);background:color-mix(in srgb,var(--pq-surface) 96%,transparent);backdrop-filter:blur(16px);z-index:8;}
  .pq-chat-mobile-brand{display:flex;align-items:center;gap:10px;min-width:0;}
  .pq-chat-mobile-brand>div{display:grid;min-width:0;}
  .pq-chat-mobile-brand strong{font-size:18px;}
  .pq-chat-mobile-brand small{max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--pq-muted);font-size:11px;}
  .pq-chat-mobile-avatar{width:38px;height:38px;min-width:38px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,var(--pq-accent),var(--pq-accent-2));color:var(--pq-on-accent);font-weight:900;font-family:var(--pq-font-title);}
  .pq-chat-mobile-head-actions{display:flex;align-items:center;gap:6px;}
  .pq-chat-mobile-head-actions button{width:39px;height:39px;border-radius:14px;border:1px solid var(--pq-line);background:var(--pq-surface-2);color:var(--pq-text);font-weight:900;font-size:20px;}
  .pq-chat-layout{flex:1 1 auto!important;height:auto!important;min-height:0!important;overflow:hidden!important;display:block!important;margin:0!important;border:0!important;}
  .pq-chat-panel,.pq-chat-panel-one-scroll{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;background:var(--pq-page-bg)!important;}
  .pq-chat-thread-head{flex:0 0 auto;padding:7px 10px!important;min-height:48px;background:var(--pq-surface)!important;}
  .pq-chat-thread-copy>strong{font-size:14px;}
  .pq-chat-thread-copy>small{font-size:10px;}
  .pq-chat-thread-menu{width:34px;height:34px;min-width:34px;font-size:20px;}
  .pq-messages-one-scroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;padding:8px 10px 12px!important;overscroll-behavior-y:contain!important;scroll-padding-bottom:16px!important;background:var(--pq-page-bg)!important;}
  .pq-msg{max-width:94%!important;margin:7px 0!important;padding:10px 12px!important;border-radius:16px!important;}
  .pq-msg.user{max-width:88%!important;}
  .pq-msg.assistant{padding-left:12px!important;}
  .pq-chat-panel .pq-composer{position:relative!important;inset:auto!important;flex:0 0 auto!important;margin:0!important;padding:8px 9px calc(8px + env(safe-area-inset-bottom))!important;border-top:1px solid var(--pq-line)!important;background:color-mix(in srgb,var(--pq-surface) 97%,transparent)!important;box-shadow:0 -8px 24px rgba(0,0,0,.25)!important;}
  .pq-chat-panel .pq-composer .pq-textarea{width:100%!important;max-width:none!important;min-height:44px!important;max-height:116px!important;margin:0!important;padding:11px 13px!important;border-radius:18px!important;resize:none!important;}
  .pq-composer-actions{width:100%!important;max-width:none!important;margin:6px 0 0!important;gap:6px!important;}
  .pq-composer-actions .pq-btn{min-height:38px!important;padding:7px 10px!important;font-size:12px!important;}
  .pq-composer-actions>.pq-btn-primary{min-width:70px!important;margin-left:auto!important;}
  .pq-chat-seed-banner{margin:0 8px 6px;}
  .pq-chat-inline-notice{margin:6px 8px 0;}
  .pq-chat-layout .pq-thread-list{position:fixed!important;inset:0 auto 0 0!important;width:min(370px,92vw)!important;height:var(--pq-visual-viewport-height,100dvh)!important;max-height:none!important;z-index:310!important;transform:translateX(-105%)!important;transition:transform .18s ease!important;border-radius:0 24px 24px 0!important;padding:12px!important;overflow-y:auto!important;overscroll-behavior:contain!important;}
  .pq-chat-layout.threads-open .pq-thread-list{transform:translateX(0)!important;}
  .pq-thread-backdrop{position:fixed!important;inset:0!important;z-index:300!important;background:rgba(0,0,0,.62)!important;border:0!important;}
  .pq-mobile-thread-head{position:sticky;top:-12px;z-index:3;background:var(--pq-surface);padding:12px 0 8px!important;}
  .pq-chat-utility-backdrop{padding:0!important;align-items:stretch!important;z-index:360!important;}
  .pq-chat-utility-sheet{width:100vw!important;max-width:100vw!important;height:var(--pq-visual-viewport-height,100dvh)!important;max-height:none!important;border-radius:0!important;border:0!important;}
}

/* One-scroll contract for every full-screen workflow. Headers and actions stay
   fixed; only the designated body scrolls. */
@media(max-width:900px){
  body.pq-overlay-open,body.pq-modal-open,body.pq-mobile-map-open{overflow:hidden!important;overscroll-behavior:none!important;}
  .pq-account-detail-sheet,.pq-review-sheet,.pq-voice-modal,.pq-questlog-edit-modal,.pq-chat-utility-sheet{
    display:flex!important;flex-direction:column!important;overflow:hidden!important;min-height:0!important;
  }
  .pq-overlay-sheet-body,.pq-modal-scroll-body,.pq-seer-review-scroll{
    flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
  }
  .pq-overlay-sheet-header,.pq-overlay-sheet-footer,.pq-modal-sticky-head,.pq-modal-sticky-actions{
    flex:0 0 auto!important;position:relative!important;inset:auto!important;
  }
  .pq-modal-backdrop.pq-account-detail-backdrop,
  .pq-modal-backdrop.pq-review-sheet-backdrop,
  .pq-modal-backdrop.pq-voice-backdrop,
  .pq-modal-backdrop.pq-questlog-modal-backdrop,
  .pq-modal-backdrop.pq-chat-utility-backdrop{
    height:var(--pq-visual-viewport-height,100dvh)!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;overflow:hidden!important;
  }
}

/* ========================================================================
   v21.42 Pewter orchestration, inline approvals, and spacing cohesion.
   ======================================================================== */
.pq-pewter-orchestration{
  display:grid;gap:8px;margin:10px 0 4px;padding:10px 11px;
  border:1px solid color-mix(in srgb,var(--pq-accent) 34%,var(--pq-line));
  border-radius:calc(var(--pq-radius) * .72);background:color-mix(in srgb,var(--pq-surface-2) 90%,var(--pq-accent-soft));
}
.pq-pewter-orchestration-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;}
.pq-pewter-grounded{font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--pq-accent);}
.pq-pewter-fates,.pq-pewter-context-facts,.pq-pewter-links,.pq-pewter-action-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.pq-fate-chip,.pq-pewter-context-facts span,.pq-pewter-action-meta span{
  border:1px solid var(--pq-line);border-radius:999px;background:var(--pq-surface);padding:4px 8px;font-size:11px;color:var(--pq-muted);
}
.pq-fate-chip{color:var(--pq-text);border-color:color-mix(in srgb,var(--pq-secondary) 38%,var(--pq-line));}
.pq-pewter-links .pq-btn{min-height:32px!important;padding:5px 9px!important;font-size:11px!important;}
.pq-pewter-follow-up{margin:0!important;font-size:12px;}
.pq-pewter-review-inline{margin:10px 0 2px!important;padding:11px!important;background:color-mix(in srgb,var(--pq-surface) 96%,var(--pq-accent-soft))!important;}
.pq-pewter-review-inline .pq-pewter-review-head h3{font-size:15px;margin:0 0 2px;}
.pq-pewter-review-inline .pq-pewter-review-head p{font-size:12px;margin:0;}
.pq-pewter-action-list{display:grid;gap:8px;margin-top:9px;}
.pq-pewter-review-inline .pq-action-card{margin:0!important;padding:10px!important;border-radius:calc(var(--pq-radius) * .72)!important;}
.pq-pewter-target{margin:3px 0!important;font-weight:800;}
.pq-pewter-action-meta{margin:7px 0;}
.pq-pewter-action-buttons{margin-top:8px;}
.pq-action-applied{opacity:.82;border-color:color-mix(in srgb,var(--pq-success-accent) 48%,var(--pq-line))!important;}

/* Avoid accidental card-inside-card bloat. Nested working surfaces use a
   lighter inset treatment instead of duplicating full page margins/padding. */
.pq-card>.pq-card,.pq-card>.pq-subcard,.pq-subcard>.pq-card{
  margin:10px 0!important;padding:calc(var(--pq-panel-padding) * .72)!important;
  box-shadow:none!important;background:var(--pq-surface-2)!important;
}
.pq-card>h2:first-child,.pq-card>h3:first-child,.pq-subcard>h2:first-child,.pq-subcard>h3:first-child{margin-top:0;}
.pq-card>p:last-child,.pq-subcard>p:last-child{margin-bottom:0;}
.pq-page>.pq-card:first-of-type{margin-top:10px;}
.pq-page .pq-section-title+.pq-card,.pq-page .pq-section-head+.pq-card{margin-top:8px;}

@media(max-width:900px){
  .pq-pewter-orchestration{padding:8px 9px;margin:8px 0 2px;gap:6px;}
  .pq-pewter-orchestration-top{align-items:flex-start;}
  .pq-pewter-fates{width:100%;}
  .pq-pewter-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  .pq-pewter-links .pq-btn{width:100%;justify-content:center;min-width:0;white-space:normal;}
  .pq-pewter-review-inline{padding:9px!important;}
  .pq-pewter-review-inline .pq-action-card{padding:9px!important;}
  .pq-pewter-action-buttons{display:grid!important;grid-template-columns:1fr auto;width:100%;}
  .pq-pewter-action-buttons .pq-btn{width:100%;min-width:0;}
  .pq-msg.assistant:has(.pq-pewter-review-inline){max-width:100%!important;width:100%;}
  .pq-page:not(.pq-chat-page){padding-inline:2px;}
  .pq-page:not(.pq-chat-page)>.pq-card{margin-inline:0!important;}
  .pq-card>.pq-card,.pq-card>.pq-subcard,.pq-subcard>.pq-card{padding:11px!important;margin:8px 0!important;}
}

/* v21.43: proactive Questlog proposal cues */
.pq-pewter-plan-ready{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.65rem;
  padding:.65rem .8rem;
  border:1px solid color-mix(in srgb,var(--pq-primary,#7c3aed) 40%,transparent);
  border-radius:var(--pq-radius-md,14px);
  background:color-mix(in srgb,var(--pq-primary,#7c3aed) 10%,var(--pq-surface,#111827));
}
.pq-pewter-plan-ready span{color:var(--pq-muted,#9ca3af);font-size:.88rem;text-align:right}
.pq-pewter-work-review .pq-action-card{border-left:4px solid var(--pq-primary,#7c3aed)}
.pq-pewter-work-review .pq-pewter-action-meta span:first-child{font-weight:800;color:var(--pq-primary,#7c3aed)}
@media (max-width:700px){
  .pq-pewter-plan-ready{align-items:flex-start;flex-direction:column}
  .pq-pewter-plan-ready span{text-align:left}
}

/* ========================================================================
   v21.43 Pewter character, compact reviews, cognitive work profiles.
   ======================================================================== */
.pq-pewter-mark{display:block;width:100%;height:100%;object-fit:contain;border-radius:22%;}
.pq-pewter-mascot{--pq-pewter-size:72px;position:relative;display:inline-grid;place-items:center;width:var(--pq-pewter-size);height:var(--pq-pewter-size);flex:0 0 var(--pq-pewter-size);overflow:visible;isolation:isolate;}
.pq-pewter-xs{--pq-pewter-size:34px}.pq-pewter-sm{--pq-pewter-size:54px}.pq-pewter-md{--pq-pewter-size:82px}.pq-pewter-lg{--pq-pewter-size:126px}
.pq-pewter-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;animation:pq-pewter-frame-cycle 3.2s linear infinite;filter:drop-shadow(0 8px 12px rgba(0,0,0,.28));pointer-events:none;}
.pq-pewter-frame-1{animation-delay:0s}.pq-pewter-frame-2{animation-delay:.8s}.pq-pewter-frame-3{animation-delay:1.6s}.pq-pewter-frame-4{animation-delay:2.4s}
.pq-pewter-state-idle .pq-pewter-frame,.pq-pewter-state-look .pq-pewter-frame{animation-duration:4.8s}.pq-pewter-state-listening .pq-pewter-frame{animation-duration:2.4s}.pq-pewter-state-loading .pq-pewter-frame{animation-duration:1.4s}
@keyframes pq-pewter-frame-cycle{0%,24.99%{opacity:1}25%,100%{opacity:0}}
.pq-pewter-state-idle{animation:pq-pewter-float 4.8s ease-in-out infinite}.pq-pewter-state-success{animation:pq-pewter-success-bounce 1.8s ease-in-out infinite}.pq-pewter-state-alert{animation:pq-pewter-alert-nudge 1.6s ease-in-out infinite}
@keyframes pq-pewter-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes pq-pewter-success-bounce{0%,100%{transform:translateY(0) scale(1)}35%{transform:translateY(-5px) scale(1.03)}60%{transform:translateY(0) scale(.99)}}
@keyframes pq-pewter-alert-nudge{0%,100%{transform:rotate(0)}25%{transform:rotate(-2deg)}75%{transform:rotate(2deg)}}
.pq-pewter-avatar{display:grid!important;place-items:center!important;background:transparent!important;border:0!important;overflow:visible!important;}
.pq-chat-mobile-avatar{display:grid!important;place-items:center!important;background:transparent!important;border:0!important;overflow:visible!important;}
.pq-bottom-nav button .pq-pewter-mark{width:32px;height:32px;margin:auto;box-shadow:0 0 0 1px color-mix(in srgb,var(--pq-accent) 28%,transparent);}
.pq-msg{position:relative}.pq-msg-pewter{float:left;margin:-3px 8px 2px -3px}.pq-msg.assistant>.pq-speaker{display:inline-flex;align-items:center;min-height:30px;}

.pq-pewter-review-launch-card{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px!important;margin:9px 0!important;border-color:color-mix(in srgb,var(--pq-primary) 45%,var(--pq-line))!important;background:linear-gradient(135deg,color-mix(in srgb,var(--pq-primary) 12%,var(--pq-surface)),var(--pq-surface))!important;}
.pq-pewter-review-launch-copy{min-width:0}.pq-pewter-review-launch-copy p{margin:.2rem 0 0!important}.pq-pewter-review-launch-card>.pq-btn{white-space:nowrap;}
.pq-pewter-action-sheet-backdrop{z-index:1300!important;height:var(--pq-visual-viewport-height,100dvh)!important;overflow:hidden!important;}
.pq-pewter-action-sheet{display:grid!important;grid-template-rows:auto minmax(0,1fr);width:min(940px,100vw)!important;max-width:940px!important;height:min(900px,var(--pq-visual-viewport-height,100dvh))!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;padding:0!important;overflow:hidden!important;}
.pq-pewter-action-sheet>.pq-overlay-sheet-body{overflow:auto!important;overscroll-behavior:contain;padding:var(--pq-panel-padding)!important;}
.pq-pewter-review-body{display:grid;gap:10px;min-width:0}.pq-pewter-action-sheet .pq-pewter-action-list{margin:0;}
.pq-pewter-action-sheet .pq-action-card{margin:0!important;}

.pq-work-profile{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;color:var(--pq-muted);font-size:11px;font-weight:700;}
.pq-work-profile span{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--pq-line);border-radius:999px;background:color-mix(in srgb,var(--pq-surface-2) 88%,transparent);padding:3px 7px;}
.pq-warning{border-left:3px solid var(--pq-warning-accent,#f59e0b);padding-left:8px;color:var(--pq-text);}

@media(max-width:700px){
  .pq-pewter-review-launch-card{grid-template-columns:auto minmax(0,1fr);gap:8px}.pq-pewter-review-launch-card>.pq-btn{grid-column:1/-1;width:100%;}
  .pq-pewter-action-sheet{width:100vw!important;height:var(--pq-visual-viewport-height,100dvh)!important;border-radius:0!important;border-inline:0!important;}
  .pq-pewter-action-sheet .pq-overlay-sheet-header{padding:max(12px,env(safe-area-inset-top)) 14px 12px!important;}
  .pq-pewter-action-sheet>.pq-overlay-sheet-body{padding:12px 12px calc(18px + env(safe-area-inset-bottom))!important;}
  .pq-pewter-action-sheet .pq-action-card{padding:11px!important;}
  .pq-work-profile{font-size:10px;}
}
@media(prefers-reduced-motion:reduce){
  .pq-pewter-mascot,.pq-pewter-frame{animation:none!important}.pq-pewter-frame{display:none!important}.pq-pewter-frame-1{display:block!important;opacity:1!important}
}
.pq-scene-scan-card{margin:9px 0;border:1px solid color-mix(in srgb,var(--pq-secondary) 45%,var(--pq-line));border-radius:var(--pq-radius);background:color-mix(in srgb,var(--pq-surface-2) 92%,var(--pq-secondary) 8%);overflow:hidden;}
.pq-scene-scan-card>summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;padding:9px 11px}.pq-scene-scan-card>summary::-webkit-details-marker{display:none}.pq-scene-scan-card>summary span{display:grid;gap:1px}.pq-scene-scan-card>summary small{color:var(--pq-muted)}
.pq-scene-scan-body{padding:0 12px 12px;border-top:1px solid var(--pq-line)}.pq-scene-scan-body h4{margin:.75rem 0 .35rem}.pq-scene-scan-body ul{margin:.35rem 0;padding-left:1.2rem}.pq-scene-scan-body li{margin:.35rem 0}
.pq-pewter-orchestration-top>.pq-pewter-mascot{margin-right:2px}
.pq-chat-empty>.pq-pewter-mascot{margin:0 auto 8px}
.pq-pewter-state-blink{animation:pq-pewter-float 4.8s ease-in-out infinite}

/* v21.43 Pewter icon integration and explicit area-scan capture */
.pq-inline-pewter-mark{display:inline-block!important;width:20px!important;height:20px!important;flex:0 0 20px;border-radius:6px!important;vertical-align:middle;margin-right:5px;object-fit:cover!important}.pq-inline-icon-label{display:inline-flex;align-items:center;gap:5px}.pq-pewter-fates>span{display:inline-flex;align-items:center}.pq-attachment-pewter-icon{width:42px!important;height:42px!important;margin:0 auto 2px;border-radius:12px!important}.pq-attachment-scan-area{border-color:color-mix(in srgb,var(--pq-accent) 55%,var(--pq-line))!important;background:linear-gradient(145deg,color-mix(in srgb,var(--pq-accent) 12%,var(--pq-surface)),var(--pq-surface))!important}.pq-attachment-scan-area small{max-width:18rem}

/* PQIO v21.44 XP progression currency policy */
[data-currency="gems"],
[data-wallet-currency="gems"],
.pq-gem-balance,
.pq-gems-balance,
.wallet-gems,
.gems-purchase-option { display: none !important; }

/* ProjectQuest v21.45 daily capacity, physical demand, and XP progression */
.pq-capacity-summary{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.pq-capacity-summary span,.pq-xp-bounty{display:inline-flex;align-items:center;border:1px solid var(--pq-line);border-radius:999px;padding:.3rem .6rem;background:var(--pq-surface-2);font-size:.78rem;font-weight:800}.pq-capacity-field{display:grid;gap:.4rem;padding:.75rem;border:1px solid var(--pq-line);border-radius:var(--pq-radius-md);background:var(--pq-surface-2)}.pq-capacity-field input[type=range]{width:100%}.pq-work-style-picker{border:0;padding:0;margin:1rem 0;display:flex;flex-wrap:wrap;gap:.55rem}.pq-work-style-picker legend{width:100%;font-weight:800;margin-bottom:.35rem}.pq-work-style-picker label{display:flex;align-items:center;gap:.4rem;border:1px solid var(--pq-line);border-radius:999px;padding:.55rem .75rem;cursor:pointer}.pq-work-style-picker label.active{border-color:var(--pq-primary);background:color-mix(in srgb,var(--pq-primary) 14%,var(--pq-surface))}.pq-capacity-recommendations{margin:1rem 0;display:grid;gap:.7rem}.pq-capacity-work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.65rem}.pq-capacity-work-card{display:grid;text-align:left;gap:.4rem;border:1px solid var(--pq-line);border-radius:var(--pq-radius-md);background:var(--pq-surface-2);padding:.8rem;color:inherit}.pq-capacity-work-card p{margin:0;font-size:.85rem}.pq-stretch-work{border-left:3px solid var(--pq-warning-accent,#f59e0b);padding:.45rem .7rem}.pq-stretch-work summary{cursor:pointer;font-weight:800}.pq-stretch-row{display:grid;gap:.15rem;padding:.45rem 0;border-bottom:1px solid var(--pq-line)}.pq-xp-bounty{color:var(--pq-primary)}
@media(max-width:700px){.pq-daily-modal .pq-grid-2{grid-template-columns:1fr}.pq-capacity-work-grid{grid-template-columns:1fr}.pq-capacity-field{padding:.65rem}}

/* PQIO v21.45 skill progression page */
.pq-progression-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.pq-progression-summary h2{font-size:clamp(2rem,5vw,3.8rem);margin:.1rem 0}
.pq-progression-group{margin-top:1.4rem}
.pq-skill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.pq-skill-card{border:1px solid var(--pq-border,#d8d2c4);border-radius:16px;background:var(--pq-card,#fff);padding:1rem;box-shadow:0 8px 20px rgba(0,0,0,.04)}
.pq-skill-card h3{margin:0 0 .15rem}
.pq-skill-level,.pq-xp-bounty{display:inline-flex;align-items:center;border-radius:999px;padding:.28rem .58rem;background:color-mix(in srgb,var(--pq-accent,#b48a3c) 16%,transparent);font-weight:700;font-size:.8rem}
.pq-skill-progress{height:10px;border-radius:999px;background:color-mix(in srgb,var(--pq-ink,#26231d) 12%,transparent);overflow:hidden;margin:.8rem 0}
.pq-skill-progress i{display:block;height:100%;border-radius:inherit;background:var(--pq-accent,#b48a3c)}
@media (max-width:640px){.pq-skill-grid{grid-template-columns:1fr}.pq-progression-summary{align-items:flex-start}}

/* ========================================================================
   v21.45.3 Pewter compact event-driven micro-animation.
   Compact avatars rest forward and only animate for explicit chat events.
   ======================================================================== */
.pq-pewter-mascot[data-pewter-stage="compact"]{
  overflow:hidden!important;
  contain:layout paint;
  animation:none!important;
  transform:none!important;
}
.pq-pewter-mascot[data-pewter-stage="compact"]>.pq-pewter-frame{
  display:none!important;
  opacity:0;
  animation:none!important;
  transform:none!important;
}
.pq-pewter-mascot[data-pewter-stage="compact"]>.pq-pewter-frame-1{
  display:block!important;
  opacity:1;
}
.pq-pewter-mascot[data-pewter-stage="compact"][data-pewter-active="1"]>.pq-pewter-frame{
  display:block!important;
  opacity:0;
  animation-name:pq-pewter-compact-burst!important;
  animation-duration:.88s!important;
  animation-timing-function:linear!important;
  animation-iteration-count:1!important;
  animation-fill-mode:none!important;
}
.pq-pewter-mascot[data-pewter-stage="compact"][data-pewter-active="1"]>.pq-pewter-frame-1{animation-delay:0s!important}
.pq-pewter-mascot[data-pewter-stage="compact"][data-pewter-active="1"]>.pq-pewter-frame-2{animation-delay:.22s!important}
.pq-pewter-mascot[data-pewter-stage="compact"][data-pewter-active="1"]>.pq-pewter-frame-3{animation-delay:.44s!important}
.pq-pewter-mascot[data-pewter-stage="compact"][data-pewter-active="1"]>.pq-pewter-frame-4{animation-delay:.66s!important}
@keyframes pq-pewter-compact-burst{
  0%,24.99%{opacity:1}
  25%,100%{opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .pq-pewter-mascot[data-pewter-stage="compact"][data-pewter-active="1"]>.pq-pewter-frame{display:none!important;animation:none!important;opacity:0!important}
  .pq-pewter-mascot[data-pewter-stage="compact"][data-pewter-active="1"]>.pq-pewter-frame-1{display:block!important;opacity:1!important}
}

/* PQIO v21.45.9: one composer in every desktop and mobile chat state. */
@media (min-width:901px){
  body.pq-chat-active .pq-main{height:100vh!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;}
  body.pq-chat-active .pq-page.pq-chat-page{flex:1 1 auto!important;height:auto!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding-bottom:10px!important;}
  body.pq-chat-active .pq-chat-layout{flex:1 1 auto!important;height:auto!important;min-height:0!important;max-height:none!important;align-items:stretch!important;overflow:hidden!important;}
  body.pq-chat-active .pq-chat-panel,body.pq-chat-active .pq-chat-panel-one-scroll{height:100%!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
  body.pq-chat-active .pq-messages-one-scroll{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;}
  body.pq-chat-active .pq-chat-panel .pq-composer{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;inset:auto!important;flex:0 0 auto!important;margin:0!important;z-index:20!important;background:var(--pq-surface,#212121)!important;}
}
@media (max-width:900px){
  body.pq-chat-active .pq-chat-panel .pq-composer{display:block!important;visibility:visible!important;opacity:1!important;flex:0 0 auto!important;}
}


/* PQIO v21.45.10: quieter Pewter onboarding, compact navigation, and food quick-add. */
.pq-chat-onboarding-intro{position:relative;}
.pq-chat-onboarding-intro>.pq-pewter-identity{margin-bottom:0;padding-right:78px;}
.pq-chat-onboarding-dismiss{
  position:absolute;
  top:10px;
  right:10px;
  min-height:30px;
  padding:5px 10px;
  border:1px solid var(--pq-line);
  border-radius:999px;
  background:color-mix(in srgb,var(--pq-surface-2) 88%,transparent);
  color:var(--pq-muted);
  font-size:12px;
  font-weight:850;
  cursor:pointer;
}
.pq-chat-onboarding-dismiss:hover,.pq-chat-onboarding-dismiss:focus-visible{color:var(--pq-text);border-color:var(--pq-accent);outline:none;}
.pq-nav-group-items button{display:flex!important;align-items:center!important;gap:9px!important;text-align:left!important;}
.pq-nav-item-icon{display:inline-grid;place-items:center;width:28px;min-width:28px;font-size:18px;line-height:1;}
.pq-nav-link-label{min-width:0;}
.pq-nav-pewter-mascot{--pq-pewter-size:28px!important;width:28px!important;height:28px!important;min-width:28px!important;flex:0 0 28px!important;}
.pq-menu-nav-icon.pq-nav-pewter-mascot{--pq-pewter-size:25px!important;width:25px!important;height:25px!important;min-width:25px!important;}
.pq-menu-icon .pq-nav-item-icon{width:auto;min-width:0;}
.pq-food-quick-add{white-space:nowrap;}
@media(max-width:900px){
  .pq-chat-onboarding-intro{display:none!important;}
}
@media(max-width:620px){
  .pq-food-quick-add{flex:1 1 145px;}
}


/* PQIO v21.45.11: fluent Goals workspace and conservative Architect outcomes. */
.pq-goal-workspace{display:grid;gap:var(--pq-section-gap,16px);min-width:0;}
.pq-active-direction{display:grid;gap:12px;}
.pq-goal-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px;align-items:start;min-width:0;}
.pq-goal-card-grid>.pq-goal-card{height:100%;display:flex;flex-direction:column;gap:8px;min-width:0;}
.pq-goal-card-grid>.pq-goal-card>.pq-row:last-child{margin-top:auto;}
.pq-goal-guide{padding:0!important;overflow:hidden;}
.pq-goal-guide>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:14px 16px;list-style:none;}
.pq-goal-guide>summary::-webkit-details-marker{display:none;}
.pq-goal-guide>summary:after{content:'+';font-size:22px;color:var(--pq-accent);}
.pq-goal-guide[open]>summary:after{content:'−';}
.pq-goal-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 16px 16px;}
.pq-goal-guide-grid>div{border:1px solid var(--pq-line);border-radius:12px;padding:12px;background:var(--pq-surface-2);}
.pq-goal-guide-grid p{margin:.35rem 0 0;color:var(--pq-muted);}
.pq-goal-suggestion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px;margin-top:12px;}
.pq-goal-suggestion-grid .pq-recommendation{height:100%;display:flex;flex-direction:column;}
.pq-goal-suggestion-grid .pq-recommendation>.pq-row{margin-top:auto;}
.pq-empty-inline{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.pq-goal-form-backdrop{padding:16px;}
.pq-goal-form-modal{width:min(1120px,calc(100vw - 32px))!important;max-width:1120px!important;height:min(92dvh,960px);max-height:92dvh!important;padding:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
.pq-goal-form-head,.pq-goal-form-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:var(--pq-surface);z-index:2;}
.pq-goal-form-head{border-bottom:1px solid var(--pq-line);}
.pq-goal-form-actions{border-top:1px solid var(--pq-line);}
.pq-goal-form-head h2{margin:0;}
.pq-goal-form-head p{margin:.25rem 0 0;}
.pq-goal-form-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 18px 24px;display:grid;gap:14px;}
.pq-goal-form-section{border:1px solid var(--pq-line);border-radius:16px;padding:14px;background:var(--pq-surface-2);min-width:0;}
.pq-goal-form-section>h3{margin:0 0 10px;color:var(--pq-accent);}
.pq-goal-form-section label{display:grid;gap:6px;color:var(--pq-text);font-weight:800;min-width:0;}
.pq-goal-form-core{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.pq-goal-wide-field{grid-column:1/-1;}
.pq-goal-form-fields{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;}
.pq-goal-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.pq-goal-member-picker{border:1px solid var(--pq-line);border-radius:14px;padding:10px;margin:0;min-width:0;background:var(--pq-surface);}
.pq-goal-member-picker legend{padding:0 6px;font-weight:900;color:var(--pq-text);}
.pq-goal-member-grid{display:flex;flex-wrap:wrap;gap:7px;max-height:180px;overflow:auto;padding:3px;}
.pq-goal-member-chip{display:inline-flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:6px!important;margin:0!important;padding:7px 10px;border:1px solid var(--pq-line);border-radius:999px;background:var(--pq-surface-2);cursor:pointer;font-size:12px;}
.pq-goal-member-chip.active{border-color:var(--pq-accent);background:var(--pq-accent-soft);}
.pq-goal-member-chip input{margin:0;}
.pq-goal-selected-links{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 10px;}
.pq-goal-selected-links button{border:1px solid var(--pq-accent);border-radius:999px;background:var(--pq-accent-soft);color:var(--pq-text);padding:6px 10px;cursor:pointer;font-weight:800;}
.pq-goal-questline-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;max-height:330px;overflow:auto;overscroll-behavior:contain;padding-right:4px;}
.pq-goal-questline-option{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:start;gap:9px!important;margin:0!important;border:1px solid var(--pq-line);border-radius:12px;padding:10px;background:var(--pq-surface);cursor:pointer;}
.pq-goal-questline-option.selected{border-color:var(--pq-accent);background:var(--pq-accent-soft);}
.pq-goal-questline-option input{margin-top:3px;}
.pq-goal-questline-option span{display:grid;gap:3px;min-width:0;}
.pq-goal-questline-option strong{overflow-wrap:anywhere;}
.pq-goal-questline-option small{color:var(--pq-muted);}
@media(max-width:900px){
  .pq-goal-form-backdrop{padding:0!important;align-items:stretch!important;}
  .pq-goal-form-modal{width:100vw!important;max-width:none!important;height:var(--pq-visual-viewport-height,100dvh)!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;border-radius:0!important;}
  .pq-goal-form-fields{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pq-goal-people-grid{grid-template-columns:1fr;}
  .pq-goal-guide-grid{grid-template-columns:1fr;}
}
@media(max-width:620px){
  .pq-goal-form-core,.pq-goal-form-fields,.pq-goal-questline-picker{grid-template-columns:1fr;}
  .pq-goal-form-head,.pq-goal-form-actions{padding:12px;}
  .pq-goal-form-scroll{padding:12px 12px 20px;}
  .pq-goal-form-actions{align-items:stretch;flex-direction:column;}
  .pq-goal-form-actions>.pq-row{width:100%;}
  .pq-goal-form-actions .pq-btn{flex:1;}
}

/* ========================================================================
   PQIO v21.45.12 - human daily fluency, tutorials, compass, and mobile review
   ======================================================================== */
.pq-tutorial-minimized{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px!important;margin:10px 0!important;background:linear-gradient(120deg,var(--pq-surface),color-mix(in srgb,var(--pq-page-accent-soft) 44%,var(--pq-surface)))!important}
.pq-tutorial-minimized-copy{display:flex;align-items:center;gap:11px;min-width:0}.pq-tutorial-minimized-copy>div{display:grid;gap:2px;min-width:0}.pq-tutorial-minimized-copy small{color:var(--pq-muted);overflow-wrap:anywhere}.pq-tutorial-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:var(--pq-page-accent-soft);font-size:20px}
.pq-tutorial-modal{width:min(720px,calc(100vw - 24px))!important;max-height:min(760px,92dvh)!important;padding:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.pq-tutorial-body{display:grid;justify-items:start;gap:14px}.pq-tutorial-body>p{font-size:1.05rem;line-height:1.55;margin:0}.pq-tutorial-body ul{margin:0;padding-left:1.2rem;display:grid;gap:8px}.pq-tutorial-visual{display:grid;place-items:center;width:72px;height:72px;border-radius:24px;background:var(--pq-page-accent-soft);font-size:36px}.pq-tutorial-action{margin-top:4px}
.pq-personal-compass{border-color:color-mix(in srgb,var(--pq-page-accent) 42%,var(--pq-line))!important;background:linear-gradient(145deg,color-mix(in srgb,var(--pq-page-accent-soft) 58%,var(--pq-surface)),var(--pq-surface))!important}.pq-personal-compass h2{margin:.1rem 0 .35rem}.pq-compass-details{margin-top:12px;border-top:1px solid var(--pq-line);padding-top:10px}.pq-compass-details>summary{cursor:pointer;font-weight:900}.pq-compass-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:12px}.pq-compass-group{display:grid;gap:7px;padding:11px;border:1px solid var(--pq-line);border-radius:14px;background:var(--pq-surface-2)}.pq-compass-chips{display:flex;flex-wrap:wrap;gap:6px}.pq-compass-modal{width:min(860px,calc(100vw - 24px))!important;max-height:92dvh!important;padding:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.pq-compass-modal .pq-modal-scroll-body{display:grid;gap:13px}.pq-compass-modal label{display:grid;gap:6px;font-weight:850}.pq-compass-modal textarea{min-height:86px}
.pq-capacity-tap-grid{display:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.pq-capacity-tap-grid button{min-width:0;border:1px solid var(--pq-line);border-radius:13px;background:var(--pq-surface);color:var(--pq-text);padding:10px 5px;display:grid;gap:2px;place-items:center;cursor:pointer}.pq-capacity-tap-grid button.active{border-color:var(--pq-page-accent);background:var(--pq-page-accent-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--pq-page-accent) 25%,transparent)}.pq-capacity-tap-grid small{font-size:10px;color:var(--pq-muted)}
.pq-daily-modal{width:min(820px,calc(100vw - 24px))!important;max-height:92dvh!important;padding:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.pq-daily-modal-body{display:grid;gap:13px}.pq-daily-modal-actions{justify-content:flex-end}.pq-daily-backdrop{overscroll-behavior:contain}
.pq-streak-backdrop{z-index:2147483200!important}.pq-streak-celebration{width:min(420px,calc(100vw - 32px));display:grid;justify-items:center;text-align:center;gap:8px;padding:26px;border:1px solid var(--pq-page-accent);border-radius:28px;background:radial-gradient(circle at 50% 10%,var(--pq-page-accent-soft),var(--pq-surface) 62%);box-shadow:0 30px 90px #000b}.pq-streak-flame{font-size:40px;animation:pq-streak-pop .5s ease-out both}.pq-streak-number{font-family:var(--pq-font-title);font-size:clamp(4rem,20vw,7rem);line-height:.85;color:var(--pq-page-accent);animation:pq-streak-count .65s cubic-bezier(.2,.9,.2,1.2) both}.pq-streak-celebration h2{margin:.25rem 0 0}.pq-streak-celebration p{margin:.2rem 0 1rem;color:var(--pq-muted)}
@keyframes pq-streak-pop{0%{transform:scale(.4) rotate(-12deg);opacity:0}70%{transform:scale(1.15) rotate(4deg)}100%{transform:scale(1)}}@keyframes pq-streak-count{0%{transform:translateY(22px) scale(.65);opacity:0}100%{transform:none;opacity:1}}
.pq-review-complete{display:inline-flex!important;align-items:center;gap:7px;margin-top:8px;padding:6px 9px!important;border:1px solid var(--pq-line);border-radius:999px;background:var(--pq-surface-2);width:auto!important}.pq-review-complete>span:last-child{display:flex;align-items:center;gap:6px}.pq-review-complete small{color:var(--pq-muted)}
/* The full nutrition map is intentionally compact enough that Food, Meal, and Macro remain near one another. */
@media(max-width:900px){.pq-sankey-desktop-canvas{grid-template-columns:900px 64px!important;min-width:976px!important}.pq-sankey-desktop-canvas .pq-sankey-svg{width:900px!important;min-width:900px!important}.pq-sankey-desktop-canvas .pq-sankey-percent{width:64px!important;min-width:64px!important}.pq-sankey-scroll-stage.mobile-open .pq-sankey-desktop-canvas{grid-template-columns:900px 64px!important;min-width:976px!important}.pq-sankey-scroll-stage.mobile-open .pq-sankey-svg{width:900px!important;min-width:900px!important}}
@media(max-width:700px){
  .pq-tutorial-minimized{align-items:stretch;flex-direction:column}.pq-tutorial-minimized .pq-btn{width:100%}.pq-tutorial-modal,.pq-compass-modal,.pq-daily-modal{width:100vw!important;max-width:100vw!important;height:var(--pq-visual-viewport-height,100dvh)!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;border-radius:0!important}
  .pq-capacity-tap-grid{display:grid}.pq-capacity-desktop-range{display:none}.pq-capacity-field{padding:12px!important;margin:0;min-width:0}.pq-capacity-field legend{font-weight:900;padding:0 4px}.pq-capacity-tap-grid button{min-height:58px}.pq-work-style-picker{display:grid;grid-template-columns:1fr;margin:.25rem 0}.pq-work-style-picker label{border-radius:14px;min-height:48px}.pq-daily-modal-body{padding-bottom:24px!important;overflow-y:auto!important;overscroll-behavior:contain}.pq-daily-modal-actions{position:sticky!important;bottom:0!important;z-index:5!important;padding-bottom:calc(12px + env(safe-area-inset-bottom) + 64px)!important;background:var(--pq-surface)!important}.pq-daily-modal-actions .pq-btn{min-height:50px}.pq-daily-backdrop{padding:0!important;align-items:stretch!important}
  .pq-compass-grid{grid-template-columns:1fr}.pq-personal-compass>.pq-row{align-items:stretch}.pq-personal-compass>.pq-row>.pq-row{width:100%}.pq-personal-compass>.pq-row>.pq-row .pq-btn{flex:1}
  .pq-food-preview .pq-edit-table{display:block;width:100%;border-collapse:separate}.pq-food-preview .pq-edit-table thead{display:none}.pq-food-preview .pq-edit-table tbody{display:grid;gap:12px}.pq-food-preview .pq-edit-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid var(--pq-line);border-radius:16px;padding:11px;background:var(--pq-surface)}.pq-food-preview .pq-edit-table td{display:grid;gap:4px;border:0!important;padding:0!important;min-width:0}.pq-food-preview .pq-edit-table td:before{content:attr(data-label);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--pq-muted)}.pq-food-preview .pq-edit-table td[data-label="Ingredient"],.pq-food-preview .pq-edit-table td[data-label="Dish"],.pq-food-preview .pq-edit-table td[data-label="Remove"]{grid-column:1/-1}.pq-food-preview .pq-edit-table td[data-label="Use"]{grid-column:1;display:flex;align-items:center;justify-content:space-between}.pq-food-preview .pq-edit-table td[data-label="Use"]:before{margin-right:auto}.pq-food-preview .pq-food-qty-edit{grid-template-columns:minmax(70px,1fr) minmax(80px,1fr)}.pq-food-preview .pq-food-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pq-food-preview .pq-food-tools label{grid-column:1/-1}.pq-food-preview .pq-food-confirm-actions{position:sticky;bottom:calc(66px + env(safe-area-inset-bottom));z-index:3;padding:10px;margin:10px -10px -10px;background:color-mix(in srgb,var(--pq-surface) 94%,transparent);backdrop-filter:blur(10px)}.pq-food-preview .pq-food-confirm-actions .pq-btn{flex:1}.pq-food-preview .pq-food-confirm-actions .pq-muted{width:100%}
}
@media(prefers-reduced-motion:reduce){.pq-streak-flame,.pq-streak-number{animation:none!important}.pq-streak-celebration{scroll-behavior:auto!important}}


/* v21.45.12.2: keep the streak acknowledgement above mobile chrome and always dismissible. */
body.pq-streak-open{overflow:hidden!important;overscroll-behavior:none!important}
body.pq-streak-open .pq-bottom-nav{display:none!important;visibility:hidden!important;pointer-events:none!important}
.pq-streak-backdrop{place-items:center!important;align-items:center!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))!important}
.pq-streak-celebration{max-height:calc(100dvh - max(32px,env(safe-area-inset-top)) - max(32px,env(safe-area-inset-bottom)))!important;overflow-y:auto!important;overscroll-behavior:contain!important}
.pq-streak-celebration .pq-streak-continue{min-height:50px;min-width:150px}
@media(max-width:760px){
  .pq-streak-backdrop{padding:calc(12px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left))!important}
  .pq-streak-celebration{width:min(420px,100%)!important;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;padding:18px 16px 14px!important;border-radius:22px!important}
  .pq-streak-celebration .pq-streak-continue{position:sticky!important;bottom:0!important;width:100%!important;min-height:54px!important;margin-top:4px!important;z-index:2!important;box-shadow:0 -10px 24px color-mix(in srgb,var(--pq-surface) 88%,transparent)!important}
}


/* v21.45.12.3 - compact Pewter review and touch-safe Questlog modals */
.pq-pewter-action-sheet{grid-template-rows:auto minmax(0,1fr) auto!important}
.pq-pewter-review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.pq-compact-action-list{display:grid;gap:9px}
.pq-compact-action-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;border:1px solid var(--pq-line);border-radius:14px;padding:11px;background:color-mix(in srgb,var(--pq-surface) 88%,transparent)}
.pq-compact-action-row.applied{opacity:.72}.pq-compact-action-row.blocked{border-style:dashed;opacity:.72}
.pq-compact-action-check{padding-top:3px}.pq-compact-action-check input{position:absolute;opacity:0;pointer-events:none}
.pq-compact-action-copy{min-width:0}.pq-compact-action-copy strong{display:block;font-size:15px;line-height:1.25;margin-top:2px;overflow-wrap:anywhere}
.pq-compact-action-type{display:block;color:var(--pq-muted);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.pq-compact-action-hierarchy{display:block;color:var(--pq-muted);margin-top:5px;overflow-wrap:anywhere}
.pq-compact-action-meta,.pq-pewter-action-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.pq-compact-action-meta span,.pq-pewter-action-meta span{border:1px solid var(--pq-line);border-radius:999px;padding:3px 7px;font-size:11px;color:var(--pq-muted)}
.pq-link-button{border:0;background:transparent;color:var(--pq-accent);padding:7px 0 0;font:inherit;font-weight:800;cursor:pointer;text-align:left}
.pq-compact-action-details{margin-top:8px;padding-top:8px;border-top:1px solid var(--pq-line)}.pq-compact-action-details p{margin:6px 0}.pq-action-overflow{margin-top:6px}.pq-action-overflow summary{cursor:pointer;color:var(--pq-muted);font-size:12px}
.pq-pewter-review-footer{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:13px 20px calc(13px + env(safe-area-inset-bottom));border-top:1px solid var(--pq-line);background:color-mix(in srgb,var(--pq-surface) 97%,transparent);box-shadow:0 -10px 28px rgba(0,0,0,.22);z-index:8}
.pq-pewter-review-footer .pq-btn{min-width:140px;justify-content:center}
.pq-pewter-orchestration>summary{cursor:pointer;list-style:none}.pq-pewter-orchestration>summary::-webkit-details-marker{display:none}.pq-pewter-orchestration-body{display:grid;gap:8px;margin-top:8px}.pq-pewter-context-summary{color:var(--pq-muted);font-size:11px;margin-left:auto}
.pq-questlog-choice-modal,.pq-questlog-confirm-modal{padding:0!important;overflow:hidden!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto;max-height:min(88dvh,820px)!important}
.pq-questlog-choice-modal .pq-modal-scroll-body,.pq-questlog-confirm-modal .pq-modal-scroll-body{overflow:auto;overscroll-behavior:contain;padding:16px 20px;min-height:0}
.pq-questlog-choice-modal .pq-picker-list{max-height:none!important;overflow:visible!important;margin-top:12px}
.pq-questlog-choice-modal .pq-modal-sticky-actions,.pq-questlog-confirm-modal .pq-modal-sticky-actions{position:static!important;margin:0!important}

@media(max-width:760px){
  .pq-pewter-action-sheet>.pq-overlay-sheet-body{padding:10px!important}
  .pq-pewter-review-toolbar>.pq-muted{width:100%}.pq-pewter-review-toolbar .pq-row{width:100%}.pq-pewter-review-toolbar .pq-btn{flex:1 1 0;justify-content:center}
  .pq-compact-action-row{padding:10px;border-radius:12px}.pq-compact-action-copy .pq-pill{font-size:10px}
  .pq-pewter-review-footer{padding:9px 10px calc(9px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:7px}
  .pq-pewter-review-footer .pq-btn{min-width:0;width:100%;padding-inline:8px}
  .pq-pewter-orchestration{padding:8px!important}.pq-pewter-orchestration:not([open]){margin-block:5px!important}.pq-pewter-orchestration:not([open]) .pq-pewter-orchestration-top{margin:0!important}.pq-pewter-context-summary{max-width:48%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pq-questlog-modal-backdrop{padding:0!important;align-items:stretch!important;z-index:1300!important}
  .pq-questlog-choice-modal,.pq-questlog-confirm-modal{width:100vw!important;max-width:100vw!important;height:var(--pq-visual-viewport-height,100dvh)!important;max-height:none!important;border-radius:0!important;border-inline:0!important}
  .pq-questlog-choice-modal .pq-modal-sticky-head,.pq-questlog-confirm-modal .pq-modal-sticky-head{padding:max(12px,env(safe-area-inset-top)) 14px 12px!important}
  .pq-questlog-choice-modal .pq-modal-scroll-body,.pq-questlog-confirm-modal .pq-modal-scroll-body{padding:14px!important}
  .pq-questlog-choice-modal .pq-modal-sticky-actions,.pq-questlog-confirm-modal .pq-modal-sticky-actions{padding:10px 14px calc(10px + env(safe-area-inset-bottom))!important;display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
  .pq-questlog-choice-modal .pq-modal-sticky-actions .pq-btn,.pq-questlog-confirm-modal .pq-modal-sticky-actions .pq-btn{width:100%;justify-content:center}
  .pq-confirm-modal p{font-size:18px;line-height:1.35}
}

/* v21.45.14.0 - Pewter read-aloud, pre-send participants, and AI cost observability */
.pq-msg-tools{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:9px;border-top:1px solid color-mix(in srgb,var(--pq-line) 76%,transparent)}
.pq-read-aloud{appearance:none;border:1px solid var(--pq-line);border-radius:999px;background:color-mix(in srgb,var(--pq-surface) 88%,transparent);color:var(--pq-text);min-height:40px;padding:8px 13px;font:inherit;font-size:13px;font-weight:850;cursor:pointer;touch-action:manipulation}
.pq-read-aloud:hover,.pq-read-aloud:focus-visible{border-color:var(--pq-accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--pq-accent) 20%,transparent)}
.pq-read-aloud.is-reading{color:var(--pq-accent-contrast,#fff);background:var(--pq-accent);border-color:var(--pq-accent)}
.pq-ai-cost-controls{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}.pq-ai-cost-controls label{min-width:180px}
.pq-ai-cost-stats .pq-card{display:grid;gap:5px}.pq-ai-cost-stats .pq-card>span{color:var(--pq-muted);font-weight:750}.pq-ai-cost-stats .pq-card>strong{font-size:clamp(1.45rem,3vw,2.2rem);overflow-wrap:anywhere}.pq-ai-cost-stats small{color:var(--pq-muted)}
.pq-ai-token-summary .pq-mini-ledger{display:flex;gap:9px;flex-wrap:wrap}.pq-ai-token-summary .pq-mini-ledger span{border:1px solid var(--pq-line);border-radius:999px;padding:6px 9px}
.pq-table-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.pq-table-scroll .pq-table{min-width:760px;width:100%;border-collapse:collapse}.pq-ai-cost-table{min-width:1180px!important}
.pq-table-scroll .pq-table th,.pq-table-scroll .pq-table td{padding:9px 10px;border-bottom:1px solid var(--pq-line);text-align:left;vertical-align:top;white-space:nowrap}.pq-table-scroll .pq-table th{position:sticky;top:0;background:var(--pq-surface);z-index:1;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--pq-muted)}
.pq-table .positive{color:var(--pq-success,#4fc68a);font-weight:800}.pq-table .negative,.pq-ai-cost-stats .negative{color:var(--pq-danger,#ef6b73);font-weight:800}.pq-ai-cost-lower{align-items:start}
@media(max-width:760px){
  .pq-msg-tools{margin-top:10px}.pq-read-aloud{min-height:44px;padding:9px 14px}
  .pq-ai-cost-controls{align-items:stretch}.pq-ai-cost-controls label{width:100%}.pq-ai-cost-stats{grid-template-columns:1fr 1fr!important}.pq-ai-cost-lower{grid-template-columns:1fr!important}
}
@media(max-width:430px){.pq-ai-cost-stats{grid-template-columns:1fr!important}}

/* v21.46.0.0 - public growth foundation and Treasury experience */
.pq-public-site{min-height:100vh;background:radial-gradient(circle at 85% 2%,color-mix(in srgb,var(--pq-accent,var(--pq-gold)) 15%,transparent),transparent 34%),var(--pq-bg);color:var(--pq-text)}
.pq-public-header{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr);align-items:center;gap:18px;padding:14px clamp(18px,4vw,56px);border-bottom:1px solid color-mix(in srgb,var(--pq-line) 80%,transparent);background:color-mix(in srgb,var(--pq-bg) 92%,transparent);backdrop-filter:blur(18px)}
.pq-public-brand{display:flex;align-items:center;gap:11px;border:0;background:transparent;color:var(--pq-text);padding:0;text-align:left;cursor:pointer;justify-self:start}.pq-public-brand .pq-pewter-mark{width:42px;height:42px}.pq-public-brand strong,.pq-public-brand small{display:block}.pq-public-brand strong{font-family:var(--pq-font-title);color:var(--pq-accent,var(--pq-gold));font-size:18px}.pq-public-brand small{color:var(--pq-muted);font-size:11px;margin-top:2px}
.pq-public-nav{display:flex;gap:4px;align-items:center;justify-content:center}.pq-public-nav button,.pq-public-footer button{border:0;background:transparent;color:var(--pq-muted);padding:10px 11px;border-radius:999px;cursor:pointer;font-weight:750}.pq-public-nav button:hover,.pq-public-nav button.active,.pq-public-footer button:hover{color:var(--pq-text);background:color-mix(in srgb,var(--pq-panel-2) 90%,transparent)}
.pq-public-auth-actions{display:flex;gap:9px;justify-content:flex-end;align-items:center}.pq-public-main{overflow:hidden}.pq-public-hero{min-height:620px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:clamp(30px,6vw,90px);padding:clamp(70px,10vw,140px) clamp(20px,7vw,110px);max-width:1500px;margin:auto}.pq-public-hero-copy{max-width:810px}.pq-public-hero h1{font-family:var(--pq-font-title);font-size:clamp(42px,6vw,80px);line-height:1.02;letter-spacing:-.035em;margin:14px 0 24px;color:var(--pq-text)}.pq-public-hero h2{font-size:clamp(22px,3vw,36px);line-height:1.2;margin:0 0 18px;color:var(--pq-accent,var(--pq-gold))}.pq-public-hero-copy>p{font-size:clamp(18px,2vw,23px);line-height:1.55;color:color-mix(in srgb,var(--pq-text) 82%,var(--pq-muted));max-width:760px}.pq-public-hero-actions{margin-top:28px}.pq-public-hero-art{display:grid;place-items:center;position:relative;min-height:360px;border:1px solid color-mix(in srgb,var(--pq-line) 70%,transparent);border-radius:42px;background:radial-gradient(circle at center,color-mix(in srgb,var(--pq-accent,var(--pq-gold)) 15%,transparent),transparent 68%)}.pq-public-hero-art .pq-pewter-mascot{filter:drop-shadow(0 30px 40px rgba(0,0,0,.45))}.pq-public-hero-fates{position:absolute;left:18px;right:18px;bottom:18px;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.pq-public-hero-fates span{border:1px solid var(--pq-line);border-radius:999px;padding:6px 10px;background:color-mix(in srgb,var(--pq-bg) 82%,transparent);font-size:12px;color:var(--pq-muted)}
.pq-public-section{padding:clamp(54px,8vw,105px) clamp(20px,7vw,110px);max-width:1500px;margin:auto}.pq-public-section-head{max-width:820px;margin-bottom:28px}.pq-public-section-head h2,.pq-public-cta h2{font-family:var(--pq-font-title);font-size:clamp(32px,4vw,55px);line-height:1.08;margin:10px 0 14px}.pq-public-section-head p,.pq-public-cta p{font-size:18px;line-height:1.55;color:var(--pq-muted)}.pq-public-content-grid{display:grid;gap:18px}.pq-public-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pq-public-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pq-public-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.pq-public-content-card{border:1px solid var(--pq-line);border-radius:24px;padding:clamp(20px,3vw,32px);background:linear-gradient(145deg,color-mix(in srgb,var(--pq-panel) 95%,transparent),color-mix(in srgb,var(--pq-panel-2) 92%,transparent));min-height:100%}.pq-public-content-card h3{font-size:clamp(20px,2.4vw,30px);line-height:1.18;margin:11px 0}.pq-public-content-card p,.pq-public-content-card li{color:var(--pq-muted);line-height:1.55}.pq-public-content-card ul{padding-left:20px}.pq-public-card-action{margin-top:20px}.pq-public-cta{margin-block:36px 90px;border:1px solid color-mix(in srgb,var(--pq-accent,var(--pq-gold)) 45%,var(--pq-line));border-radius:32px;background:linear-gradient(135deg,color-mix(in srgb,var(--pq-accent,var(--pq-gold)) 12%,var(--pq-panel)),var(--pq-panel));text-align:center}.pq-public-cta .pq-row{justify-content:center}
.pq-public-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.pq-public-plan{border:1px solid var(--pq-line);border-radius:28px;padding:clamp(22px,4vw,38px);background:var(--pq-panel)}.pq-public-plan h3{font-family:var(--pq-font-title);font-size:clamp(30px,4vw,46px);margin:10px 0}.pq-public-plan>div>p{color:var(--pq-muted);font-size:17px;line-height:1.5}.pq-public-plan-facts{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.pq-public-plan-facts span{border:1px solid var(--pq-line);border-radius:999px;padding:6px 10px;color:var(--pq-muted);font-size:13px}.pq-public-plan-options{display:grid;gap:9px;margin:22px 0}.pq-public-plan-options button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:18px;text-align:left;border:1px solid var(--pq-line);border-radius:15px;background:var(--pq-panel-2);color:var(--pq-text);padding:14px 16px;cursor:pointer}.pq-public-plan-options button:hover{border-color:var(--pq-accent,var(--pq-gold))}.pq-public-plan-options span,.pq-public-plan-options strong,.pq-public-plan-options small{display:block}.pq-public-plan-options small{color:var(--pq-muted);margin-top:3px}.pq-public-plan-options b{white-space:nowrap;color:var(--pq-accent,var(--pq-gold))}
.pq-public-footer{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;padding:34px clamp(20px,7vw,110px);border-top:1px solid var(--pq-line);background:var(--pq-panel)}.pq-public-footer p{color:var(--pq-muted);max-width:600px;margin:7px 0 0}.pq-public-footer-links{display:flex;gap:4px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.pq-public-footer a{color:var(--pq-muted);padding:10px;text-decoration:none}.pq-public-footer a:hover{color:var(--pq-text)}.pq-public-loading{min-height:65vh;display:grid;place-items:center;align-content:center;gap:15px}.pq-marketing-consent{position:fixed;z-index:120;left:18px;right:18px;bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1050px;margin:auto;padding:18px 20px;border:1px solid var(--pq-line);border-radius:22px;background:color-mix(in srgb,var(--pq-panel) 96%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.55);backdrop-filter:blur(18px)}.pq-marketing-consent p{color:var(--pq-muted);margin:5px 0 0}.pq-registered-adventurer-hero{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:22px}.pq-registered-adventurer-next{border-style:dashed}
.pq-treasury-tabs{grid-template-columns:repeat(5,minmax(110px,1fr));overflow-x:auto;overscroll-behavior-inline:contain}.pq-treasury-section{display:grid;gap:3px}.pq-treasury-hero{display:flex;justify-content:space-between;align-items:center;gap:25px;background:linear-gradient(135deg,color-mix(in srgb,var(--pq-accent,var(--pq-gold)) 12%,var(--pq-panel)),var(--pq-panel))}.pq-treasury-hero h2{font-family:var(--pq-font-title);font-size:clamp(38px,6vw,68px);margin:7px 0}.pq-treasury-hero-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.pq-treasury-capabilities{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:16px}.pq-treasury-capability{display:grid;gap:5px;border:1px solid var(--pq-line);border-radius:17px;padding:16px;background:var(--pq-panel-2)}.pq-treasury-capability strong{font-size:27px;color:var(--pq-accent,var(--pq-gold))}.pq-treasury-capability span{font-weight:800}.pq-treasury-capability small{color:var(--pq-muted);line-height:1.35}.pq-treasury-breakdown{display:grid;gap:7px;margin-top:14px}.pq-treasury-breakdown span{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--pq-line);padding:7px 0;color:var(--pq-muted)}.pq-treasury-breakdown b{color:var(--pq-text)}.pq-treasury-plan{display:flex;flex-direction:column}.pq-treasury-plan-head{flex:1}.pq-treasury-plan h3{font-family:var(--pq-font-title);font-size:36px;margin:8px 0}.pq-treasury-plan-price{display:block;font-size:25px;color:var(--pq-accent,var(--pq-gold));margin-bottom:5px}.pq-treasury-plan-facts{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.pq-treasury-plan-facts span{border:1px solid var(--pq-line);border-radius:999px;padding:6px 9px;font-size:12px;color:var(--pq-muted)}.pq-trading-post-card,.pq-support-card{min-height:270px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--pq-accent,var(--pq-gold)) 14%,transparent),transparent 48%),var(--pq-panel)}.pq-trading-post-card>div,.pq-support-card>div{max-width:780px}.pq-trading-post-card h2,.pq-support-card h2{font-family:var(--pq-font-title);font-size:clamp(34px,5vw,56px);margin:9px 0}.pq-wallet-recent-row>.positive,.pq-wallet-recent-row>.negative{font-size:16px}.pq-wallet-recent-row>.positive{color:var(--pq-success,#4fc68a)}.pq-wallet-recent-row>.negative{color:var(--pq-danger,#ef6b73)}
@media(max-width:1050px){.pq-public-header{grid-template-columns:1fr auto}.pq-public-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;overflow-x:auto}.pq-public-hero{grid-template-columns:1fr;min-height:0}.pq-public-hero-art{min-height:320px}.pq-public-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.pq-public-header{position:relative;grid-template-columns:1fr;gap:12px;padding:13px 16px}.pq-public-brand{justify-self:center}.pq-public-nav{grid-column:auto;grid-row:auto;width:100%;justify-content:flex-start;padding-bottom:2px}.pq-public-auth-actions{justify-content:center}.pq-public-auth-actions .pq-btn{flex:1}.pq-public-hero{padding:48px 17px;gap:28px}.pq-public-hero h1{font-size:clamp(38px,12vw,57px)}.pq-public-hero-copy>p{font-size:17px}.pq-public-hero-art{min-height:280px;border-radius:28px}.pq-public-section{padding:48px 17px}.pq-public-grid-2,.pq-public-grid-3,.pq-public-grid-4,.pq-public-pricing-grid{grid-template-columns:1fr}.pq-public-footer{grid-template-columns:1fr;padding:28px 17px}.pq-public-footer-links{justify-content:flex-start}.pq-marketing-consent{display:grid;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));padding:15px}.pq-marketing-consent .pq-btn{flex:1}.pq-registered-adventurer-hero{grid-template-columns:1fr;text-align:center}.pq-treasury-tabs{display:flex!important;grid-template-columns:none!important;padding:6px!important}.pq-treasury-tabs .pq-store-tab{min-width:128px}.pq-treasury-hero,.pq-trading-post-card,.pq-support-card{display:grid;align-items:start}.pq-treasury-hero-actions{justify-content:flex-start}.pq-treasury-hero-actions .pq-btn{flex:1}.pq-trading-post-card .pq-btn,.pq-support-card .pq-btn{width:100%}.pq-treasury-plan h3{font-size:30px}}

/* ========================================================================
   v21.46.1.0 - account credential state, bug reporting, safe mobile actions
   ======================================================================== */
.pq-password-setup-step{display:grid;gap:10px;padding:12px;border:1px solid var(--pq-line);border-radius:14px;background:var(--pq-surface-2)}
.pq-bug-report-form{display:grid;gap:16px;max-width:860px}.pq-bug-report-form .pq-field{display:grid;gap:7px}.pq-bug-diagnostics{padding:12px 14px;border:1px solid var(--pq-line);border-radius:14px;background:var(--pq-surface-2)}.pq-bug-diagnostics p{margin:.35rem 0 0}.pq-bug-reference{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pq-bug-reference strong{font-size:1.15rem}
.pq-nav-customizer{display:grid;gap:12px}.pq-nav-custom-group{border:1px solid var(--pq-line);border-radius:16px;background:var(--pq-surface-2);overflow:hidden}.pq-nav-custom-group-head,.pq-nav-custom-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px}.pq-nav-custom-group-head{border-bottom:1px solid var(--pq-line);background:var(--pq-surface)}.pq-nav-custom-items{display:grid}.pq-nav-custom-item+.pq-nav-custom-item{border-top:1px solid var(--pq-line)}.pq-nav-custom-item>span:first-child{display:flex;align-items:center;gap:9px;min-width:0}.pq-nav-custom-controls{display:flex;gap:6px;flex:0 0 auto}.pq-nav-custom-controls .pq-btn{min-width:38px;padding:7px 10px}
.pq-table-tools{display:flex;justify-content:flex-end;gap:8px;margin:0 0 8px}.pq-sort-header{appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-weight:850;padding:0;cursor:pointer;white-space:nowrap}.pq-sort-header:hover,.pq-sort-header:focus-visible{color:var(--pq-page-accent,var(--pq-accent));outline:none;text-decoration:underline}.pq-sortable-table th{white-space:nowrap}

@media(max-width:700px){
  .pq-modal-backdrop{height:var(--pq-visual-viewport-height,100dvh)!important;max-height:var(--pq-visual-viewport-height,100dvh)!important;overflow:hidden!important;padding-bottom:max(0px,env(safe-area-inset-bottom))!important}
  .pq-modal{max-height:var(--pq-visual-viewport-height,100dvh)!important}
  .pq-goal-form-actions{position:relative!important;z-index:20!important;flex:0 0 auto!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important;box-shadow:0 -12px 28px rgba(0,0,0,.34)!important}
  .pq-goal-form-scroll{min-height:0!important;flex:1 1 auto!important;overflow-y:auto!important;padding-bottom:32px!important}
  .pq-nav-custom-item{align-items:flex-start}.pq-nav-custom-controls .pq-btn{min-width:44px;min-height:44px}
  .pq-table-tools{justify-content:stretch}.pq-table-tools .pq-btn{width:100%}
}

/* v21.46.1.0 public mobile navigation / member-aware pricing polish */
.pq-public-menu-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--pq-line);border-radius:13px;background:var(--pq-panel-2);color:var(--pq-text);font-size:25px;line-height:1;cursor:pointer}
.pq-public-plan-options button:disabled{cursor:not-allowed;opacity:.62}
@media(max-width:760px){
  .pq-public-header{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important}
  .pq-public-brand{justify-self:start!important;min-width:0}.pq-public-brand small{display:none}
  .pq-public-menu-toggle{display:flex}
  .pq-public-nav,.pq-public-auth-actions{display:none!important;grid-column:1/-1;width:100%}
  .pq-public-nav.open{display:grid!important;gap:4px;padding:8px 0 2px;overflow:visible!important}
  .pq-public-nav.open button{width:100%;text-align:left;padding:12px 14px;border-radius:12px}
  .pq-public-auth-actions.open{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;padding-top:4px}
  .pq-public-auth-actions.open .pq-btn{width:100%;min-height:46px}
}


/* v21.46.1.2: reachable mobile actions, password visibility, and bug history. */
.pq-password-field-wrap{position:relative;display:block;width:100%}
.pq-password-field-wrap>.pq-input{padding-right:68px}
.pq-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);min-width:52px;min-height:36px;border:0;background:transparent;color:var(--pq-accent,#f59e0b);font:inherit;font-weight:700;cursor:pointer}
.pq-password-toggle:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:8px}
.pq-bug-report-list{display:grid;gap:12px}
.pq-bug-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.pq-bug-report-head h3{margin:.2rem 0 .35rem}
.pq-bug-report-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.pq-bug-public-update,.pq-bug-resolution{margin-top:12px;padding-top:12px;border-top:1px solid var(--pq-border,rgba(255,255,255,.12))}
.pq-bug-public-update p,.pq-bug-resolution p{margin:.35rem 0 0}

@media (max-width:680px){
  /* Angela regression: the form is constrained to the visual viewport; the
     long body is the only scrolling region and actions cannot be covered by
     ProjectQuest's bottom nav or the phone safe area. */
  .pq-goal-form-modal{max-height:var(--pq-visual-viewport-height,100dvh)!important;height:var(--pq-visual-viewport-height,100dvh)!important;overflow:hidden!important}
  .pq-goal-form-modal form{display:grid!important;grid-template-rows:minmax(0,1fr) auto!important;min-height:0!important;max-height:100%!important;overflow:hidden!important}
  .pq-goal-form-scroll{min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch;padding-bottom:16px!important}
  .pq-goal-form-actions{position:relative!important;inset:auto!important;z-index:20!important;flex:0 0 auto!important;margin:0!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important;background:var(--pq-surface,#111)!important}
  .pq-goal-form-actions .pq-btn{min-height:50px!important}
  body.pq-modal-open .pq-bottom-nav{display:none!important;visibility:hidden!important;pointer-events:none!important}
  .pq-bug-report-head{display:grid}
  .pq-bug-report-badges{justify-content:flex-start}
}
