/* The desktop design archive. No dialog, form or mobile styles belong here. */
@media (min-width:901px) {
  .desktop-shell {
    --desk-primary:var(--desk-theme-primary,#f52c85); --desk-mid:var(--desk-theme-mid,#eb5894); --desk-line:var(--desk-theme-line,#ff7fb7); --desk-faint:var(--desk-theme-faint,#ffcade);
    --desk-paper:var(--desk-theme-paper,#fff8fb); --desk-card:var(--desk-theme-card,#fffdfe); --desk-ink:var(--desk-theme-ink,#261c28); --desk-muted:var(--desk-theme-muted,#6c7691);
    --desk-sidebar:202px; --desk-header:144px; --desk-gap:14px; --desk-radius:10px;
    --desk-serif:"Noto Serif SC","Songti SC",SimSun,serif;
    --dash-primary:var(--desk-primary); --dash-soft:var(--desk-theme-soft,#fcf3f6); --dash-heading:var(--desk-theme-ink,#242034); --dash-serif:var(--desk-serif);
    background:var(--desk-paper);
  }
  .desktop-shell .app-shell { grid-template-columns:var(--desk-sidebar) minmax(0,1fr); }
  .desktop-shell .sidebar { padding:23px 15px 18px; font-family:var(--desk-serif); background:linear-gradient(150deg,var(--desk-theme-sidebar-color,#3a2633),var(--desk-theme-sidebar-end,#422a38) 75%,var(--desk-theme-sidebar-end,#372330)); }
  .desktop-shell .brand { gap:12px; }
  .desktop-shell .brand strong { font:700 18px var(--desk-serif); }
  .desktop-shell .brand small { font-size:12px; color:var(--desk-theme-sidebar-ink,#c7b7c3); white-space:nowrap; }
  .desktop-shell .brand-mark { border-radius:12px; background:linear-gradient(135deg,var(--desk-theme-secondary,#f7abc9),var(--desk-theme-mid,#ed5894)); box-shadow:0 0 15px var(--desk-theme-glow,#ef408233),inset 0 1px 1px #ffffff80; }
  .desktop-shell .sidebar nav { margin-top:40px; gap:17px; }
  .desktop-shell .sidebar nav a { min-height:45px; padding:10px 14px; border-radius:9px; color:var(--desk-theme-sidebar-ink,#d4c6ce); font:500 14px/1.4 var(--desk-serif); }
  .desktop-shell .sidebar nav a.active { color:var(--desk-theme-nav-ink,#37222e); font-weight:800; background:linear-gradient(110deg,var(--desk-theme-nav-start,#f7b4d1),var(--desk-theme-nav-end,#ef5497)); box-shadow:inset 0 1px 1px #ffffff50,0 4px 16px var(--desk-theme-shadow,#160a1314); }
  .desktop-shell .sidebar nav a.active::before { display:none; }
  .desktop-shell .sidebar nav a span { font:23px/1 var(--font-body); }
  .desktop-shell .sidebar .dashboard-nav-icon { display:none; }
  .desktop-shell .sidebar-note { padding:10px 7px; margin-bottom:10px; border:1px solid #ffffff0b; opacity:.8; }
  .desktop-shell .sidebar-note strong { font-size:11px; font-weight:500; }
  .desktop-shell .sidebar-note small { font-size:10px; }
  .desktop-shell .status-dot { background:var(--desk-theme-mid,#f375af); box-shadow:0 0 0 5px var(--desk-theme-glow,#f375af22); }
  .desktop-shell .status-dot[data-state="error"] { background:#ff7770; }
  .desktop-shell .dashboard-sidebar-motto { display:flex; gap:12px; padding:13px 12px; border:1px solid #ffffff13; border-radius:13px; align-items:center; }
  .desktop-shell .dashboard-sidebar-motto strong { color:var(--desk-theme-secondary,#efb0ca); }
  .desktop-shell main { max-width:1640px; width:100%; margin-inline:auto; }
  .desktop-shell .topbar { position:relative; height:var(--desk-header); min-height:var(--desk-header); padding:24px 26px 14px 22px; border:0; align-items:flex-start; color:var(--desk-ink); gap:10px; font-family:var(--desk-serif); }
  .desktop-shell #today-label { display:inline-block; color:var(--desk-muted); font:500 12px var(--desk-serif); letter-spacing:0; }
  .desktop-shell .dashboard-day-note { display:inline-flex; gap:7px; margin-left:10px; align-items:center; font:11px var(--desk-serif); color:var(--desk-muted); }
  .desktop-shell #page-title { margin:15px 0 0; max-width:none; color:var(--desk-ink); font:900 38px/1.15 var(--desk-serif); letter-spacing:1px; }
  .desktop-shell:not(.dashboard-view) #page-title::after { content:"◆━━"; display:inline-block; margin-left:14px; vertical-align:middle; color:var(--desk-mid); font:13px var(--desk-serif); letter-spacing:0; }
  .desktop-shell .dashboard-greeting-copy { display:block; margin:8px 0 0; color:var(--desk-muted); font:15px/1.55 var(--desk-serif); letter-spacing:0; }
  .desktop-shell .account-strip { position:absolute; top:20px; right:26px; gap:10px; }
  .desktop-shell .dashboard-search { display:block; position:relative; width:190px; margin-top:2px; }
  .desktop-shell .dashboard-search label { padding:6px 12px; border:1px solid var(--desk-theme-faint,#f9dce8); box-shadow:0 2px 8px var(--desk-theme-shadow,#923c6020); background:var(--desk-theme-card,#fffdfe); }
  .desktop-shell .dashboard-search input { height:22px; font:12px var(--desk-serif); }
  .desktop-shell .role-button { min-height:38px; padding:9px 14px; border:0; border-radius:24px; color:var(--desk-theme-nav-ink,#402735); background:linear-gradient(110deg,var(--desk-theme-nav-start,#f9bbd5),var(--desk-theme-nav-end,#ef4082)); box-shadow:0 4px 12px var(--desk-theme-glow,#ef408230); font:700 12px var(--desk-serif); }
  .desktop-shell .role-button::before { content:""; display:inline-block; width:15px; height:12px; margin-right:7px; vertical-align:-2px; border:1.5px solid currentColor; border-radius:2px; background:linear-gradient(90deg,transparent 46%,currentColor 46% 54%,transparent 54%); }
  .desktop-shell .points-pill { min-width:93px; min-height:49px; padding:5px 12px 5px 38px; border:1px solid var(--desk-theme-faint,#fbdae8); border-radius:12px; background:var(--desk-theme-card,#fffdfe); box-shadow:0 2px 8px var(--desk-theme-shadow,#923c6010); color:var(--desk-ink); }
  .desktop-shell .points-pill::before { content:""; position:absolute; left:13px; top:15px; width:15px; height:7px; border-radius:50%; background:#ffc561; border:1px solid #f4a546; box-shadow:0 4px #f3ad4e,0 8px #ffbd53; }
  .desktop-shell .points-pill small { font:10px var(--desk-serif); color:var(--desk-muted); }
  .desktop-shell .points-pill strong { font:bold 24px/1 var(--desk-serif); }
  .desktop-shell .avatar-button { min-width:151px; height:49px; padding:3px 10px 3px 4px; gap:9px; background:var(--desk-theme-card,#fffdfe); border:1px solid var(--desk-theme-faint,#f9dce8); border-radius:16px; color:var(--desk-ink); }
  .desktop-shell #avatar { background:var(--desk-theme-sidebar-color,#3b2332); font:24px Georgia,serif; }
  .desktop-shell .account-copy { max-width:112px; }
  .desktop-shell .account-copy b { font:bold 16px var(--desk-serif); }
  .desktop-shell .avatar-button::after { content:"⌄"; margin-left:auto; }
  .desktop-shell .dashboard-top-motto { display:block; position:absolute; right:34px; bottom:9px; margin:0; transform:rotate(-10deg); font:14px/1.7 KaiTi,"STKaiti",var(--desk-serif); color:var(--desk-theme-muted,#705c70); letter-spacing:.2em; pointer-events:none; }
  .desktop-shell .dashboard-top-motto span { color:var(--desk-primary); }
  .desktop-shell .page { padding:0 26px 22px 14px; }
  .desktop-shell[data-desktop-page="imports"], .desktop-shell[data-desktop-page="logs"] { --desk-header:176px; }
  .desktop-shell[data-desktop-page="imports"] { --desk-header:182px; }
  .desktop-shell .topbar[data-kicker]:not([data-kicker=""])::before { content:attr(data-kicker); position:absolute; left:22px; top:64px; font:12px var(--desk-serif); color:var(--desk-muted); letter-spacing:.2em; }
  .desktop-shell .topbar[data-kicker]:not([data-kicker=""]) #page-title { margin-top:42px; }
  .desktop-shell .topbar[data-kicker]:not([data-kicker=""]) .dashboard-top-motto { bottom:35px; }
  .desktop-shell .desk-page { color:var(--desk-ink); font:14px/1.45 var(--desk-serif); }
  .desk-page ::before,.desk-page ::after,.desktop-shell .topbar ::before,.desktop-shell .topbar ::after,.desktop-shell .sidebar ::before,.desktop-shell .sidebar ::after,.desk-icon { pointer-events:none; }
  .desk-page :is(h2,h3,button,select) { font-family:var(--desk-serif); }
  .desk-page :is(button,a,select,[tabindex]):focus-visible { outline:2px solid var(--desk-primary); outline-offset:3px; }
  .desk-page :is(button,a,select,summary,[tabindex]) { scroll-margin-block:100px 16px; }
  html:has(.desktop-shell[data-desktop-page="shop"]) { scroll-padding-top:96px; }
  .desk-page .desk-sr-only { position:absolute; width:1px; height:1px; padding:0; clip-path:inset(50%); overflow:hidden; white-space:nowrap; }
  /* Nine-slice SVG is code, not a bitmap: fixed corner geometry, stretching straight rules. */
  .desk-frame, .desk-card, .desktop-shell .dashboard-metric, .desktop-shell .dashboard-panel {
    border:10px solid transparent; border-image:var(--desk-frame-image) 14 fill / 10px / 0 stretch; position:relative; border-radius:var(--desk-radius);
    --desk-frame-image:var(--desk-theme-section-frame,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cpath d='M8 1H92L99 8V92L92 99H8L1 92V8Z' fill='%23fffafd' fill-opacity='.58' stroke='%23ff80b7' stroke-width='.85'/%3E%3Cpath d='M12 5H88L95 12V88L88 95H12L5 88V12Z' fill='none' stroke='%23ff4f9b' stroke-width='.8'/%3E%3C/svg%3E"));
  }
  .desk-frame::before,.desk-frame::after { content:"◆"; position:absolute; left:50%; transform:translateX(-50%); color:var(--desk-mid); background:var(--desk-paper); padding:0 5px; font:13px/13px serif; pointer-events:none; }
  .desk-frame::before { top:-15px; }.desk-frame::after { bottom:-15px; }
  .desk-filter::before,.desk-filter::after { left:-15px; top:50%; bottom:auto; transform:translateY(-50%); padding:3px 0; }
  .desk-filter::after { left:auto; right:-15px; }
  .desk-card,.desktop-shell .dashboard-metric,.desktop-shell .dashboard-panel {
    --desk-frame-image:var(--desk-theme-card-frame,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Crect x='1' y='1' width='98' height='98' rx='8' fill='%23ffffff' fill-opacity='.85' stroke='%23ff8dbd' stroke-width='.8'/%3E%3Cpath d='M14 5H86Q87 13 95 14V86Q87 87 86 95H14Q13 87 5 86V14Q13 13 14 5Z' fill='none' stroke='%23ff89b9' stroke-width='.8'/%3E%3Cg fill='%23f7519a'%3E%3Ccircle cx='7' cy='7' r='1.5'/%3E%3Ccircle cx='93' cy='7' r='1.5'/%3E%3Ccircle cx='7' cy='93' r='1.5'/%3E%3Ccircle cx='93' cy='93' r='1.5'/%3E%3C/g%3E%3C/svg%3E"));
  }
  .desk-filter { min-height:62px; padding:3px 10px; display:flex; align-items:center; gap:12px; margin-bottom:12px; }
  .desk-page .filter-strip { margin:0; padding:0; border:0; border-radius:0; background:transparent; flex:1; gap:12px; }
  .desk-page .filter-strip > span { color:var(--desk-ink); font-size:13px; }
  .desk-page .filter-chips { gap:7px; scrollbar-width:thin; padding:1px; }
  .desk-page .filter-chips button,.desk-record-filters button { min-height:33px; padding:5px 17px; color:var(--desk-ink); border:1px solid var(--desk-theme-faint,#f9ddea); border-radius:24px; background:var(--desk-theme-card,#fffdfd); font-weight:500; box-shadow:0 1px 4px var(--desk-theme-shadow,#9c49641a); }
  .desk-page .filter-chips button.active,.desk-record-filters button[aria-pressed="true"] { border-color:var(--desk-primary); background:linear-gradient(125deg,var(--desk-theme-wash,#ffe5f0),var(--desk-theme-selected,#f9c9df)); box-shadow:inset 0 0 0 2px var(--desk-theme-glass,#fff8); }
  .desk-select { flex:0 1 205px; min-width:135px; }
  .desk-select select { height:36px; padding:6px 12px; border:1px solid var(--desk-theme-faint,#f9ddea); border-radius:11px; background:var(--desk-theme-card,#fffdfd); color:var(--desk-ink); font-size:12px; box-shadow:0 1px 5px var(--desk-theme-shadow,#9c49641a); }
  .desk-section { margin-bottom:12px; padding:4px 10px 5px; }
  .desk-section-heading { display:flex; align-items:center; gap:13px; min-height:35px; margin-bottom:5px; }
  .desk-section-heading h2 { font-size:20px; line-height:1.25; margin:0; white-space:nowrap; }
  .desk-section-heading > i { width:28px; height:1px; background:var(--desk-mid); }
  .desk-section-heading p { margin:0; min-width:0; font-size:11px; color:var(--desk-muted); }
  .desk-icon { width:24px; height:24px; flex:none; fill:none; stroke:var(--desk-primary); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
  .desk-section-heading a { color:var(--desk-primary); text-decoration:none; }
  .desk-view-all { margin-left:auto; white-space:nowrap; font-weight:bold; font-size:12px; }
  .desk-back { font:30px/1 var(--desk-serif); }
  .desk-rail { min-width:0; display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - 26px)/3); grid-template-rows:1fr; gap:13px; overflow-x:auto; overscroll-behavior-x:none; scrollbar-width:thin; scrollbar-color:var(--desk-theme-quiet,#f4bad2) transparent; padding-bottom:3px; }
  .desk-rail > .empty-state { grid-column:1 / 4; }
  .desk-rail-controls { position:absolute; top:8px; right:100px; display:flex; justify-content:flex-end; gap:4px; height:20px; margin-top:1px; }
  .desk-rail-controls[hidden] { display:none; }
  .desk-rail-controls button { width:28px; padding:0; border:1px solid var(--desk-faint); border-radius:6px; background:var(--desk-theme-card,#fff); color:var(--desk-primary); line-height:16px; }
  .desk-card { min-width:0; padding:8px 14px; background:transparent; }
  .desk-card-top { display:flex; align-items:center; gap:10px; min-height:23px; }
  .desk-tag { display:inline-flex; align-items:center; padding:2px 13px; font:12px var(--desk-serif); border-radius:20px; background:var(--desk-theme-tint,#fbe0ec); white-space:nowrap; }
  .desk-card-top > strong { margin-left:auto; color:var(--desk-primary); font-size:14px; white-space:nowrap; }
  .desk-card h3 { margin:6px 0 3px; font-size:16px; line-height:1.35; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .desk-card p { margin:0 0 8px; color:var(--desk-muted); font-size:13px; line-height:1.45; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .desk-task-card { min-height:163px; padding-block:4px; display:flex; flex-direction:column; }
  .desk-task-card > small { color:var(--desk-muted); font-size:12px; display:flex; gap:12px; white-space:nowrap; }
  .desk-card-action { margin-top:auto; padding-top:7px; }
  .desk-card-action .desk-button { width:100%; }
  .desk-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:31px; padding:5px 20px; border:1px solid var(--desk-theme-line,#f6a3c6); border-radius:8px; background:linear-gradient(110deg,var(--desk-theme-button-start,#f46ba3),var(--desk-theme-button,#eb2b79)); color:var(--desk-theme-button-ink,#fff); font-size:13px; white-space:nowrap; box-shadow:inset 0 1px 1px #fff6; }
  .desk-button .desk-icon { width:19px; height:19px; stroke:currentColor; }
  .desk-button-secondary { color:var(--desk-primary); border-color:var(--desk-primary); background:transparent; }
  .desk-button:hover { filter:brightness(1.04); }.desk-button:active { filter:brightness(.96); }
  .desk-more { position:relative; margin-left:2px; }
  .desk-more summary { list-style:none; cursor:pointer; font:bold 17px/20px var(--desk-serif); }
  .desk-more summary::-webkit-details-marker { display:none; }
  .desk-more:not([open]) > div { display:none; }
  .desk-more > div { position:absolute; right:0; top:22px; min-width:140px; max-width:220px; z-index:3; padding:8px; border:1px solid var(--desk-faint); border-radius:8px; background:var(--desk-theme-card,#fff); box-shadow:0 6px 12px var(--desk-theme-shadow,#59304320); }
  .desk-more .desk-button { width:100%; margin:2px 0; }
  .desk-more p { white-space:normal; font-size:12px; margin:0; }
  .desk-status { display:inline-flex; align-items:center; justify-content:center; min-width:78px; height:25px; padding:2px 12px; border-radius:20px; font-size:12px; white-space:nowrap; color:var(--desk-theme-primary,#fc2381); background:var(--desk-theme-soft,#fff0f7); }
  .desk-status.approved { background:var(--desk-theme-tint,#ffdcf0); color:var(--desk-theme-primary,#f80075); font-weight:700; }
  .desk-status.rejected { background:var(--desk-theme-return-bg,#fff0fa); color:var(--desk-theme-return-ink,#ed7cbb); }
  .desk-status.pending { background:var(--desk-theme-pending-bg,#fff5e7); color:var(--desk-theme-pending-ink,#e7802d); }
  .desk-status.fulfilled { background:var(--desk-theme-info-bg,#eaf1ff); color:var(--desk-theme-info-ink,#4b8eea); }
  .desk-status.completed { background:var(--desk-theme-success-bg,#e8f7f0); color:var(--desk-theme-success-ink,#289879); }
  .desk-completed .desk-status { background:var(--desk-theme-tint,#ffdfef); color:var(--desk-theme-primary,#ff2484); }
  .desk-review-card .desk-status.pending { background:var(--desk-theme-soft,#fff0f7); color:var(--desk-theme-primary,#fa2786); }
  .desk-table-scroll { max-height:188px; overflow:auto; overscroll-behavior:auto; scrollbar-width:thin; scrollbar-color:var(--desk-theme-quiet,#f3b7d2) transparent; }
  .desk-table { width:100%; table-layout:fixed; border-collapse:separate; border-spacing:0 2px; font-size:11px; color:var(--desk-muted); }
  .desk-table th { height:23px; padding:2px 10px; color:var(--desk-ink); background:var(--desk-theme-tint,#f9deeb); text-align:left; font-weight:700; position:sticky; top:0; z-index:1; }
  .desk-table th:first-child { border-radius:8px 0 0 8px; }.desk-table th:last-child { border-radius:0 8px 8px 0; }
  .desk-table td { height:25px; padding:0 10px; background:var(--desk-theme-card,#fffdfe); border-top:1px solid var(--desk-theme-line,#ffb7d9); border-bottom:1px solid var(--desk-theme-line,#ffb7d9); border-right:1px solid var(--desk-theme-soft,#fff0f7); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .desk-table td:first-child { border-left:1px solid var(--desk-theme-line,#ff9ccb); border-radius:7px 0 0 7px; color:var(--desk-ink); }
  .desk-table td:last-child { border-right:1px solid var(--desk-theme-line,#ff9ccb); border-radius:0 7px 7px 0; text-align:center; }
  .desk-table td:nth-child(6),.desk-table td:nth-child(7),.desk-table th:nth-child(n+6) { text-align:center; padding-inline:3px; }
  .desk-table .desk-status { height:21px; min-width:76px; font-size:11px; }
  .desk-points { color:var(--desk-primary) !important; }
  .desk-preview { display:inline-block; width:48px; aspect-ratio:16/9; padding:0; border:0; background:var(--desk-theme-soft,#fff6fa); vertical-align:middle; border-radius:3px; overflow:clip; }
  .desk-preview img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
  .desk-table .desk-preview { height:24px; width:auto; }
  .desk-table-full { max-height:calc(100dvh - 310px); min-height:240px; }
  .desk-table-full .desk-table { font-size:14px; }
  .desk-table-full .desk-table th { height:33px; font-size:14px; padding-inline:12px; }
  .desk-table-full .desk-table td { height:38px; padding-inline:12px; }
  .desk-table-full .desk-table td:nth-child(3),.desk-table-full .desk-table td:nth-child(4) { white-space:normal; font-size:13px; }
  .desk-table-full .desk-preview { height:35px; }
  .desk-table-full .desk-status { height:29px; font-size:12px; }
  .desk-tabs { display:flex; width:264px; border:1px solid var(--desk-theme-faint,#f9ddea); border-radius:25px; background:var(--desk-theme-card,#fff); }
  .desk-tabs button { flex:1; height:33px; border:1px solid transparent; border-radius:25px; color:var(--desk-ink); background:transparent; font-size:13px; }
  .desk-tabs button[aria-selected="true"] { border-color:var(--desk-primary); background:linear-gradient(120deg,var(--desk-theme-wash,#ffebf3),var(--desk-theme-selected,#f7c9df)); box-shadow:inset 0 0 0 2px var(--desk-theme-glass,#fff8); }
  .desk-filter-right { display:flex; gap:14px; margin-left:auto; }
  .desk-filter-right .desk-select { width:190px; }
  .desk-review-card { min-height:129px; padding:3px 12px 6px; }
  .desk-review-card h3,.desk-review-card > p { max-width:68%; }
  .desk-review-card > small { display:block; margin-top:8px; font-size:11px; color:var(--desk-muted); }
  .desk-review-proof { position:absolute; right:12px; top:31px; width:80px; height:45px; }
  .desk-review-proof .desk-preview { width:100%; }
  .desk-review-actions { display:flex; gap:5px; position:absolute; right:9px; bottom:6px; }
  .desk-review-actions .desk-button { min-height:28px; padding:4px 9px; font-size:11px; }
  .desk-review-card:has(.desk-button) { padding-bottom:6px; }
  .desk-voucher-title { padding:0; border:0; background:transparent; color:inherit; font:inherit; max-width:100%; overflow:hidden; text-overflow:ellipsis; text-align:left; }
  .desk-review-card > small { max-width:calc(100% - 85px); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .desk-review-history .desk-table-scroll:not(.desk-table-full) { max-height:216px; }
  .desk-review-history .desk-table td { height:29px; }
  .desk-review-history .desk-table-full .desk-table td { height:38px; }
  .desk-products { position:relative; margin-bottom:26px; container-type:inline-size; }
  .desk-shop .desk-filter { min-height:56px; }
  .desk-products .desk-rail { --product-width:calc((100cqw - 39px)/4); --product-height:calc(var(--product-width)*.5625 + 94px); grid-auto-columns:var(--product-width); grid-template-rows:repeat(auto-fill,var(--product-height)); height:max(var(--product-height),calc(100dvh - 228px)); gap:12px 13px; align-content:start; }
  .desk-product-card { display:flex; flex-direction:column; padding:0; border-width:7px; border-image-width:7px; }
  .desk-product-image { position:relative; width:100%; aspect-ratio:16/9; overflow:clip; border-radius:10px; flex:none; background:var(--desk-theme-soft,#fff0f6); }
  .desk-product-image > img { width:100%; height:100%; object-fit:cover; object-position:center; display:block; }
  .desk-product-image .desk-tag { position:absolute; left:5px; top:6px; border:2px solid var(--desk-theme-glass,#fffc); padding:4px 14px; background:var(--desk-theme-tag-surface,#f8dce9df); }
  .desk-product-placeholder { display:grid; place-items:center; width:100%; height:100%; color:var(--desk-theme-quiet,#dc98b7); background:linear-gradient(125deg,var(--desk-theme-soft,#fff3f8),var(--desk-theme-tint,#f5dce7)); font:52px var(--desk-serif); }
  .desk-product-card h3 { font-size:16px; margin:6px 6px 2px; }
  .desk-product-card p { font-size:12px; margin:0 6px 4px; }
  .desk-product-card footer { margin-top:auto; display:flex; justify-content:space-between; align-items:center; gap:6px; padding:0 6px 3px; }
  .desk-product-card footer > strong { font-size:22px; font-weight:500; color:var(--desk-primary); white-space:nowrap; }
  .desk-product-card footer small { font-size:12px; }
  .desk-product-card .desk-button { min-height:29px; min-width:77px; padding:4px 12px; font-size:12px; }
  .desk-product-card > .desk-more { position:absolute; right:6px; top:4px; background:var(--desk-theme-glass,#fff9); border-radius:6px; padding:0 4px; }
  .desk-limit { position:absolute; bottom:39px; right:6px; padding:2px 5px; color:var(--desk-theme-muted,#815370); background:var(--desk-theme-glass,#fff8); font-size:10px; }
  .desk-purchases { padding:9px 10px 12px; scroll-margin-top:84px; }
  .desk-purchases .desk-section-heading { margin-bottom:10px; }
  .desk-purchases .desk-section-heading h2 { font-size:28px; }
  .desk-record-filters { display:flex; gap:8px; margin-bottom:10px; }
  .desk-record-filters button { min-width:79px; font-size:13px; }
  .desk-purchase-list { max-height:478px; overflow:auto; scrollbar-width:thin; scrollbar-color:var(--desk-theme-quiet,#f3b7d2) transparent; overscroll-behavior:auto; display:grid; gap:6px; }
  .desk-purchase-row { height:74px; padding:0 11px 0 0; border-width:5px; border-image-width:5px; display:grid; grid-template-columns:145px minmax(0,1fr) 26% 15% 112px; align-items:center; gap:15px; }
  .desk-purchase-image { width:100%; height:64px; overflow:clip; border-radius:8px; }
  .desk-purchase-image img { width:100%; height:100%; object-fit:cover; }
  .desk-purchase-row h3 { font-size:16px; margin:0 0 5px; }
  .desk-purchase-row small { font-size:13px; color:var(--desk-muted); white-space:nowrap; }
  .desk-purchase-row .desk-points { font-size:17px; font-weight:500; }
  .desk-purchase-row .desk-status { width:84px; height:32px; }
  .desk-purchase-row .desk-button { min-height:41px; }
  .desk-management { display:flex; justify-content:flex-end; gap:8px; margin:-2px 0 9px; }
  .desk-management .desk-button { min-height:27px; padding:3px 12px; font-size:12px; }
  .desk-import-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; padding:9px 2px; }
  .desk-import-card { padding:13px 23px 20px; min-height:458px; background:repeating-linear-gradient(90deg,var(--desk-theme-art-wash,#fff7fb33) 0 12px,var(--desk-theme-art-grid,#fbedf51a) 12px 13px); }
  .desk-import-number { display:block; position:relative; width:75%; height:82px; font:bold 52px var(--desk-serif); color:var(--desk-theme-mid,#c84c88); -webkit-text-stroke:1px var(--desk-theme-ink,#74364f); text-shadow:3px 2px var(--desk-theme-tint,#fbcce0); }
  .desk-import-number::before { content:""; position:absolute; width:64px; height:64px; left:-12px; top:5px; border-radius:50%; background:var(--desk-theme-glow,#f8bdd629); pointer-events:none; }
  .desk-import-number::after { content:""; position:absolute; left:95px; right:22px; top:29px; height:35px; border-top:2px dotted var(--desk-theme-line,#f69ac4); transform:skewX(-45deg); border-left:1px solid var(--desk-theme-line,#f69ac4); pointer-events:none; }
  .desk-import-card h2 { position:relative; margin:9px 0 23px; font-size:29px; color:var(--desk-ink); }
  .desk-import-card > p { position:relative; white-space:normal; min-height:54px; margin:0 0 16px; font-size:16px; line-height:1.65; letter-spacing:.3px; }
  .desk-example-title { display:flex; align-items:center; gap:10px; margin-bottom:9px; }
  .desk-example-title b { padding:3px 18px; border-radius:11px; background:var(--desk-theme-tint,#f9cde0); font-size:14px; font-weight:500; }
  .desk-example-title i { height:1px; background:var(--desk-theme-line,#fa9bc4); flex:1; }
  .desk-example-title i::after { content:""; display:block; width:5px; height:5px; margin:-2px 0 0 auto; border:1px solid var(--desk-theme-line,#fa9bc4); background:white; transform:rotate(45deg); pointer-events:none; }
  .desk-import-card pre { height:70px; padding:12px 14px; margin:0 0 24px; display:flex; align-items:center; color:var(--desk-theme-example-ink,white); background:var(--desk-theme-example,#f0a1c2); border-radius:10px; white-space:pre-wrap; font:14px/1.7 var(--desk-serif); }
  .desk-import-actions { position:relative; display:flex; align-items:center; gap:25px; }
  .desk-import-actions .desk-button { min-height:52px; padding-inline:30px; font-size:16px; }
  .desk-import-actions a { color:var(--desk-primary); font-size:15px; }
  .desk-paper-art { position:absolute; right:0; top:6px; width:160px; height:150px; pointer-events:none; }
  .desk-leaves { position:absolute; right:0; bottom:6px; width:75px; height:103px; pointer-events:none; }
  .desk-import-note { color:var(--desk-muted); font-size:12px; }
  .desk-logs { grid-template-columns:29% minmax(0,1fr); gap:12px; }
  .desk-logs > aside { display:block; padding:18px 5px 17px 15px; }
  .desk-timeline { max-height:calc(100dvh - 236px); overflow:auto; overscroll-behavior:auto; scrollbar-width:thin; padding-left:27px; padding-right:2px; }
  .desk-logs aside button { display:block; position:relative; width:100%; margin:0 0 17px; min-height:100px; padding:7px 10px; color:var(--desk-ink); background:transparent; border:10px solid transparent; border-image:var(--desk-frame-image) 14 fill / 10px; box-shadow:none; }
  .desk-logs aside button::before { content:""; position:absolute; left:-33px; top:18px; width:12px; height:12px; border:1.5px solid var(--desk-primary); border-radius:50%; background:var(--desk-paper); }
  .desk-logs aside button::after { content:""; position:absolute; left:-27px; top:31px; bottom:-44px; border-left:1px solid var(--desk-theme-line,#ff9dc6); pointer-events:none; }
  .desk-logs aside button:last-child::after { display:none; }
  .desk-logs aside button.active { background:var(--desk-theme-selected,#fde8f2); box-shadow:none; }
  .desk-logs aside button.active::before { background:var(--desk-primary); box-shadow:0 0 0 4px var(--desk-paper),0 0 0 5px var(--desk-primary); }
  .desk-logs aside strong { font:bold 22px var(--desk-serif); }
  .desk-logs aside small { font:14px var(--desk-serif); color:var(--desk-muted); margin:4px 0 8px; }
  .desk-logs aside span { font-size:13px; }
  .desk-logs aside em { position:absolute; right:4px; top:3px; font:10px var(--desk-serif); color:var(--desk-primary); }
  .desk-log-detail { padding:35px 24px 14px; min-width:0; }
  .desk-log-count { position:absolute; right:17px; top:9px; color:var(--desk-primary); background:var(--desk-theme-tint,#ffdfed); border-radius:12px; padding:5px 14px; font-size:14px; }
  .desk-log-detail .markdown-body { padding:0; max-height:calc(100dvh - 270px); overflow:auto; overscroll-behavior:auto; scrollbar-width:thin; border:0; border-radius:0; background:transparent; color:var(--desk-theme-muted,#65576d); font:16px/1.75 var(--desk-serif); }
  .desk-log-detail h1 { margin:0 0 4px; font-size:30px; color:var(--desk-ink); }
  .desk-log-detail .markdown-body > p:first-of-type { color:var(--desk-muted); margin:0 0 22px; padding-bottom:17px; border-bottom:1px solid var(--desk-theme-line,#ff9dcb); }
  .desk-log-detail ul { padding-left:22px; }.desk-log-detail li { margin:12px 0; padding-left:1px; }.desk-log-detail li::marker { color:var(--desk-mid); }
  .desk-page .empty-state { min-height:100px; padding:24px; border-color:var(--desk-faint); color:var(--desk-muted); }
  /* Home keeps its 3:1 media/crop contract; the ornamental hero has a distinct frame. */
  .desktop-shell.dashboard-view { --desk-header:158px; }
  .desktop-shell.dashboard-view .topbar { padding-left:40px; }
  .desktop-shell.dashboard-view .page { padding-left:22px; padding-right:25px; }
  .desktop-shell.dashboard-view #page-title { margin-top:9px; }
  .desktop-shell.dashboard-view .dashboard-greeting-copy { max-width:260px; letter-spacing:.1em; }
  .desktop-shell .dashboard-hero { border:7px solid transparent; border-image:var(--desk-theme-hero-frame,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cpath d='M10 1H90L99 10V90L90 99H10L1 90V10Z' fill='none' stroke='%23ff4399'/%3E%3Cpath d='M14 5H86L95 14V86L86 95H14L5 86V14Z' fill='none' stroke='%23ff86b8'/%3E%3Cg fill='%23ff479b'%3E%3Cpath d='m8 3 5 5-5 5-5-5Zm84 0 5 5-5 5-5-5ZM8 87l5 5-5 5-5-5Zm84 0 5 5-5 5-5-5Z'/%3E%3C/g%3E%3C/svg%3E")) 15 / 11px / 2px stretch; overflow:visible; }
  .desktop-shell .dashboard-hero-media { border-radius:15px; }
  .desktop-shell .dashboard-hero:not([data-custom]) { aspect-ratio:auto; height:clamp(250px,20.6vw,340px); min-height:0; }
  .desktop-shell .dashboard-hero:not([data-custom]) .dashboard-hero-media { aspect-ratio:auto; }
  .desktop-shell .dashboard-hero::before,.desktop-shell .dashboard-hero::after { content:"◆◇◆"; position:absolute; left:48%; top:-15px; padding:0 3px; background:var(--desk-paper); color:var(--desk-primary); font:15px serif; pointer-events:none; z-index:1; }
  .desktop-shell .dashboard-hero::after { top:auto; bottom:-15px; }
  .desktop-shell .dashboard-hero-copy { padding-top:2.1%; }
  .desktop-shell .dashboard-hero-note { top:20%; }
  .desktop-shell .dashboard-parent-summary { margin-top:16px; }
  .desk-parent-summary { margin-top:18px; padding:18px; }
  .desktop-shell .dashboard-metric { padding:5px 7px; border-width:8px; border-image-width:8px; border-radius:10px; gap:20px; }
  .desktop-shell .dashboard-panel { padding:3px 5px 2px; border-width:8px; border-image-width:8px; border-radius:10px; }
  .desktop-shell .dashboard-panel header { margin-bottom:5px; }
  .desktop-shell .dashboard-metrics { gap:12px; margin:14px 0 12px; }
  .desktop-shell .dashboard-task-list { gap:6px; }.desktop-shell .dashboard-task-list article { min-height:53px; padding:7px 9px; }
  .desktop-shell .dashboard-quote-paper { min-height:116px; padding-top:12px; }
  .desktop-shell:not(.dashboard-view) .topbar { padding-top:20px; }
  .desktop-shell:not(.dashboard-view) #page-title { margin-top:12px; }
  .desktop-shell:not(.dashboard-view) .dashboard-greeting-copy { margin-top:5px; }
  .desk-section-heading { min-height:32px; margin-bottom:2px; }
  .desk-section { margin-bottom:9px; }
  .desk-logs aside button { height:101px; min-height:101px; margin-bottom:17px; }
  .desk-logs aside span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .desk-log-detail .markdown-body { max-height:calc(100dvh - 286px); }
  .desk-timeline { max-height:calc(100dvh - 256px); }
  .desk-products > .desk-rail-controls { top:auto; bottom:-20px; right:0; }
  .desk-card:has(.desk-more[open]) { min-height:225px; }
  .desk-card:has(button:active) { transform:scale(.995); }
  .desktop-shell[data-desktop-page="shop"] .topbar { position:sticky; top:-60px; z-index:4; background:var(--desk-paper); }
  .desktop-shop-scrolled #page-title,.desktop-shop-scrolled .dashboard-greeting-copy,.desktop-shop-scrolled .dashboard-top-motto { visibility:hidden; }
  .desktop-shell.desktop-shop-scrolled #today-label { position:absolute; top:86px; left:22px; }
  .desktop-shell.desktop-shop-scrolled .dashboard-day-note { position:absolute; top:84px; left:119px; }
  .desktop-shell.desktop-shop-scrolled .account-strip { top:80px; }
  .desktop-shop-scrolled .desk-products .desk-rail-controls { visibility:hidden; }
  .desk-table { font-size:12px; }
  .desk-reviews .desk-status.completed { color:var(--desk-theme-primary,#fc2381); background:var(--desk-theme-tint,#ffdcf0); }
  .desk-reviews .desk-status.fulfilled { color:var(--desk-theme-return-ink,#ec71ac); background:var(--desk-theme-return-bg,#fff0fa); }
  .desk-section:has(.desk-table-full) .desk-section-heading { margin-bottom:8px; }
  .desk-table-full .desk-table td:nth-child(3),.desk-table-full .desk-table td:nth-child(4) { padding-inline:6px; font-size:12px; white-space:nowrap; }
  .desktop-shell .dashboard-metric strong { line-height:1; }
  .desktop-shell .dashboard-metric small,.desktop-shell .dashboard-metric em { line-height:1.35; }
  .desktop-shell .dashboard-task-list h3 { margin-bottom:2px; }
  .desktop-shell .dashboard-task-list p b { padding-block:2px; }

  /* Color-only overrides for existing home surfaces; geometry and image pixels stay intact. */
  [data-desktop-palette] .desktop-shell .brand small,[data-desktop-palette] .desktop-shell .dashboard-sidebar-motto small { color:var(--desk-theme-sidebar-ink,#c7b7c3); }
  [data-desktop-palette] .desktop-shell #avatar { color:var(--desk-theme-sidebar-ink,#fff); }
  [data-desktop-palette] .desktop-shell .dashboard-hero-copy > p:last-of-type { color:var(--desk-theme-muted,#67515c); }
  [data-desktop-palette] .desktop-shell .dashboard-hero-note { color:var(--desk-theme-muted,#6f5061); border-color:var(--desk-theme-line,#ac7e9170); }
  [data-desktop-palette] .desktop-shell .dashboard-progress > div { color:var(--desk-theme-ink,#2d2637); }
  [data-desktop-palette] .desktop-shell .dashboard-progress { background:var(--desk-theme-glass,#fff5); box-shadow:0 0 24px var(--desk-theme-glow,#fff5); }
  [data-desktop-palette] .desktop-shell .dashboard-progress::before { border-color:var(--desk-theme-card,#ffffffe0); }
  [data-desktop-palette] .desktop-shell .ring-track { stroke:var(--desk-theme-tint,#fffffff0); }
  [data-desktop-palette] .desktop-shell .dashboard-tags span { background:var(--desk-theme-glass,#ffffffe3); color:var(--desk-theme-ink,#403343); border-color:var(--desk-theme-faint,#fff9); }
  [data-desktop-palette] .desktop-shell .dashboard-edit-hero { background:var(--desk-theme-glass,#ffffffa6); color:var(--desk-theme-muted,#86576b); }
  [data-desktop-palette] .desktop-shell .dashboard-cta { background:var(--desk-theme-cta,linear-gradient(110deg,color-mix(in srgb,var(--dash-primary) 65%,var(--secondary)),var(--dash-primary))); color:var(--desk-theme-button-ink,#fff); }
  [data-desktop-palette] .desktop-shell .dashboard-week .today { color:var(--desk-theme-button-ink,#fff); }
  [data-desktop-palette] .desktop-shell .dashboard-metric:last-child .dashboard-metric-icon { background:var(--desk-theme-pending-bg); color:var(--desk-theme-pending-ink); }
  [data-desktop-palette] .desktop-shell .dashboard-metric:last-child svg { fill:color-mix(in srgb,var(--desk-theme-pending-ink) 20%,transparent); }
  [data-desktop-palette] .desktop-shell .dashboard-hero[data-custom] .dashboard-hero-media::after { background:var(--desk-theme-hero-veil,linear-gradient(90deg,#fff6f9f2,#fff6f9c9 36%,#fff6f918 58%,#fff6f999)); }
  @media (max-width:1150px) {
    .desktop-shell .account-strip { gap:6px; }.desktop-shell .dashboard-search { width:150px; }
    .desktop-shell .avatar-button { min-width:120px; }.desktop-shell .account-copy { max-width:68px; }
    .desktop-shell .dashboard-day-note { display:none; }
    .desk-select { flex-basis:170px; }.desk-filter { gap:8px; }
    .desk-products .desk-rail { --product-width:calc((100cqw - 26px)/3); }
    .desk-section-heading p { max-width:24ch; }.desk-import-actions { gap:10px; }.desk-import-actions .desk-button { padding-inline:15px; }
    .desk-purchase-row { grid-template-columns:105px minmax(0,1fr) 15% 13% 105px; gap:10px; }
  }
}
