/* Aurora palette + motion for the cabinet — 2026-10-28. Loaded after cabinet.css. */
:root,:root[data-theme="light"]{
  --bg:#f3faf6;--grid:#f3faf6;--panel:#fff;--panel2:#eaf6f0;
  --ink:#0e2420;--muted:#5b6f69;--faint:#6b7f78;--line:#d4e5de;
  --accent:#0b7a5a;--accent-ink:#0b7a5a;--accent-bg:#dcf3e9;--on-accent:#fff;
  --good:#0b7a5a;--good-bg:#dcf3e9;--violet:#0b7a5a;
  --deep:#06201f;--mint:#34e5a8;
  --shadow:0 2px 5px #06201f05,0 10px 28px #06201f08;
}
:root[data-theme="dark"]{
  --bg:#061413;--grid:#061413;--panel:#0b1f1d;--panel2:#0f2a27;
  --ink:#e3f5ee;--muted:#93b3a8;--faint:#7f9e94;--line:#1c3a35;
  --accent:#5bebb8;--accent-ink:#5bebb8;--accent-bg:#123a33;--on-accent:#04211b;
  --good:#5bebb8;--good-bg:#123a33;--violet:#5bebb8;--deep:#06201f;--mint:#34e5a8;
  --shadow:0 2px 5px #00000020,0 10px 28px #00000030;
}
::selection{background:#34e5a8;color:#04211b}

.primary,.refresh,.auth #auth-submit,.admin-card button[type="submit"],.session-status button{border-color:#2bd39a;background:#34e5a8;color:#04211b;box-shadow:0 6px 20px #34e5a830}
.primary:hover,.refresh:hover,.auth #auth-submit:hover{background:#4ff0b8;box-shadow:0 10px 28px #34e5a855;transform:translateY(-1px)}
.source-list input{accent-color:#0b7a5a}

.home-hero{position:relative;overflow:hidden;isolation:isolate;background:#06201f;border-color:#34e5a840;color:#eafbf4}
.home-hero::before{content:"";position:absolute;z-index:-1;width:520px;height:520px;left:-200px;top:-260px;border-radius:50%;background:#34e5a8;opacity:.28;filter:blur(80px);animation:cab-f1 14s ease-in-out infinite}
.home-hero::after{width:300px;height:300px;right:-40px;top:-14px;border:1px solid #34e5a855;background:conic-gradient(from 0deg,#34e5a899,#34e5a815 50deg,transparent 80deg),radial-gradient(circle,#0b3d3a 0,#06201f 70%);box-shadow:0 0 0 34px #34e5a80d,0 0 0 68px #34e5a807,0 0 60px #34e5a826;animation:cab-rot 4.5s linear infinite}
.home-hero .eyebrow{color:#34e5a8}
.home-hero h2{background:linear-gradient(90deg,#eafbf4 0%,#eafbf4 45%,#34e5a8 60%,#ffd27a 75%,#eafbf4 90%);background-size:250% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:cab-sh 7s linear infinite,cab-up .8s cubic-bezier(.2,.8,.2,1) both}
.home-hero p:last-child{color:#9fd9c4;animation:cab-up .8s .15s cubic-bezier(.2,.8,.2,1) both}
@keyframes cab-f1{50%{transform:translate(160px,90px) scale(1.2)}}
@keyframes cab-rot{to{transform:rotate(360deg)}}
@keyframes cab-sh{to{background-position:-250% center}}
@keyframes cab-up{from{opacity:0;transform:translateY(24px);filter:blur(6px)}}

.quick{overflow:hidden;transition:transform .25s,box-shadow .3s,border-color .3s;animation:cab-up .7s cubic-bezier(.2,.8,.2,1) both}
.quick:nth-child(2){animation-delay:.07s}.quick:nth-child(3){animation-delay:.14s}.quick:nth-child(4){animation-delay:.21s}.quick:nth-child(5){animation-delay:.28s}.quick:nth-child(6){animation-delay:.35s}
.quick::before{content:"";position:absolute;inset:0;background:radial-gradient(260px circle at 20% 0%,#34e5a826,transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}
.quick:hover{border-color:#34e5a8;box-shadow:0 18px 40px #0b7a5a26;transform:translateY(-4px)}
.quick:hover::before{opacity:1}
.quick b{transition:transform .4s,background .3s,color .3s}
.quick:hover b{transform:rotate(-8deg) scale(1.12);background:#34e5a8;color:#04211b}
.quick:hover::after{color:var(--accent);transform:translate(3px,-3px);transition:transform .3s}
.page-card,.board{animation:cab-up .6s cubic-bezier(.2,.8,.2,1) both}

@media(min-width:940px){
  .navdock{background:#06201f;border-right-color:#34e5a826;background-image:radial-gradient(400px circle at 0 0,#34e5a81f,transparent 60%)}
  .navdock button{color:#9fd9c4;position:relative}
  .navdock button:hover{background:#0f302d;color:#eafbf4;transform:translateX(3px)}
  .navdock button.active{background:#34e5a8;border-color:#2bd39a;color:#04211b;box-shadow:0 6px 22px #34e5a840}
  .navdock #listing-workspace-open{border-color:#34e5a855;color:#34e5a8}
  .navdock #listing-workspace-open:hover{background:#34e5a81a}
  .account-actions .admin-open,.account-actions .saved-open,.account-actions .logout{border-color:#1c3a35;background:#0b2a27;color:#b9dccf}
  .account-actions .admin-open:hover,.account-actions .saved-open:hover,.account-actions .logout:hover{background:#123a35;border-color:#34e5a866}
  .navdock #billing-badge:hover{background:#0f3d36}
}
#billing-badge{border-color:#34e5a855;background:linear-gradient(110deg,#0b3d3a 30%,#14594f 50%,#0b3d3a 70%);background-size:250% 100%;color:#eafbf4;animation:cab-badge 5s linear infinite}
@keyframes cab-badge{from{background-position:150% 0}to{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Read mode — 2026-10-28 */
:root[data-theme="read"]{--bg:#f6f1e6;--grid:#f6f1e6;--panel:#fbf8f1;--panel2:#f1eadc;--ink:#1f2522;--muted:#474f4a;--faint:#5b625d;--line:#dcd2bf;--accent:#0b6b4f;--accent-ink:#0b6b4f;--accent-bg:#e2ecdf;--on-accent:#fff;--good:#0b6b4f;--good-bg:#e2ecdf;--danger:#a3392a;--danger-bg:#f7e5de;--warn:#7a5512;--warn-bg:#f5ecd2;--warn-line:#c9a24f;--violet:#0b6b4f;--deep:#efe7d8;--mint:#0b6b4f;--shadow:none;color-scheme:light}
:root[data-theme="read"] body{font-size:16px;line-height:1.75}
:root[data-theme="read"] *,:root[data-theme="read"] *::before,:root[data-theme="read"] *::after{animation:none!important;transition:none!important}
:root[data-theme="read"] .home-hero{background:#efe7d8;border-color:#dcd2bf;color:#1f2522}
:root[data-theme="read"] .home-hero::before,:root[data-theme="read"] .home-hero::after{display:none}
:root[data-theme="read"] .home-hero h2{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:#1f2522}
:root[data-theme="read"] .home-hero .eyebrow{color:#0b6b4f}
:root[data-theme="read"] .home-hero p:last-child{color:#363d39;font-size:15px}
:root[data-theme="read"] .quick:hover{transform:none;box-shadow:none;border-color:#0b6b4f}
:root[data-theme="read"] .quick:hover b{transform:none;background:var(--accent-bg);color:var(--accent-ink)}
:root[data-theme="read"] .quick::before{display:none}
:root[data-theme="read"] .primary,:root[data-theme="read"] .refresh,:root[data-theme="read"] .auth #auth-submit,:root[data-theme="read"] .session-status button{background:#0b6b4f;border-color:#0b6b4f;color:#fff;box-shadow:none}
:root[data-theme="read"] #billing-badge{background:#efe7d8;border-color:#dcd2bf;color:#1f2522}
:root[data-theme="read"] .navdock{background:#efe7d8!important;background-image:none!important;border-right-color:#dcd2bf!important}
:root[data-theme="read"] .navdock::before{color:#1f2522!important}
:root[data-theme="read"] .navdock button{color:#1f2522!important;font-size:13px!important}
:root[data-theme="read"] .navdock button:hover{background:#e3dbc9!important;transform:none!important}
:root[data-theme="read"] .navdock button.active{background:#0b6b4f!important;border-color:#0b6b4f!important;color:#fff!important;box-shadow:none!important}
:root[data-theme="read"] .navdock #listing-workspace-open{color:#0b6b4f!important;border-color:#0b6b4f88!important}
:root[data-theme="read"] .account-actions .admin-open,:root[data-theme="read"] .account-actions .saved-open,:root[data-theme="read"] .account-actions .logout{background:#fbf8f1!important;border-color:#dcd2bf!important;color:#1f2522!important}
:root[data-theme="read"] .lot{font-size:15px}
:root[data-theme="read"] .modes button[aria-pressed="true"]{background:#0b6b4f;color:#fff}
/* My products — 2026-10-28 */
.mp-open{border-color:var(--accent)!important;color:var(--accent-ink)!important;font-weight:800!important}
.mp-hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 14px;padding:18px 20px;border:1px dashed var(--accent);border-radius:14px;background:var(--accent-bg);color:var(--ink)}
.mp-hint b{font-size:15px}.mp-hint span{flex:1 1 320px;color:var(--muted);font-size:13px}
.mp-hint button{border:0;border-radius:10px;padding:10px 14px;background:var(--accent);color:var(--on-accent);font-weight:800;cursor:pointer}
.mp-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px}
.mp-modal[hidden]{display:none}
.mp-backdrop{position:absolute;inset:0;background:#020f0ecc;backdrop-filter:blur(6px)}
.mp-panel{position:relative;width:min(760px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--ink);box-shadow:0 30px 90px #0008;animation:cab-up .35s cubic-bezier(.2,.8,.2,1)}
.mp-close{position:absolute;top:14px;right:16px;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font-size:22px;cursor:pointer}
.mp-kicker{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--accent)}
.mp-panel h2{margin:6px 0 6px;font-size:26px}
.mp-lead{margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.6}
.mp-input{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--ink);font:600 15px Manrope,Arial,sans-serif;outline:none}
.mp-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}
.mp-results{margin-top:10px;display:grid;gap:6px;max-height:320px;overflow:auto}
.mp-row{display:grid;grid-template-columns:20px auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:11px;cursor:pointer;transition:border-color .2s,background .2s}
.mp-row:hover{border-color:var(--accent);background:var(--accent-bg)}
.mp-row.added{opacity:.6;cursor:default}
.mp-row code,.mp-chip code{font:700 11px "IBM Plex Mono",ui-monospace,monospace;color:var(--accent-ink)}
.mp-name{font-size:13px;font-weight:700;min-width:0;overflow-wrap:anywhere}
.mp-row em{font-style:normal;font-size:11px;color:var(--muted);white-space:nowrap}
.mp-loading,.mp-empty{color:var(--muted);font-size:13px;padding:8px 2px}
.mp-picked,.mp-mine{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.mp-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 8px 6px 10px;border:1px solid var(--line);border-radius:20px;font-size:12px;font-weight:700;background:var(--panel2)}
.mp-chip.on{border-color:var(--accent);background:var(--accent-bg)}
.mp-chip button{border:0;background:transparent;color:var(--muted);font-size:16px;cursor:pointer;line-height:1}
.mp-chip button:hover{color:var(--danger)}
.mp-actions{margin-top:14px}
.mp-save{border:0;border-radius:12px;padding:12px 18px;background:var(--accent);color:var(--on-accent);font:800 14px Manrope,Arial,sans-serif;cursor:pointer}
.mp-save:disabled{opacity:.45;cursor:default}
.mp-sub{margin:22px 0 0;font-size:14px}
.mp-msg{margin:12px 0 0;font-size:13px;font-weight:700;color:var(--accent-ink)}
@media(max-width:600px){.mp-panel{padding:20px}.mp-row{grid-template-columns:20px 1fr;}.mp-row code{grid-column:2}.mp-row em{grid-column:2}}
.st-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.st-row span{display:flex;flex-direction:column;gap:3px}.st-row small{color:var(--muted);font-size:12px;line-height:1.5}
.st-switch{appearance:none;flex:0 0 46px;width:46px;height:26px;border-radius:20px;background:var(--line);position:relative;cursor:pointer;transition:background .2s}
.st-switch::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}
.st-switch:checked{background:var(--accent)}.st-switch:checked::after{transform:translateX(20px)}
@media(min-width:940px){.account-actions .settings-open{position:fixed;left:16px;bottom:144px;z-index:24;width:204px;min-height:36px;border:1px solid #1c3a35;border-radius:8px;background:#0b2a27;color:#b9dccf;font:600 11px Manrope,Arial,sans-serif;text-align:left;padding:9px 13px;cursor:pointer}.account-actions .settings-open:hover{background:#123a35;border-color:#34e5a866}.navdock{padding-bottom:265px}#billing-badge{bottom:190px!important}}
:root[data-theme="read"] .account-actions .settings-open{background:#fbf8f1!important;border-color:#dcd2bf!important;color:#1f2522!important}
/* Deals and competitor history — 2026-10-28 */
.deals-box{margin-top:26px}.deals-head h3{margin:0;font-size:18px}.deals-head p,.deals-note{margin:4px 0 12px;color:var(--muted);font-size:13px}
.deals-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.deals-scroll table{width:100%;border-collapse:collapse;font-size:13px;min-width:860px}
.deals-scroll th{position:sticky;top:0;text-align:left;padding:10px 12px;background:var(--panel2);color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.deals-scroll td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top}
.deals-scroll td small{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.4;max-width:340px}
.deals-scroll tr:hover td{background:var(--accent-bg)}
.deals-scroll a{color:var(--ink);font-weight:700;text-decoration:none}.deals-scroll a:hover{color:var(--accent-ink);text-decoration:underline}
.deals-firm{border:0;background:none;padding:0;color:var(--accent-ink);font:700 13px Manrope,Arial,sans-serif;text-align:left;cursor:pointer}
.deals-firm:hover{text-decoration:underline}
.firm-box{margin:4px 0 18px}.firm-form{display:flex;gap:10px;flex-wrap:wrap}.firm-form input{flex:1 1 260px;min-height:42px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink)}
.firm-card{margin:16px 0 12px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);display:grid;gap:12px}
.firm-card b{font-size:17px}.firm-card small{display:block;color:var(--muted);font-size:12px}
.firm-stats{display:flex;gap:22px;flex-wrap:wrap}.firm-stats span{display:flex;flex-direction:column;color:var(--muted);font-size:12px}.firm-stats b{font-size:22px;color:var(--accent-ink)}
.firm-top{display:flex;flex-wrap:wrap;gap:6px}.firm-top span{padding:5px 10px;border-radius:20px;background:var(--accent-bg);font-size:12px;font-weight:700}
.listing-frame{display:block;width:100%;min-height:80vh;border:0;border-radius:14px;background:transparent}
.navdock #listing-workspace-open.active{background:#34e5a8!important;color:#04211b!important;border-color:#2bd39a!important}
/* Pricing: own catalogue and exchange fees — 2026-10-28 */
.cat-card{margin:0 0 18px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}
.cat-card summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.cat-card summary span{color:var(--accent-ink);font-weight:700;font-size:13px}
.cat-card p{color:var(--muted);font-size:13px;line-height:1.6}
.cat-card textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);font:13px "IBM Plex Mono",ui-monospace,monospace}
.cat-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0}
.cat-file{position:relative;overflow:hidden;padding:9px 14px;border:1px dashed var(--accent);border-radius:10px;color:var(--accent-ink);font-weight:700;font-size:13px;cursor:pointer}
.cat-file input{position:absolute;inset:0;opacity:0;cursor:pointer}
#cat-msg{font-size:13px;color:var(--accent-ink);font-weight:700}
.cat-hint{margin:0 0 12px;padding:10px 14px;border-radius:10px;background:var(--accent-bg);font-size:13px}
.fee-block{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line)}.fee-block h4{margin:0 0 10px}
.fee-block b.pos{color:var(--accent-ink)}.fee-block b.neg{color:var(--danger)}
.contact-box{margin:0 0 16px;padding:16px 18px;border:1px solid var(--accent);border-radius:14px;background:var(--accent-bg);display:grid;gap:4px}
.contact-box small{color:var(--muted);font-size:12px}.contact-box small a{color:var(--accent-ink)}
.contact-list{display:grid;gap:2px;margin:6px 0}.contact-phone{font-size:20px;font-weight:800;color:var(--accent-ink);text-decoration:none;letter-spacing:.01em}
.st-email{display:flex;gap:8px;flex-direction:row!important}.st-email input{min-width:220px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink)}
/* My lots board uses the same palette in light, dark, and reading themes. */
.my-lots-board{display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;padding:10px 2px 20px;scrollbar-color:var(--line) transparent}
.my-column{flex:0 0 280px;min-width:280px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);color:var(--ink)}
.my-column-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:14px}.my-column-head span{font-size:11px;color:var(--muted);white-space:nowrap}
.my-column-tools{display:flex;gap:4px;margin:10px 0}.my-column-tools button,.my-card-actions button{border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);padding:4px 7px;font-size:12px}.my-column-tools button:first-child{margin-right:auto}
.my-card-list{min-height:90px;display:flex;flex-direction:column;gap:9px}
.my-card{position:relative;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);box-shadow:0 3px 10px #0001;touch-action:none;cursor:grab}.my-card.dragging{opacity:.55;cursor:grabbing;border-color:var(--accent)}
.my-card-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;min-height:2.7em;font-size:13px}
.my-card-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:11px;font-size:12px}.my-card-meta b{white-space:nowrap}
.my-deadline{padding:4px 5px;border-radius:5px;white-space:nowrap;font-size:10px}.my-deadline.red{background:#ef44442b;color:var(--danger)}.my-deadline.yellow{background:#eab30830;color:var(--accent-ink)}.my-deadline.grey,.my-deadline.past{background:var(--panel2);color:var(--muted)}.my-deadline.past{text-decoration:line-through}
.my-overdue,.my-winner{display:block;margin-top:7px;color:var(--muted);font-size:11px}.my-overdue{color:var(--danger)}
.my-note{margin-top:10px;padding:7px;border:1px dashed var(--line);border-radius:6px;color:var(--muted);font-size:12px;cursor:text;overflow-wrap:anywhere}.my-card-actions{display:flex;justify-content:flex-end;gap:5px;margin-top:8px}.my-card-actions a{padding:3px 8px;border:1px solid var(--line);border-radius:7px;color:var(--accent-ink);text-decoration:none}
