:root { --ink:#202226; --muted:#65686e; --line:#dedfe3; --paper:#fbfbfc; --blue:#0d63c7; --red:#bd381d; --wine:#7d1e2d; --rose:#fff1f0; --cream:#fff8f2; --green:#237264; --shadow:0 16px 44px rgba(31,33,37,.09); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
button { cursor:pointer; }
.project-header,.app-header { min-height:76px; padding:0 max(32px,calc((100% - 1420px)/2)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); background:rgba(255,255,255,.92); position:sticky; top:0; z-index:10; backdrop-filter:blur(16px); }
.project-brand,.app-logo { display:flex; align-items:center; gap:10px; font-size:17px; font-weight:780; }.project-brand span,.app-mark { display:grid; width:32px; aspect-ratio:1; place-items:center; border-radius:50%; background:var(--blue); color:#fff; font-size:12px; font-weight:800; }.project-header nav,.app-header nav { display:flex; align-items:center; gap:24px; font-size:14px; font-weight:680; }.header-cta { padding:10px 16px; border-radius:6px; background:var(--ink); color:#fff; }
.directory-hero { width:min(100% - 64px,1420px); margin:0 auto; padding:94px 0 72px; display:grid; gap:20px; }.kicker,.catalog-index,.output-type { margin:0 0 14px; color:var(--blue); font-size:12px; font-weight:800; letter-spacing:.04em; }.directory-hero h1,.beauty-intro h1 { margin:0; max-width:820px; font-size:58px; line-height:1.14; letter-spacing:0; }.directory-hero > p { max-width:620px; margin:0 0 18px; color:var(--muted); font-size:17px; line-height:1.8; }.project-stats { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }.project-stats div { padding:22px 0; border-right:1px solid var(--line); display:flex; gap:12px; align-items:baseline; }.project-stats strong { font-size:32px; }.project-stats span { color:var(--muted); font-size:14px; }
.catalog { width:min(100% - 64px,1420px); margin:0 auto 90px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }.catalog-card { min-height:570px; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:8px; overflow:hidden; background:#fff; transition:transform .22s ease,box-shadow .22s ease; }.catalog-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }.catalog-image { height:220px; background:#eceef2; overflow:hidden; }.catalog-image img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }.catalog-card:hover img { transform:scale(1.04); }.relay-graphic { display:flex; flex-direction:column; justify-content:end; padding:24px; color:#fff; background:linear-gradient(135deg,#1a55a3,#38a0bd); }.relay-graphic span { font-size:76px; font-weight:850; }.relay-graphic small { font-size:11px; font-weight:700; }.catalog-copy { padding:26px; display:flex; flex-direction:column; flex:1; }.catalog-copy h2 { margin:0 0 14px; font-size:27px; }.catalog-copy > p:not(.catalog-index) { margin:0; color:var(--muted); line-height:1.7; }.catalog-copy ul { list-style:none; padding:20px 0; margin:0; display:grid; gap:9px; }.catalog-copy li::before { content:""; display:inline-block; width:7px; aspect-ratio:1; margin-right:8px; border-radius:50%; background:var(--blue); }.catalog-link { margin-top:auto; display:flex; justify-content:space-between; align-items:center; padding-top:18px; border-top:1px solid var(--line); color:var(--blue); font-weight:760; }.catalog-link span { font-size:22px; }.beauty-card .catalog-index,.beauty-card .catalog-link { color:#a83d62; }.beauty-card li::before { background:#a83d62; }.project-footer { padding:28px max(32px,calc((100% - 1420px)/2)); display:flex; justify-content:space-between; border-top:1px solid var(--line); color:var(--muted); font-size:14px; }
.app-header { padding:0 28px; }.app-header nav { gap:18px; }.app-logo .app-mark { background:var(--red); border-radius:8px; font-size:16px; }.credit-chip { border:0; border-radius:999px; padding:9px 12px; background:#fff0e9; color:var(--red); font-size:13px; font-weight:760; }.avatar { width:34px; aspect-ratio:1; border:0; border-radius:50%; background:var(--ink); color:#fff; font-weight:760; }.app-shell { min-height:calc(100vh - 76px); display:grid; grid-template-columns:230px minmax(0,1fr); }.app-sidebar { padding:26px 14px; display:flex; flex-direction:column; gap:5px; border-right:1px solid var(--line); background:#fff; }.app-sidebar > p { margin:0 12px 12px; color:#8c8f94; font-size:11px; font-weight:800; }.tool-nav { min-height:45px; padding:0 12px; display:flex; align-items:center; gap:12px; border:0; border-radius:5px; background:transparent; color:#4f535a; text-align:left; font-size:14px; font-weight:680; }.tool-nav span { color:#969aa0; font-size:11px; }.tool-nav:hover,.tool-nav.is-active { background:#fff1eb; color:var(--red); }.tool-nav.is-active span { color:var(--red); }.side-bottom { margin-top:auto; padding:18px 12px 0; border-top:1px solid var(--line); display:grid; gap:14px; font-size:13px; color:#777b81; }.app-main { padding:44px clamp(24px,4vw,64px) 70px; background:#f8f7f5; }.workspace-head,.section-line { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; }.workspace-head h1,.section-line h2 { margin:0; font-size:34px; }.workspace-head p:not(.kicker) { max-width:620px; margin:12px 0 0; color:var(--muted); line-height:1.7; }.quiet-button { padding:10px 13px; border:1px solid var(--line); border-radius:5px; background:#fff; color:#4f535a; font-size:13px; }.mode-strip { display:flex; gap:8px; padding:30px 0 18px; overflow:auto; }.mode-chip { flex:0 0 auto; padding:10px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; color:#62666c; font-size:13px; }.mode-chip.is-active { border-color:var(--red); background:var(--red); color:#fff; }.studio-grid { display:grid; grid-template-columns:minmax(250px,.75fr) minmax(360px,1.25fr) minmax(190px,.55fr); gap:16px; }.food-form,.preview-panel,.template-panel { padding:20px; border:1px solid var(--line); border-radius:8px; background:#fff; }.panel-title { display:flex; align-items:center; gap:9px; margin-bottom:22px; }.panel-title span { display:grid; width:23px; aspect-ratio:1; place-items:center; border-radius:50%; background:#ffe4d8; color:var(--red); font-size:11px; font-weight:800; }.panel-title strong { font-size:15px; }.food-form { display:grid; align-content:start; gap:15px; }.food-form label,.beauty-form label { display:grid; gap:7px; color:#50545a; font-size:12px; font-weight:750; }.food-form input,.food-form select,.beauty-form input,.beauty-form textarea { width:100%; padding:10px 11px; border:1px solid #dfe0e3; border-radius:4px; background:#fff; color:var(--ink); outline-color:var(--red); font-size:13px; }.two-col { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.option-row,.content-tone { display:flex; align-items:center; flex-wrap:wrap; gap:6px; color:#555960; font-size:12px; font-weight:750; }.option { padding:7px 10px; border:1px solid #dedfe3; border-radius:4px; background:#fff; color:#666a70; font-size:12px; }.option.is-active { border-color:#e5a187; background:#fff1eb; color:var(--red); }.generate-button { min-height:48px; margin-top:6px; display:flex; align-items:center; justify-content:space-between; padding:0 14px; border:0; border-radius:5px; background:var(--red); color:#fff; font-size:14px; font-weight:760; }.generate-button small { font-size:11px; font-weight:600; opacity:.8; }.preview-panel { display:grid; grid-template-rows:auto 1fr auto; min-height:520px; }.preview-top { display:flex; justify-content:space-between; align-items:start; margin-bottom:16px; }.preview-top div { display:grid; gap:4px; }.preview-top span { color:#83868b; font-size:11px; font-weight:800; }.preview-top strong { font-size:19px; }.status-dot { color:var(--green)!important; }.status-dot::before { content:""; display:inline-block; width:7px; aspect-ratio:1; margin-right:6px; border-radius:50%; background:var(--green); }.food-preview { position:relative; min-height:340px; overflow:hidden; border-radius:5px; background:#d7c2a8; }.food-preview img { width:100%; height:100%; position:absolute; object-fit:cover; }.preview-overlay { position:absolute; right:10px; bottom:10px; padding:7px 9px; border-radius:3px; background:rgba(25,25,25,.66); color:#fff; font-size:11px; }.preview-actions { display:flex; gap:8px; padding-top:16px; }.preview-actions button { flex:1; min-height:36px; border:1px solid var(--line); border-radius:4px; background:#fff; color:#5b5f65; font-size:12px; }.preview-actions button:last-child { border-color:var(--red); background:var(--red); color:#fff; }.template-panel { display:grid; align-content:start; gap:8px; }.template { display:grid; gap:4px; padding:11px; border:1px solid var(--line); border-radius:5px; background:#fff; text-align:left; font-size:13px; font-weight:720; }.template small { color:#868a90; font-size:11px; font-weight:500; }.template.is-active { border-color:#e8a48a; background:#fff7f4; color:var(--red); }.compliance-note { margin-top:16px; padding:12px; border-radius:5px; background:#f4f4f2; color:#5b5f64; font-size:12px; line-height:1.55; }.compliance-note p { margin:5px 0 0; }.tasks { margin-top:48px; }.section-line h2 { font-size:25px; }.task-list { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:18px; }.task-list article { display:grid; grid-template-columns:46px 1fr auto; align-items:center; gap:12px; padding:13px; border:1px solid var(--line); border-radius:6px; background:#fff; }.task-thumb { width:46px; aspect-ratio:1; border-radius:4px; background:#f4cc90; }.task-thumb.red { background:#dc725b; }.task-thumb.ink { background:#4d4144; }.task-list article div { display:grid; gap:5px; min-width:0; }.task-list strong { font-size:13px; }.task-list small { color:#85898f; font-size:11px; }.done { color:var(--green); font-size:11px; font-style:normal; font-weight:700; }
.beauty-app { background:#fff9fa; }.beauty-app .app-mark { background:#a83d62; }.beauty-workspace { width:min(100% - 64px,1340px); margin:0 auto; padding:72px 0; }.beauty-intro { max-width:800px; }.beauty-intro .kicker,.beauty-app .output-type { color:#a83d62; }.beauty-intro h1 { font-size:54px; }.beauty-intro > p:not(.kicker) { max-width:600px; color:var(--muted); line-height:1.8; }.beauty-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:25px; }.beauty-tags span { padding:8px 11px; border-radius:999px; background:#ffe7ef; color:#9b3056; font-size:13px; font-weight:700; }.beauty-editor { display:grid; grid-template-columns:.72fr .92fr 1.15fr; margin-top:46px; border:1px solid #eadce1; border-radius:8px; overflow:hidden; background:#fff; }.beauty-tabs { grid-column:1/-1; display:flex; gap:24px; padding:0 24px; border-bottom:1px solid #eee2e6; }.beauty-tab { min-height:52px; border:0; border-bottom:2px solid transparent; background:transparent; color:#77717a; font-size:14px; font-weight:720; }.beauty-tab.is-active { border-color:#a83d62; color:#a83d62; }.beauty-form,.beauty-output { padding:26px; }.beauty-form { display:grid; align-content:start; gap:16px; border-right:1px solid #eee2e6; }.beauty-form textarea { min-height:112px; resize:vertical; }.beauty-generate { background:#a83d62; }.beauty-output { grid-column:2/-1; align-self:stretch; background:#fffafb; }.beauty-output h2 { margin:0 0 18px; font-size:31px; line-height:1.35; }.beauty-output > p:not(.output-type) { max-width:650px; color:#55515a; line-height:1.9; }.beauty-output ul { display:grid; gap:10px; padding:0; margin:26px 0; list-style:none; }.beauty-output li { padding-left:17px; color:#625d65; font-size:14px; }.beauty-output li::before { content:""; display:inline-block; width:7px; aspect-ratio:1; margin-left:-17px; margin-right:10px; border-radius:50%; background:#c35779; }.output-footer { display:flex; justify-content:space-between; align-items:center; padding-top:16px; border-top:1px solid #eee2e6; color:#8c858e; font-size:12px; }.output-footer button { padding:9px 12px; border:1px solid #dcb1c0; border-radius:4px; background:#fff; color:#9f3459; font-size:12px; font-weight:700; }.toast { position:fixed; right:24px; bottom:24px; z-index:20; padding:12px 15px; border-radius:6px; background:#24262a; color:#fff; font-size:13px; opacity:0; pointer-events:none; transform:translateY(8px); transition:opacity .2s ease,transform .2s ease; }.toast.is-visible { opacity:1; transform:none; }
@media (max-width:900px) { .directory-hero { grid-template-columns:1fr; }.catalog { grid-template-columns:1fr; }.catalog-card { min-height:0; }.studio-grid { grid-template-columns:1fr; }.template-panel { grid-template-columns:repeat(3,1fr); }.template-panel .panel-title,.template-panel .compliance-note { grid-column:1/-1; }.app-shell { grid-template-columns:1fr; }.app-sidebar { display:none; }.task-list { grid-template-columns:1fr; }.beauty-editor { grid-template-columns:1fr; }.beauty-output { grid-column:auto; border-top:1px solid #eee2e6; }.beauty-form { border-right:0; }.beauty-workspace { padding-top:48px; } }
@media (max-width:620px) { .project-header,.app-header { min-height:64px; padding:0 16px; }.project-header nav,.app-header nav { gap:11px; font-size:12px; }.project-header nav a:not(.header-cta),.app-header nav a { display:none; }.directory-hero,.catalog,.beauty-workspace { width:min(100% - 32px,1340px); }.directory-hero { padding:54px 0 42px; }.directory-hero h1,.beauty-intro h1 { font-size:38px; }.project-stats strong { font-size:25px; }.project-stats { grid-template-columns:1fr; }.project-stats div { border-bottom:1px solid var(--line); }.catalog { margin-bottom:48px; }.catalog-image { height:190px; }.app-main { padding:30px 16px 50px; }.workspace-head { align-items:start; }.workspace-head h1 { font-size:28px; }.quiet-button { display:none; }.mode-strip { padding-top:20px; }.two-col { grid-template-columns:1fr; }.template-panel { grid-template-columns:1fr; }.preview-panel { min-height:430px; }.food-preview { min-height:260px; }.preview-actions { flex-wrap:wrap; }.preview-actions button { flex:1 1 40%; }.beauty-workspace { padding-bottom:44px; }.beauty-editor { margin-top:32px; }.beauty-tabs { overflow:auto; padding:0 16px; gap:18px; }.beauty-tab { white-space:nowrap; }.beauty-output h2 { font-size:26px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; } }

/* Project directory V2: a focused, asymmetric catalog for choosing a real workspace. */
.project-directory { --directory-ink:#20252b; --directory-muted:#65717d; --directory-line:#d9e0e5; --directory-paper:#f5f7f8; --directory-surface:#fff; --directory-blue:#2364b1; --directory-rose:#a84e69; background:var(--directory-paper); color:var(--directory-ink); }
.project-directory .project-header { min-height:70px; border-color:var(--directory-line); background:rgba(245,247,248,.92); }
.project-directory .project-brand { color:var(--directory-ink); font-size:16px; font-weight:800; }
.project-directory .project-header nav { gap:22px; color:#535d67; font-size:13px; font-weight:700; }
.project-directory .project-mobile-account { display:none; }
.project-directory .account-credits { color:var(--directory-blue); }
.project-directory .project-header nav > a:not(.header-cta):hover { color:var(--directory-blue); }
.project-directory .header-cta { padding:9px 14px; border-radius:7px; background:var(--directory-ink); transition:background-color .2s ease,transform .2s ease; }
.project-directory .header-cta:hover { background:#404951; transform:translateY(-1px); }
.project-directory .directory-hero { width:min(100% - 64px,1240px); padding:clamp(58px,8vw,112px) 0 46px; gap:0; }
.project-directory .directory-hero h1 { max-width:690px; color:var(--directory-ink); font-size:clamp(36px,3.7vw,52px); font-weight:800; line-height:1.16; }
.project-directory .directory-hero > p { max-width:510px; margin:20px 0 0; color:var(--directory-muted); font-size:16px; line-height:1.8; }
.project-directory .catalog { width:min(100% - 64px,1240px); grid-template-columns:repeat(12,minmax(0,1fr)); gap:18px; margin:0 auto 88px; }
.project-directory .catalog-heading { grid-column:1 / -1; padding:0 0 19px; border-bottom:1px solid var(--directory-line); }
.project-directory .catalog-heading h2 { margin:0; color:var(--directory-ink); font-size:22px; line-height:1.3; }
.project-directory .catalog-heading p { margin:7px 0 0; color:var(--directory-muted); font-size:14px; }
.project-directory .catalog-card { min-height:0; border:1px solid var(--directory-line); border-radius:14px; background:var(--directory-surface); box-shadow:none; }
.project-directory .catalog-card:hover { transform:none; box-shadow:0 18px 40px rgba(32,44,55,.09); }
.project-directory .catalog-feature { grid-column:1 / -1; display:grid; grid-template-columns:minmax(280px,.92fr) minmax(420px,1.08fr); min-height:390px; }
.project-directory .catalog-feature .catalog-copy { grid-column:1; grid-row:1; padding:clamp(28px,4vw,54px); }
.project-directory .catalog-feature .catalog-image { grid-column:2; grid-row:1; height:auto; min-height:390px; }
.project-directory .beauty-card { grid-column:1 / span 7; }
.project-directory .relay-card { grid-column:8 / -1; }
.project-directory .catalog-image { height:240px; background:#e6ebed; }
.project-directory .catalog-image img { transition:transform .55s cubic-bezier(.2,.7,.2,1); }
.project-directory .catalog-card:hover .catalog-image img { transform:scale(1.035); }
.project-directory .catalog-copy { padding:26px 28px 25px; }
.project-directory .catalog-type { margin:0 0 18px; color:#526473; font-size:13px; font-weight:750; }
.project-directory .beauty-card .catalog-type { color:var(--directory-rose); }
.project-directory .relay-card .catalog-type { color:var(--directory-blue); }
.project-directory .catalog-copy h2 { margin:0; color:var(--directory-ink); font-size:29px; font-weight:800; line-height:1.2; }
.project-directory .catalog-copy > p:not(.catalog-type) { min-height:0; margin:13px 0 0; color:var(--directory-muted); font-size:14px; line-height:1.78; }
.project-directory .catalog-capabilities { display:flex; flex-wrap:wrap; gap:7px 16px; margin:22px 0 26px; padding:0; list-style:none; color:#4d5b66; font-size:13px; }
.project-directory .catalog-capabilities li { display:inline-flex; align-items:center; }
.project-directory .catalog-capabilities li + li::before { width:3px; height:3px; margin-right:16px; border-radius:50%; background:#aeb8c0; content:""; }
.project-directory .catalog-capabilities li::before { display:none; }
.project-directory .catalog-link { width:max-content; min-height:0; gap:11px; margin-top:auto; padding:0 0 5px; border-top:0; border-bottom:1px solid currentColor; color:var(--directory-ink); font-size:14px; font-weight:800; line-height:1.4; transition:color .2s ease,gap .2s ease; }
.project-directory .catalog-link::after { width:7px; height:7px; border-top:1.5px solid currentColor; border-right:1.5px solid currentColor; transform:rotate(45deg); content:""; }
.project-directory .catalog-link:hover { gap:16px; color:var(--directory-blue); }
.project-directory .beauty-card .catalog-link:hover { color:var(--directory-rose); }
.project-directory .relay-graphic { position:relative; justify-content:flex-end; gap:9px; padding:28px; overflow:hidden; background:#dfe8ea; color:#273b43; }
.project-directory .relay-graphic::before,.project-directory .relay-graphic::after { position:absolute; border:1px solid rgba(39,59,67,.25); border-radius:50%; content:""; }
.project-directory .relay-graphic::before { width:270px; height:270px; top:-142px; right:-62px; }
.project-directory .relay-graphic::after { width:174px; height:174px; right:30px; bottom:-104px; }
.project-directory .relay-graphic span,.project-directory .relay-graphic small { position:relative; z-index:1; }
.project-directory .relay-graphic span { font-size:clamp(56px,7vw,86px); font-weight:800; line-height:.85; }
.project-directory .relay-graphic small { color:#536871; font-size:11px; font-weight:800; letter-spacing:.06em; }
.project-directory .project-footer { padding:24px max(32px,calc((100% - 1240px)/2)); border-color:var(--directory-line); background:transparent; color:#69747d; }
.project-directory .project-footer a:hover { color:var(--directory-blue); }
.project-directory a:focus-visible { outline:3px solid rgba(35,100,177,.45); outline-offset:4px; }
.project-directory .catalog-card { animation:directory-arrive .62s cubic-bezier(.2,.7,.2,1) both; }
.project-directory .catalog-feature { animation-delay:.05s; }.project-directory .beauty-card { animation-delay:.13s; }.project-directory .relay-card { animation-delay:.21s; }
@keyframes directory-arrive { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:860px) { .project-directory .catalog-feature { grid-template-columns:1fr 1fr; }.project-directory .beauty-card { grid-column:1 / span 6; }.project-directory .relay-card { grid-column:7 / -1; } }
@media (max-width:680px) { .project-directory .project-header { min-height:64px; padding:0 16px; }.project-directory .project-header nav { gap:12px; }.project-directory .project-header nav > a:not(.header-cta),.project-directory .project-desktop-account { display:none; }.project-directory .project-mobile-account { display:inline-flex; min-width:0; }.project-directory .project-mobile-account .account-actions { gap:8px; }.project-directory .project-mobile-account .account-profile { max-width:108px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.project-directory .project-mobile-account .account-credits { display:none; }.project-directory .project-brand { font-size:15px; }.project-directory .directory-hero,.project-directory .catalog { width:min(100% - 32px,1240px); }.project-directory .directory-hero { padding:50px 0 34px; }.project-directory .directory-hero h1 { font-size:36px; }.project-directory .directory-hero > p { margin-top:16px; font-size:15px; }.project-directory .catalog { display:grid; grid-template-columns:1fr; gap:16px; margin-bottom:54px; }.project-directory .catalog-heading,.project-directory .catalog-feature,.project-directory .beauty-card,.project-directory .relay-card { grid-column:auto; }.project-directory .catalog-heading { padding-bottom:15px; }.project-directory .catalog-feature { display:flex; flex-direction:column-reverse; }.project-directory .catalog-feature .catalog-copy,.project-directory .catalog-feature .catalog-image { grid-column:auto; grid-row:auto; }.project-directory .catalog-feature .catalog-image { min-height:0; height:224px; }.project-directory .catalog-image { height:210px; }.project-directory .catalog-copy,.project-directory .catalog-feature .catalog-copy { padding:23px 21px 22px; }.project-directory .catalog-type { margin-bottom:13px; }.project-directory .catalog-copy h2 { font-size:25px; }.project-directory .catalog-capabilities { margin:18px 0 23px; gap:7px 12px; font-size:12px; }.project-directory .relay-graphic { padding:23px; }.project-directory .project-footer { padding:22px 16px; }.project-directory .catalog-card { animation:none; } }
@media (prefers-reduced-motion:reduce) { .project-directory .catalog-card,.project-directory .catalog-image img,.project-directory .header-cta,.project-directory .catalog-link { animation:none; transition:none; } }

/* Restaurant workspace: editorial studio hierarchy with warm, high-contrast controls. */
.restaurant-app { background:#f3f1ed; }
.restaurant-app .app-header { border-bottom-color:#e3ded7; background:rgba(255,253,250,.96); }
.restaurant-app .app-shell { grid-template-columns:248px minmax(0,1fr); }
.restaurant-app .app-sidebar { padding:26px 15px 18px; border-right-color:#e2ddd6; background:#fffdfa; }
.restaurant-app .app-sidebar > p { margin-bottom:16px; color:#9a7367; letter-spacing:.08em; }
.restaurant-app .tool-nav { position:relative; min-height:48px; border-radius:6px; color:#42434a; transition:background .18s ease,color .18s ease; }
.restaurant-app .tool-nav::before { content:""; position:absolute; left:0; top:11px; bottom:11px; width:3px; border-radius:3px; background:transparent; }
.restaurant-app .tool-nav:hover { background:#fff3ee; color:#a6351e; }
.restaurant-app .tool-nav.is-active { background:#fff0e9; color:#b9371e; }
.restaurant-app .tool-nav.is-active::before { background:#ca3c21; }
.restaurant-app .side-summary { display:grid; gap:4px; margin:24px 4px 18px; padding:15px; border:1px solid #ead8d0; border-radius:7px; background:#fff6f1; color:#80412f; }
.restaurant-app .side-summary span { font-size:11px; font-weight:760; }.restaurant-app .side-summary strong { font-size:31px; line-height:1; }.restaurant-app .side-summary small { color:#8d6c61; font-size:11px; }
.restaurant-app .side-bottom { margin-top:auto; }
.restaurant-app .app-main { padding:48px clamp(28px,4vw,72px) 74px; background:linear-gradient(135deg,#f7f5f1 0%,#f5f1ec 100%); }
.restaurant-app .workspace-head { padding-bottom:22px; border-bottom:1px solid #e4ddd6; align-items:start; }
.restaurant-app .workspace-head h1 { color:#25201f; font-size:38px; line-height:1.15; }
.restaurant-app .workspace-head p:not(.kicker) { max-width:655px; color:#625d5a; font-size:16px; line-height:1.75; }
.restaurant-app .workspace-head .kicker { color:#b9361d; }
.workspace-status { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }.workspace-status span { padding:6px 9px; border-radius:999px; background:#f0ece7; color:#746d69; font-size:12px; font-weight:700; }.workspace-status span:last-child { background:#eaf5f1; color:#207060; }.workspace-status span:last-child::before { content:""; display:inline-block; width:6px; aspect-ratio:1; margin-right:6px; border-radius:50%; background:#2a8b74; }
.restaurant-app .quiet-button { min-height:40px; border-color:#ded6cf; background:#fffdfa; color:#514a47; font-weight:700; }
.restaurant-app .mode-strip { gap:0; padding:22px 0 20px; }.restaurant-app .mode-chip { min-width:104px; border-radius:0; border-right:0; background:#fffdfa; font-weight:700; }.restaurant-app .mode-chip:first-child { border-radius:6px 0 0 6px; }.restaurant-app .mode-chip:last-child { border-right:1px solid var(--line); border-radius:0 6px 6px 0; }.restaurant-app .mode-chip.is-active { border-color:#c53b20; background:#c53b20; }.restaurant-app .mode-chip.is-active + .mode-chip { border-left-color:#c53b20; }
.restaurant-app .studio-grid { grid-template-columns:minmax(278px,.8fr) minmax(420px,1.38fr) minmax(208px,.58fr); gap:18px; }.restaurant-app .food-form,.restaurant-app .preview-panel,.restaurant-app .template-panel { border-color:#e1dcd6; border-radius:8px; box-shadow:0 1px 0 rgba(64,51,45,.04); }.restaurant-app .food-form { padding:22px; gap:16px; }.restaurant-app .preview-panel { padding:18px; min-height:548px; }.restaurant-app .template-panel { padding:17px; }.restaurant-app .panel-title { padding-bottom:14px; margin-bottom:8px; border-bottom:1px solid #eee9e4; }.restaurant-app .panel-title span { background:#fde5dc; color:#bd3a20; }.restaurant-app .food-form label { color:#4a4542; font-size:12px; }.restaurant-app .food-form input,.restaurant-app .food-form select { min-height:40px; border-color:#dcd7d2; background:#fffefa; font-size:14px; }.restaurant-app .food-form input:focus,.restaurant-app .food-form select:focus { border-color:#c54023; box-shadow:0 0 0 3px rgba(197,64,35,.12); }.restaurant-app .option-row { padding-top:2px; }.restaurant-app .option { min-height:32px; border-radius:5px; font-weight:700; }.restaurant-app .option.is-active { border-color:#dd866d; background:#fff0ea; color:#b5361d; }.restaurant-app .generate-button { min-height:52px; border-radius:6px; background:#c53b20; box-shadow:0 7px 16px rgba(175,50,26,.16); transition:background .18s ease,transform .18s ease,box-shadow .18s ease; }.restaurant-app .generate-button:hover { background:#ac311a; box-shadow:0 10px 22px rgba(175,50,26,.22); transform:translateY(-1px); }.restaurant-app .food-preview { min-height:365px; border-radius:6px; }.restaurant-app .preview-top { padding:2px 2px 14px; }.restaurant-app .preview-top strong { font-size:21px; }.restaurant-app .preview-actions { gap:9px; }.restaurant-app .preview-actions button { min-height:39px; border-color:#ded8d2; background:#fffdfa; font-weight:700; }.restaurant-app .preview-actions button:last-child { border-color:#c53b20; background:#c53b20; }.restaurant-app .template { min-height:62px; padding:12px; border-color:#e1dcd6; transition:border-color .18s ease,background .18s ease; }.restaurant-app .template:hover { border-color:#d57b61; background:#fff8f4; }.restaurant-app .compliance-note { margin-top:22px; border:1px solid #ece6df; background:#f8f6f2; }.restaurant-app .tasks { margin-top:54px; padding-top:28px; border-top:1px solid #e4ddd6; }.restaurant-app .task-list { gap:14px; }.restaurant-app .task-list article { min-height:72px; border-color:#e2ddd7; background:#fffdfa; transition:transform .18s ease,box-shadow .18s ease; }.restaurant-app .task-list article:hover { transform:translateY(-2px); box-shadow:0 8px 20px rgba(56,44,37,.07); }
@media (max-width:900px) { .restaurant-app .app-shell { grid-template-columns:1fr; }.restaurant-app .studio-grid { grid-template-columns:1fr; }.restaurant-app .side-summary { display:none; } }
@media (max-width:620px) { .restaurant-app .app-main { padding:30px 16px 52px; }.restaurant-app .workspace-head { padding-bottom:18px; }.restaurant-app .workspace-head h1 { font-size:30px; }.restaurant-app .workspace-head p:not(.kicker) { font-size:16px; }.restaurant-app .mode-strip { margin:0 -16px; padding-left:16px; overflow:auto; }.restaurant-app .mode-chip { min-width:100px; }.restaurant-app .studio-grid { gap:14px; }.restaurant-app .food-form { padding:19px; }.restaurant-app .preview-panel { min-height:0; }.restaurant-app .food-preview { min-height:286px; }.restaurant-app .template-panel { padding:16px; }.restaurant-app .tasks { margin-top:38px; }.workspace-status { margin-top:14px; } }

/* Restaurant editorial reset: content first, one warm accent, no generic dashboard cards. */
.restaurant-app { --food-ink:#292623; --food-muted:#766f68; --food-line:#d8d1c8; --food-paper:#faf8f3; --food-red:#ca3a24; --food-red-soft:#f7e5df; background:var(--food-paper); color:var(--food-ink); }
.restaurant-app .app-header { min-height:68px; padding:0 28px; border-bottom-color:var(--food-line); background:rgba(250,248,243,.96); }
.restaurant-app .app-logo { gap:10px; color:var(--food-ink); }.restaurant-app .app-logo .app-mark { width:31px; border-radius:3px; background:var(--food-red); font-size:15px; }.restaurant-app .app-logo strong { font-size:16px; }.restaurant-app .app-logo em { padding-left:10px; border-left:1px solid var(--food-line); color:#958b82; font-size:10px; font-style:normal; font-weight:800; letter-spacing:.12em; }
.restaurant-app .app-header nav { gap:20px; color:#514b46; font-size:13px; }.restaurant-app .app-header nav a { transition:color .18s ease; }.restaurant-app .app-header nav a:hover { color:var(--food-red); }.restaurant-app .credit-chip { padding:7px 10px; border-radius:0; background:transparent; color:var(--food-red); font-size:13px; }.restaurant-app .credit-chip::after { content:" 积分"; margin-left:3px; color:#9a8d84; font-weight:600; }.restaurant-app .avatar { width:30px; border-radius:0; background:var(--food-ink); }
.restaurant-app .app-shell { min-height:calc(100vh - 68px); grid-template-columns:224px minmax(0,1fr); }.restaurant-app .app-sidebar { gap:0; padding:30px 20px 18px; border-right-color:var(--food-line); background:#f4f0e9; }.restaurant-app .app-sidebar > p { margin:0 0 18px; padding-bottom:10px; border-bottom:1px solid var(--food-line); color:#8f8177; font-size:11px; letter-spacing:.1em; }
.restaurant-app .tool-nav { min-height:44px; padding:0; border-radius:0; border-bottom:1px solid rgba(216,209,200,.72); color:#3d3936; font-size:14px; font-weight:700; }.restaurant-app .tool-nav span { width:28px; color:#a69589; font-family:Georgia,serif; font-size:12px; }.restaurant-app .tool-nav::before { display:none; }.restaurant-app .tool-nav:hover { background:transparent; color:var(--food-red); }.restaurant-app .tool-nav.is-active { background:transparent; color:var(--food-red); }.restaurant-app .tool-nav.is-active::after { content:""; width:7px; height:7px; margin-left:auto; background:var(--food-red); }
.restaurant-app .side-summary { gap:7px; margin:28px 0 18px; padding:14px 0; border:0; border-top:2px solid var(--food-ink); border-bottom:1px solid var(--food-line); border-radius:0; background:transparent; color:var(--food-ink); }.restaurant-app .side-summary span { color:#8c7e75; font-size:11px; }.restaurant-app .side-summary strong { font-family:Georgia,"Songti SC",SimSun,serif; font-size:22px; font-weight:600; }.restaurant-app .side-summary small { color:var(--food-muted); font-size:12px; }.restaurant-app .side-bottom { padding:15px 0 0; border-top:0; color:#716961; font-size:12px; }.restaurant-app .side-bottom a { transition:color .18s ease; }.restaurant-app .side-bottom a:hover { color:var(--food-red); }
.restaurant-app .app-main { max-width:1600px; padding:44px clamp(28px,5vw,86px) 72px; background:var(--food-paper); }.restaurant-app .workspace-head { align-items:end; padding-bottom:28px; border-bottom:2px solid var(--food-ink); }.restaurant-app .workspace-head .kicker { margin-bottom:11px; color:var(--food-red); font-size:11px; letter-spacing:.12em; }.restaurant-app .workspace-head h1 { max-width:720px; color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:48px; font-weight:600; line-height:1.06; }.restaurant-app .workspace-head p:not(.kicker) { max-width:650px; margin-top:14px; color:#5d5752; font-size:16px; line-height:1.75; }.restaurant-app .workspace-status { display:grid; justify-items:end; gap:6px; margin:0; color:#6b625c; font-size:12px; font-weight:700; }.restaurant-app .workspace-status span { padding:0; border-radius:0; background:transparent; color:inherit; }.restaurant-app .workspace-status span:first-child::before { content:"PROJECT / "; color:#a08e82; }.restaurant-app .workspace-status span:last-child { color:#287264; }.restaurant-app .workspace-status span:last-child::before { width:6px; margin-right:7px; background:#287264; }
.restaurant-app .mode-strip { align-items:center; gap:0; padding:0; border-bottom:1px solid var(--food-line); }.restaurant-app .mode-strip > span { min-width:132px; padding:18px 18px 18px 0; color:#82786f; font-size:12px; font-weight:800; }.restaurant-app .mode-chip { min-width:0; padding:18px 17px; border:0; border-left:1px solid var(--food-line); border-radius:0; background:transparent; color:#766f68; font-size:13px; font-weight:700; transition:background .18s ease,color .18s ease; }.restaurant-app .mode-chip:first-of-type,.restaurant-app .mode-chip:last-child { border-radius:0; }.restaurant-app .mode-chip:last-child { border-right:1px solid var(--food-line); }.restaurant-app .mode-chip:hover { background:#f2ebe4; color:var(--food-ink); }.restaurant-app .mode-chip.is-active { background:var(--food-ink); color:#fff; }.restaurant-app .mode-chip.is-active + .mode-chip { border-left-color:var(--food-ink); }
.restaurant-app .studio-grid { grid-template-columns:minmax(260px,.78fr) minmax(480px,1.55fr) minmax(220px,.67fr); gap:30px; padding-top:30px; }.restaurant-app .food-form,.restaurant-app .preview-panel,.restaurant-app .template-panel { min-width:0; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; }.restaurant-app .food-form { gap:18px; padding-right:30px; border-right:1px solid var(--food-line); }.restaurant-app .panel-title { align-items:baseline; gap:9px; margin:0 0 6px; padding:0 0 14px; border-bottom:1px solid var(--food-line); }.restaurant-app .panel-title span { width:auto; background:transparent; color:var(--food-red); font-family:Georgia,serif; font-size:15px; }.restaurant-app .panel-title strong { color:var(--food-ink); font-size:16px; }.restaurant-app .panel-title small { margin-left:auto; color:#9a8d83; font-size:11px; font-weight:600; }
.restaurant-app .food-form label { gap:7px; color:#5a534d; font-size:12px; font-weight:800; }.restaurant-app .food-form input,.restaurant-app .food-form select { min-height:39px; padding:8px 0; border:0; border-bottom:1px solid #cfc7be; border-radius:0; background:transparent; color:var(--food-ink); font-size:14px; outline:none; }.restaurant-app .food-form select { padding-right:4px; }.restaurant-app .food-form input:focus,.restaurant-app .food-form select:focus { border-bottom:2px solid var(--food-red); box-shadow:none; }.restaurant-app .two-col { gap:18px; }.restaurant-app .option-row { gap:8px; padding-top:2px; color:#5a534d; }.restaurant-app .option-row > span { margin-right:4px; }.restaurant-app .option { min-height:29px; padding:4px 10px; border:1px solid #cfc7be; border-radius:0; background:transparent; color:#716961; font-weight:700; }.restaurant-app .option.is-active { border-color:var(--food-red); background:var(--food-red-soft); color:var(--food-red); }.restaurant-app .generate-button { min-height:48px; margin-top:6px; padding:0 14px; border-radius:0; background:var(--food-red); box-shadow:none; font-size:14px; transition:background .18s ease,transform .18s ease; }.restaurant-app .generate-button small { color:#f9d4ca; text-transform:uppercase; letter-spacing:.08em; }.restaurant-app .generate-button:hover { background:#a92d1c; box-shadow:none; transform:none; }.restaurant-app .generate-button:disabled { opacity:.72; }
.restaurant-app .preview-panel { grid-template-rows:auto auto auto auto; align-content:start; min-height:0; }.restaurant-app .preview-top { align-items:end; margin:0 0 14px; padding:0; }.restaurant-app .preview-top div { gap:6px; }.restaurant-app .preview-top span { color:#93877d; font-size:10px; letter-spacing:.1em; }.restaurant-app .preview-top strong { color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:29px; font-weight:600; }.restaurant-app .status-dot { color:#2d7668!important; font-size:12px!important; }.restaurant-app .status-dot::before { width:6px; background:#2d7668; }.restaurant-app .food-preview { min-height:390px; border-radius:0; background:#dad2c8; }.restaurant-app .food-preview::after { content:""; position:absolute; inset:0; border:1px solid rgba(41,38,35,.13); pointer-events:none; }.restaurant-app .food-preview img { transition:transform .6s ease; }.restaurant-app .food-preview:hover img { transform:scale(1.015); }.restaurant-app .preview-overlay { right:0; bottom:0; border-radius:0; background:rgba(39,35,31,.9); font-size:11px; }.restaurant-app .preview-caption { display:grid; grid-template-columns:28px 1fr; gap:10px; padding:14px 0; border-bottom:1px solid var(--food-line); color:#5d5751; }.restaurant-app .preview-caption span { color:var(--food-red); font-family:Georgia,serif; font-size:14px; }.restaurant-app .preview-caption p { margin:0; font-size:13px; line-height:1.65; }.restaurant-app .preview-actions { gap:0; padding-top:14px; }.restaurant-app .preview-actions button { min-height:39px; border:0; border-right:1px solid var(--food-line); border-bottom:1px solid var(--food-line); border-radius:0; background:transparent; color:#5c554f; font-weight:700; transition:color .18s ease,background .18s ease; }.restaurant-app .preview-actions button:first-child { border-left:1px solid var(--food-line); }.restaurant-app .preview-actions button:hover { background:#f2ebe4; color:var(--food-red); }.restaurant-app .preview-actions button:last-child { border:1px solid var(--food-red); background:var(--food-red); color:#fff; }
.restaurant-app .template-panel { gap:0; padding-left:0; border-left:1px solid var(--food-line); }.restaurant-app .template-panel .panel-title { margin-left:26px; }.restaurant-app .template { min-height:0; gap:5px; padding:16px 0 15px 26px; border:0; border-bottom:1px solid var(--food-line); border-radius:0; background:transparent; color:var(--food-ink); font-size:14px; font-weight:700; transition:background .18s ease,color .18s ease; }.restaurant-app .template small { color:#897f77; font-size:11px; font-weight:600; }.restaurant-app .template:hover { border-color:var(--food-line); background:#f2ebe4; color:var(--food-red); }.restaurant-app .template.is-active { border-color:var(--food-line); background:var(--food-red-soft); color:var(--food-red); }.restaurant-app .compliance-note { margin:24px 0 0 26px; padding:13px 0 0; border:0; border-top:2px solid var(--food-ink); border-radius:0; background:transparent; color:#655d56; font-size:12px; }.restaurant-app .compliance-note p { margin-top:6px; }
.restaurant-app .tasks { margin-top:58px; padding-top:24px; border-top:2px solid var(--food-ink); }.restaurant-app .section-line { align-items:end; }.restaurant-app .section-line .kicker { color:var(--food-red); font-size:11px; letter-spacing:.1em; }.restaurant-app .section-line h2 { color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:31px; font-weight:600; }.restaurant-app .quiet-button { min-height:37px; padding:0 12px; border-color:var(--food-line); border-radius:0; background:transparent; color:#5c554e; font-weight:700; }.restaurant-app .quiet-button:hover { border-color:var(--food-red); color:var(--food-red); }.restaurant-app .task-list { gap:0; margin-top:18px; border-top:1px solid var(--food-line); }.restaurant-app .task-list article { min-height:82px; padding:14px 0; border:0; border-bottom:1px solid var(--food-line); border-radius:0; background:transparent; }.restaurant-app .task-list article + article { border-left:1px solid var(--food-line); padding-left:14px; }.restaurant-app .task-list article:hover { box-shadow:none; transform:none; }.restaurant-app .task-thumb { width:43px; border-radius:0; }.restaurant-app .task-list strong { color:var(--food-ink); font-size:13px; }.restaurant-app .task-list small { color:#897f77; }.restaurant-app .done { color:#2d7668; }
.restaurant-app button:focus-visible,.restaurant-app a:focus-visible,.restaurant-app input:focus-visible,.restaurant-app select:focus-visible { outline:2px solid var(--food-red); outline-offset:3px; }
@media (max-width:1050px) { .restaurant-app .studio-grid { grid-template-columns:minmax(250px,.82fr) minmax(400px,1.4fr); }.restaurant-app .template-panel { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--food-line); border-left:0; }.restaurant-app .template-panel .panel-title,.restaurant-app .compliance-note { grid-column:1 / -1; margin-left:0; }.restaurant-app .template { padding-left:0; border-bottom:0; border-right:1px solid var(--food-line); }.restaurant-app .template:last-of-type { border-right:0; } }
@media (max-width:900px) { .restaurant-app .app-shell { grid-template-columns:1fr; }.restaurant-app .app-sidebar { display:none; }.restaurant-app .studio-grid { grid-template-columns:1fr; gap:28px; }.restaurant-app .food-form { padding:0 0 26px; border-right:0; border-bottom:1px solid var(--food-line); }.restaurant-app .template-panel { grid-column:auto; grid-template-columns:repeat(3,1fr); }.restaurant-app .food-preview { min-height:430px; } }
@media (max-width:620px) { .restaurant-app .app-header { min-height:62px; padding:0 14px; }.restaurant-app .app-logo { gap:8px; }.restaurant-app .app-logo strong { font-size:15px; }.restaurant-app .app-logo em { display:none; }.restaurant-app .app-header nav { gap:10px; }.restaurant-app .app-header nav a { display:none; }.restaurant-app .app-shell { min-height:calc(100vh - 62px); }.restaurant-app .app-main { padding:30px 15px 52px; }.restaurant-app .workspace-head { display:block; padding-bottom:22px; }.restaurant-app .workspace-head h1 { font-size:37px; }.restaurant-app .workspace-head p:not(.kicker) { font-size:16px; line-height:1.65; }.restaurant-app .workspace-status { display:flex; justify-items:initial; gap:16px; margin-top:18px; }.restaurant-app .mode-strip { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; overflow:visible; }.restaurant-app .mode-strip > span { grid-column:1 / -1; min-width:0; padding:13px 0 8px; }.restaurant-app .mode-chip { min-width:0; padding:14px 10px; text-align:left; }.restaurant-app .mode-chip:nth-of-type(odd) { border-left:0; }.restaurant-app .mode-chip:last-child { border-right:0; }.restaurant-app .studio-grid { padding-top:25px; gap:26px; }.restaurant-app .two-col { gap:14px; }.restaurant-app .food-preview { min-height:298px; }.restaurant-app .preview-top strong { font-size:26px; }.restaurant-app .preview-caption p { font-size:12px; }.restaurant-app .preview-actions { flex-wrap:wrap; }.restaurant-app .preview-actions button { flex:1 1 50%; }.restaurant-app .preview-actions button:last-child { flex-basis:100%; margin-top:8px; }.restaurant-app .template-panel { display:block; border-top:1px solid var(--food-line); border-left:0; }.restaurant-app .template-panel .panel-title { margin:0; }.restaurant-app .template { padding-left:0; border-right:0; border-bottom:1px solid var(--food-line); }.restaurant-app .compliance-note { margin-left:0; }.restaurant-app .tasks { margin-top:42px; }.restaurant-app .section-line h2 { font-size:29px; }.restaurant-app .task-list { grid-template-columns:1fr; }.restaurant-app .task-list article + article { padding-left:0; border-left:0; } }

/* Functional restaurant MVP workspace. */
.restaurant-platform .top-nav { padding:0; border:0; background:transparent; color:#665f59; font-size:13px; font-weight:700; }.restaurant-platform .top-nav:hover,.restaurant-platform .top-nav.is-active { color:var(--food-red); }.restaurant-platform .credit-chip { white-space:nowrap; }.restaurant-platform .credit-chip b { color:var(--food-red); }.restaurant-platform .credit-chip::after { display:none; }.restaurant-platform .mobile-view-nav { display:none; }.restaurant-platform .app-sidebar { min-height:calc(100vh - 68px); }.restaurant-platform .app-main { width:100%; max-width:none; }.restaurant-platform .platform-view { display:none; }.restaurant-platform .platform-view.is-active { display:block; animation:restaurant-fade .22s ease-out both; }
@keyframes restaurant-fade { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
.restaurant-platform .platform-heading { display:flex; align-items:end; justify-content:space-between; gap:28px; padding:0 0 28px; border-bottom:2px solid var(--food-ink); }.restaurant-platform .platform-heading.compact { padding-bottom:24px; }.restaurant-platform .platform-heading .kicker { margin-bottom:11px; color:var(--food-red); font-size:11px; letter-spacing:.12em; }.restaurant-platform .platform-heading h1 { margin:0; color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:46px; font-weight:600; line-height:1.1; }.restaurant-platform .platform-heading p:not(.kicker) { max-width:650px; margin:14px 0 0; color:#5d5752; font-size:16px; line-height:1.7; }.restaurant-platform .primary-command { min-height:42px; padding:0 16px; border:1px solid var(--food-red); border-radius:0; background:var(--food-red); color:#fff; font-size:13px; font-weight:800; transition:background .18s ease,border-color .18s ease; }.restaurant-platform .primary-command:hover { border-color:#a92d1c; background:#a92d1c; }.restaurant-platform .primary-command:disabled { opacity:.62; cursor:not-allowed; }
.restaurant-platform .platform-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:28px; border-top:1px solid var(--food-line); border-bottom:1px solid var(--food-line); }.restaurant-platform .platform-stats article { min-height:92px; padding:18px 18px 15px; border-right:1px solid var(--food-line); display:grid; align-content:space-between; }.restaurant-platform .platform-stats article:first-child { border-top:3px solid var(--food-ink); }.restaurant-platform .platform-stats article:nth-child(2) { border-top:3px solid #d28c37; }.restaurant-platform .platform-stats article:nth-child(3) { border-top:3px solid #2d7668; }.restaurant-platform .platform-stats article:last-child { border-right:0; border-top:3px solid var(--food-red); }.restaurant-platform .platform-stats span { color:#80766d; font-size:12px; font-weight:700; }.restaurant-platform .platform-stats strong { color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:34px; font-weight:600; }
.restaurant-platform .quick-create { margin-top:42px; }.restaurant-platform .section-label { display:flex; align-items:baseline; gap:9px; padding-bottom:13px; border-bottom:1px solid var(--food-line); }.restaurant-platform .section-label span { color:var(--food-red); font-family:Georgia,serif; font-size:15px; }.restaurant-platform .section-label strong { font-size:16px; }.restaurant-platform .section-label small { margin-left:auto; color:#8c8178; font-size:11px; }.restaurant-platform .quick-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--food-line); }.restaurant-platform .quick-grid button { min-height:144px; padding:19px 18px; display:grid; align-content:space-between; gap:18px; border:0; border-right:1px solid var(--food-line); background:transparent; color:var(--food-ink); text-align:left; transition:background .18s ease,color .18s ease; }.restaurant-platform .quick-grid button:last-child { border-right:0; }.restaurant-platform .quick-grid button:hover { background:#f2eae3; color:var(--food-red); }.restaurant-platform .quick-grid b { font-family:Georgia,"Songti SC",SimSun,serif; font-size:21px; font-weight:600; }.restaurant-platform .quick-grid span { max-width:180px; color:#766d65; font-size:12px; line-height:1.6; }.restaurant-platform .quick-grid button:hover span { color:#8f5547; }
.restaurant-platform .task-hall { margin-top:52px; padding-top:24px; border-top:2px solid var(--food-ink); }.restaurant-platform .section-line { align-items:end; }.restaurant-platform .section-line .kicker { margin-bottom:8px; color:var(--food-red); font-size:11px; letter-spacing:.1em; }.restaurant-platform .section-line h2 { margin:0; color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:31px; font-weight:600; }.restaurant-platform .task-hint { margin:0; color:#857a72; font-size:12px; }.restaurant-platform .task-filters { display:grid; grid-template-columns:1.8fr 1fr 1fr; gap:14px; margin:20px 0; }.restaurant-platform .task-filters label { display:grid; gap:7px; color:#625a54; font-size:11px; font-weight:800; }.restaurant-platform .task-filters input,.restaurant-platform .task-filters select { min-height:38px; padding:7px 0; border:0; border-bottom:1px solid var(--food-line); border-radius:0; background:transparent; color:var(--food-ink); outline:none; font-size:14px; }.restaurant-platform .task-filters input:focus,.restaurant-platform .task-filters select:focus { border-bottom:2px solid var(--food-red); }.restaurant-platform .task-table-wrap { overflow:auto; border-top:1px solid var(--food-line); border-bottom:1px solid var(--food-line); }.restaurant-platform .task-table { width:100%; min-width:680px; border-collapse:collapse; text-align:left; }.restaurant-platform .task-table th { padding:12px 14px 11px 0; color:#877c73; font-size:11px; font-weight:800; }.restaurant-platform .task-table td { padding:15px 14px 15px 0; border-top:1px solid #e4ddd5; color:#675e57; font-size:13px; vertical-align:middle; }.restaurant-platform .task-table td:first-child { min-width:220px; }.restaurant-platform .task-table td strong,.restaurant-platform .task-table td small { display:block; }.restaurant-platform .task-table td strong { margin-bottom:4px; color:var(--food-ink); font-size:14px; }.restaurant-platform .task-table td small,.restaurant-platform .muted { color:#91867d; font-size:11px; }.restaurant-platform .task-table a,.restaurant-platform .task-table button { padding:0; border:0; background:transparent; color:var(--food-red); font-size:12px; font-weight:800; }.restaurant-platform .task-status { display:inline-flex; align-items:center; gap:5px; color:#786d64; font-size:12px; font-weight:700; }.restaurant-platform .task-status::before { content:""; width:6px; aspect-ratio:1; border-radius:50%; background:#b3a89e; }.restaurant-platform .task-status.completed { color:#287264; }.restaurant-platform .task-status.completed::before { background:#287264; }.restaurant-platform .task-status.processing,.restaurant-platform .task-status.queued { color:#ae6f14; }.restaurant-platform .task-status.processing::before,.restaurant-platform .task-status.queued::before { background:#d28c37; }.restaurant-platform .task-status.failed { color:#b43827; }.restaurant-platform .task-status.failed::before { background:#b43827; }.restaurant-platform .empty-row { padding:34px 0!important; color:#8b8178!important; text-align:center; }
.restaurant-platform .platform-mode-strip { margin:0; padding:0; }.restaurant-platform .studio-shell { display:grid; grid-template-columns:minmax(440px,1.2fr) minmax(260px,.62fr); gap:36px; padding-top:30px; }.restaurant-platform .studio-form { display:grid; align-content:start; gap:20px; padding-right:34px; border-right:1px solid var(--food-line); }.restaurant-platform .form-intro { padding-bottom:15px; border-bottom:1px solid var(--food-line); }.restaurant-platform .form-intro span { display:block; margin-bottom:7px; color:#8f8177; font-size:11px; font-weight:800; letter-spacing:.08em; }.restaurant-platform .form-intro strong { color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:28px; font-weight:600; }.restaurant-platform .form-intro p { margin:7px 0 0; color:#746b63; font-size:13px; line-height:1.6; }.restaurant-platform .form-fields { display:grid; gap:17px; }.restaurant-platform .form-fields label,.restaurant-platform .compliance-form label { display:grid; gap:7px; color:#5b534d; font-size:12px; font-weight:800; }.restaurant-platform .form-fields label i { color:var(--food-red); font-style:normal; }.restaurant-platform .form-fields input,.restaurant-platform .form-fields select,.restaurant-platform .form-fields textarea,.restaurant-platform .compliance-form textarea { width:100%; min-height:39px; padding:8px 0; border:0; border-bottom:1px solid #cfc7be; border-radius:0; background:transparent; color:var(--food-ink); font-size:14px; outline:none; }.restaurant-platform .form-fields textarea,.restaurant-platform .compliance-form textarea { min-height:76px; resize:vertical; line-height:1.6; }.restaurant-platform .form-fields input[type=file] { padding:9px 0; font-size:12px; }.restaurant-platform .form-fields input:focus,.restaurant-platform .form-fields select:focus,.restaurant-platform .form-fields textarea:focus,.restaurant-platform .compliance-form textarea:focus { border-bottom:2px solid var(--food-red); }.restaurant-platform .three-col { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }.restaurant-platform .form-fields .two-col { gap:18px; }.restaurant-platform .check-row { display:flex!important; align-items:center; gap:8px!important; color:#6a615a!important; }.restaurant-platform .check-row input { width:16px; min-height:16px; accent-color:var(--food-red); }.restaurant-platform .field-help { margin:-3px 0 0; color:#8b8178; font-size:12px; line-height:1.6; }.restaurant-platform .form-error { min-height:0; color:#b43827; font-size:13px; font-weight:700; }.restaurant-platform .studio-side { display:grid; align-content:start; gap:26px; }.restaurant-platform .service-state { padding:14px 0; border-top:2px solid var(--food-ink); border-bottom:1px solid var(--food-line); }.restaurant-platform .service-state span { display:block; color:#8a7e75; font-size:11px; font-weight:800; }.restaurant-platform .service-state strong { display:block; margin:9px 0 6px; color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:24px; font-weight:600; }.restaurant-platform .service-state p,.restaurant-platform .form-note p { margin:0; color:#776d65; font-size:12px; line-height:1.65; }.restaurant-platform .form-note { padding-top:13px; border-top:1px solid var(--food-line); }.restaurant-platform .form-note strong { display:block; margin-bottom:7px; color:#554d47; font-size:12px; }
.restaurant-platform .asset-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding-top:30px; }.restaurant-platform .asset-card { border:1px solid var(--food-line); background:#fffdfa; }.restaurant-platform .asset-card img { width:100%; aspect-ratio:1; display:block; object-fit:cover; }.restaurant-platform .asset-card div { display:grid; gap:7px; padding:15px; }.restaurant-platform .asset-card small,.restaurant-platform .asset-card span { color:#8e8177; font-size:11px; }.restaurant-platform .asset-card strong { color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:19px; font-weight:600; }.restaurant-platform .asset-card a { margin-top:7px; color:var(--food-red); font-size:12px; font-weight:800; }.restaurant-platform .empty-state { padding:52px 0; border-bottom:1px solid var(--food-line); color:#786f67; }.restaurant-platform .empty-state strong { display:block; color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:24px; font-weight:600; }.restaurant-platform .empty-state p { margin:8px 0 0; font-size:14px; }
.restaurant-platform .compliance-layout { display:grid; grid-template-columns:minmax(360px,1fr) minmax(340px,.9fr); gap:36px; padding-top:30px; }.restaurant-platform .compliance-form { display:grid; align-content:start; gap:20px; padding-right:36px; border-right:1px solid var(--food-line); }.restaurant-platform .compliance-result { min-height:260px; padding:18px 0; border-top:2px solid var(--food-ink); border-bottom:1px solid var(--food-line); color:#665d56; }.restaurant-platform .compliance-result > p { margin:0; color:#887d73; font-size:14px; }.restaurant-platform .compliance-result > strong { display:block; margin-bottom:22px; font-family:Georgia,"Songti SC",SimSun,serif; font-size:25px; font-weight:600; }.restaurant-platform .compliance-result > strong.pass { color:#287264; }.restaurant-platform .compliance-result > strong.warn { color:#b43827; }.restaurant-platform .compliance-result > div { padding:12px 0; border-top:1px solid var(--food-line); }.restaurant-platform .compliance-result b { color:var(--food-ink); font-size:12px; }.restaurant-platform .compliance-result p,.restaurant-platform .compliance-result ul { margin:7px 0 0; font-size:13px; line-height:1.65; }.restaurant-platform .compliance-result ul { padding-left:18px; }.restaurant-platform .compliance-result mark { margin-right:7px; padding:1px 4px; background:#f5dfd7; color:#b43827; }
.restaurant-platform .credit-overview { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-top:30px; padding:22px 0; border-top:2px solid var(--food-ink); border-bottom:1px solid var(--food-line); }.restaurant-platform .credit-overview span { display:block; color:#82776e; font-size:12px; font-weight:800; }.restaurant-platform .credit-overview strong { display:block; margin-top:7px; color:var(--food-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:46px; font-weight:600; }.restaurant-platform .credit-actions { display:flex; flex-wrap:wrap; gap:10px; }.restaurant-platform .credit-actions .primary-command { display:inline-flex; align-items:center; justify-content:center; }.restaurant-platform .ledger { margin-top:28px; border-top:1px solid var(--food-line); }.restaurant-platform .ledger article { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:15px 0; border-bottom:1px solid var(--food-line); }.restaurant-platform .ledger strong,.restaurant-platform .ledger small { display:block; }.restaurant-platform .ledger strong { color:var(--food-ink); font-size:14px; }.restaurant-platform .ledger small { margin-top:5px; color:#897f76; font-size:11px; }.restaurant-platform .ledger b { font-family:Georgia,serif; font-size:20px; }.restaurant-platform .ledger b.income { color:#287264; }.restaurant-platform .ledger b.expense { color:#b43827; }
@media (max-width:1060px) { .restaurant-platform .quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.restaurant-platform .quick-grid button:nth-child(2) { border-right:0; }.restaurant-platform .quick-grid button:nth-child(-n+2) { border-bottom:1px solid var(--food-line); }.restaurant-platform .studio-shell,.restaurant-platform .compliance-layout { grid-template-columns:1fr; }.restaurant-platform .studio-form,.restaurant-platform .compliance-form { padding-right:0; border-right:0; border-bottom:1px solid var(--food-line); padding-bottom:28px; }.restaurant-platform .asset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .restaurant-platform .top-nav { display:none; }.restaurant-platform .mobile-view-nav { display:flex; position:sticky; top:62px; z-index:9; overflow-x:auto; border-bottom:1px solid var(--food-line); background:#f4f0e9; }.restaurant-platform .mobile-view-nav button,.restaurant-platform .mobile-view-nav a { flex:0 0 auto; min-width:66px; min-height:39px; padding:0 13px; display:inline-flex; align-items:center; justify-content:center; border:0; border-right:1px solid var(--food-line); border-radius:0; background:transparent; color:#776d65; font-size:12px; font-weight:800; }.restaurant-platform .mobile-view-nav button.is-active { background:var(--food-ink); color:#fff; }.restaurant-platform .platform-heading { display:block; padding-bottom:22px; }.restaurant-platform .platform-heading h1 { font-size:35px; }.restaurant-platform .platform-heading p:not(.kicker) { font-size:15px; }.restaurant-platform .platform-heading .primary-command { margin-top:18px; }.restaurant-platform .platform-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.restaurant-platform .platform-stats article:nth-child(2) { border-right:0; }.restaurant-platform .platform-stats article:nth-child(-n+2) { border-bottom:1px solid var(--food-line); }.restaurant-platform .platform-stats strong { font-size:29px; }.restaurant-platform .quick-create { margin-top:34px; }.restaurant-platform .quick-grid { grid-template-columns:1fr; }.restaurant-platform .quick-grid button,.restaurant-platform .quick-grid button:nth-child(2) { min-height:106px; border-right:0; border-bottom:1px solid var(--food-line); }.restaurant-platform .quick-grid button:last-child { border-bottom:0; }.restaurant-platform .task-hall { margin-top:39px; }.restaurant-platform .task-filters { grid-template-columns:1fr; gap:12px; }.restaurant-platform .mode-strip.platform-mode-strip { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; }.restaurant-platform .mode-strip.platform-mode-strip .mode-chip { padding:14px 10px; }.restaurant-platform .mode-strip.platform-mode-strip .mode-chip:nth-child(odd) { border-left:0; }.restaurant-platform .studio-shell { gap:26px; padding-top:25px; }.restaurant-platform .three-col,.restaurant-platform .form-fields .two-col { grid-template-columns:1fr; gap:14px; }.restaurant-platform .studio-form { gap:18px; }.restaurant-platform .asset-grid { grid-template-columns:1fr; }.restaurant-platform .credit-overview { display:block; }.restaurant-platform .credit-overview .primary-command { margin-top:18px; }.restaurant-platform .compliance-layout { gap:24px; }.restaurant-platform .quiet-button { margin-top:16px; }.restaurant-platform .task-table { min-width:610px; } }
@media (prefers-reduced-motion:reduce) { .restaurant-platform .platform-view.is-active { animation:none; } }

/* Alipay reservation page. */
.payment-page { --payment-ink:#292623; --payment-muted:#766f68; --payment-line:#d8d1c8; --payment-paper:#faf8f3; --payment-red:#ca3a24; margin:0; background:var(--payment-paper); color:var(--payment-ink); font-family:"Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif; }.payment-page a { color:inherit; text-decoration:none; }.payment-header { min-height:68px; padding:0 max(28px,calc((100% - 1320px)/2)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--payment-line); }.payment-header .app-logo { color:var(--payment-ink); }.payment-header .app-mark { width:31px; border-radius:3px; background:var(--payment-red); font-size:15px; }.payment-header .app-logo em { padding-left:10px; border-left:1px solid var(--payment-line); color:#958b82; font-size:10px; font-style:normal; font-weight:800; letter-spacing:.12em; }.payment-header > a:last-child { color:#6e655e; font-size:13px; font-weight:700; }.payment-header > a:last-child:hover { color:var(--payment-red); }.payment-main { width:min(100% - 56px,1160px); margin:0 auto; padding:68px 0 86px; }.payment-heading { max-width:680px; padding-bottom:28px; border-bottom:2px solid var(--payment-ink); }.payment-heading .kicker,.payment-page .kicker { margin:0 0 11px; color:var(--payment-red); font-size:11px; font-weight:800; letter-spacing:.12em; }.payment-heading h1,.payment-page h2 { margin:0; font-family:Georgia,"Songti SC",SimSun,serif; font-weight:600; }.payment-heading h1 { font-size:52px; line-height:1.1; }.payment-heading > p:not(.kicker) { margin:15px 0 0; color:#5f5751; font-size:16px; line-height:1.75; }.payment-status { display:grid; grid-template-columns:150px 1fr; gap:8px 18px; margin-top:28px; padding:16px 0; border-top:1px solid var(--payment-line); border-bottom:1px solid var(--payment-line); }.payment-status span { grid-row:span 2; color:#84786e; font-size:12px; font-weight:800; }.payment-status strong { color:var(--payment-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:23px; font-weight:600; }.payment-status p { margin:0; color:var(--payment-muted); font-size:13px; line-height:1.6; }.plan-section { margin-top:52px; }.payment-page .section-line { display:flex; align-items:end; justify-content:space-between; padding-bottom:15px; border-bottom:1px solid var(--payment-line); }.payment-page .section-line h2 { font-size:32px; }.payment-page .section-line small { color:#887c73; font-size:12px; }.plan-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--payment-line); }.plan-card { min-height:215px; padding:20px; display:grid; align-content:start; gap:11px; border:0; border-right:1px solid var(--payment-line); background:transparent; color:var(--payment-ink); text-align:left; transition:background .18s ease,color .18s ease; }.plan-card:last-child { border-right:0; }.plan-card:hover,.plan-card.is-active { background:#f6e4de; color:var(--payment-red); }.plan-card span { color:#7c7168; font-size:12px; font-weight:800; }.plan-card strong { font-family:Georgia,"Songti SC",SimSun,serif; font-size:37px; font-weight:600; }.plan-card b { font-size:15px; }.plan-card small { margin-top:auto; color:#81766e; font-size:12px; line-height:1.6; }.payment-order { min-height:98px; margin-top:38px; padding:18px 0; border-top:2px solid var(--payment-ink); border-bottom:1px solid var(--payment-line); color:#847970; }.payment-order > div { display:flex; align-items:start; justify-content:space-between; gap:28px; color:var(--payment-ink); }.payment-order > div > div { display:grid; gap:6px; }.payment-order span { color:var(--payment-red); font-size:11px; font-weight:800; }.payment-order strong { font-family:Georgia,"Songti SC",SimSun,serif; font-size:23px; font-weight:600; }.payment-order p { margin:0; color:#71675f; font-size:13px; line-height:1.6; }.payment-order aside { max-width:330px; padding-left:18px; border-left:1px solid var(--payment-line); }.payment-order aside b { color:#b36e19; font-size:13px; }.payment-error { color:#b43827; }.payment-next { margin-top:32px; padding-top:14px; border-top:1px solid var(--payment-line); color:#736960; }.payment-next strong { color:var(--payment-ink); font-size:13px; }.payment-next p { max-width:660px; margin:8px 0 0; font-size:12px; line-height:1.7; }.payment-page .toast { position:fixed; }
@media (max-width:800px) { .plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.plan-card:nth-child(2) { border-right:0; }.plan-card:nth-child(-n+2) { border-bottom:1px solid var(--payment-line); } }
@media (max-width:620px) { .payment-header { min-height:62px; padding:0 15px; }.payment-header .app-logo em { display:none; }.payment-main { width:min(100% - 30px,1160px); padding:42px 0 56px; }.payment-heading h1 { font-size:42px; }.payment-heading > p:not(.kicker) { font-size:15px; }.payment-status { grid-template-columns:1fr; gap:7px; }.payment-status span { grid-row:auto; }.plan-section { margin-top:38px; }.plan-grid { grid-template-columns:1fr; }.plan-card,.plan-card:nth-child(2) { min-height:140px; border-right:0; border-bottom:1px solid var(--payment-line); }.plan-card:last-child { border-bottom:0; }.payment-order > div { display:block; }.payment-order aside { margin-top:15px; padding:13px 0 0; border-left:0; border-top:1px solid var(--payment-line); }.payment-page .section-line h2 { font-size:29px; } }

/* Unified wallet shared by every project in the AI marketplace. */
.wallet-page { --wallet-ink:#292623; --wallet-muted:#766f68; --wallet-line:#d8d1c8; --wallet-paper:#faf8f3; --wallet-red:#ca3a24; margin:0; background:var(--wallet-paper); color:var(--wallet-ink); font-family:"Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif; }.wallet-page a { color:inherit; text-decoration:none; }.wallet-header { min-height:68px; padding:0 max(28px,calc((100% - 1320px)/2)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--wallet-line); }.wallet-header .app-logo { color:var(--wallet-ink); }.wallet-header .app-mark { width:31px; border-radius:3px; background:var(--wallet-red); font-size:15px; }.wallet-header .app-logo em { padding-left:10px; border-left:1px solid var(--wallet-line); color:#958b82; font-size:10px; font-style:normal; font-weight:800; letter-spacing:.12em; }.wallet-header nav { display:flex; align-items:center; gap:22px; color:#675f58; font-size:13px; font-weight:700; }.wallet-header nav a:hover { color:var(--wallet-red); }.wallet-profile { padding-left:13px; border-left:1px solid var(--wallet-line); color:#8a7f76; font-size:12px; }.wallet-main { width:min(100% - 56px,1160px); margin:0 auto; padding:68px 0 86px; }.wallet-heading { display:flex; align-items:end; justify-content:space-between; gap:28px; padding-bottom:28px; border-bottom:2px solid var(--wallet-ink); }.wallet-heading .kicker,.wallet-page .kicker { margin:0 0 11px; color:var(--wallet-red); font-size:11px; font-weight:800; letter-spacing:.12em; }.wallet-heading h1,.wallet-page h2 { margin:0; font-family:Georgia,"Songti SC",SimSun,serif; font-weight:600; }.wallet-heading h1 { font-size:50px; line-height:1.1; }.wallet-heading p:not(.kicker) { max-width:670px; margin:15px 0 0; color:#5d5751; font-size:16px; line-height:1.75; }.wallet-page .primary-command { min-height:42px; padding:0 16px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--wallet-red); background:var(--wallet-red); color:#fff; font-size:13px; font-weight:800; }.wallet-page .primary-command:hover { background:#a92d1c; border-color:#a92d1c; }.wallet-balance { display:grid; grid-template-columns:1.45fr .55fr; gap:38px; margin-top:30px; padding:26px 0; border-top:1px solid var(--wallet-line); border-bottom:1px solid var(--wallet-line); }.wallet-balance > div:first-child span,.wallet-scope span { color:#83776e; font-size:12px; font-weight:800; }.wallet-balance strong { display:block; margin:7px 0; color:var(--wallet-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:62px; font-weight:600; }.wallet-balance small { color:#81766e; font-size:12px; }.wallet-scope { padding-left:24px; border-left:1px solid var(--wallet-line); }.wallet-scope p { margin:9px 0 0; color:#5e5650; font-size:13px; font-weight:700; }.wallet-section { margin-top:52px; padding-top:22px; border-top:2px solid var(--wallet-ink); }.wallet-page .section-line { display:flex; align-items:end; justify-content:space-between; gap:20px; padding-bottom:15px; border-bottom:1px solid var(--wallet-line); }.wallet-page .section-line h2 { font-size:31px; }.wallet-page .section-line small { color:#8a7e75; font-size:12px; }.usage-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid var(--wallet-line); }.usage-grid article { min-height:120px; padding:18px; display:grid; align-content:space-between; border-right:1px solid var(--wallet-line); }.usage-grid article:last-child { border-right:0; }.usage-grid span { color:#7e736a; font-size:12px; font-weight:800; }.usage-grid strong { color:var(--wallet-ink); font-family:Georgia,"Songti SC",SimSun,serif; font-size:34px; font-weight:600; }.usage-grid small { color:#8c8178; font-size:11px; }.wallet-table-wrap { overflow:auto; border-bottom:1px solid var(--wallet-line); }.wallet-table { width:100%; min-width:680px; border-collapse:collapse; text-align:left; }.wallet-table th { padding:12px 14px 11px 0; color:#877c73; font-size:11px; font-weight:800; }.wallet-table td { padding:15px 14px 15px 0; border-top:1px solid #e4ddd5; color:#655d56; font-size:13px; }.wallet-table td.income { color:#287264; font-family:Georgia,serif; font-size:19px; }.wallet-table td.expense { color:#b43827; font-family:Georgia,serif; font-size:19px; }.wallet-empty { min-height:100px; padding:32px 0; color:#887c73; font-size:13px; }
@media (max-width:700px) { .wallet-header { min-height:62px; padding:0 15px; }.wallet-header .app-logo em { display:none; }.wallet-header nav a { display:none; }.wallet-header nav { gap:0; }.wallet-main { width:min(100% - 30px,1160px); padding:42px 0 56px; }.wallet-heading { display:block; }.wallet-heading h1 { font-size:42px; }.wallet-heading p:not(.kicker) { font-size:15px; }.wallet-heading .primary-command { margin-top:20px; }.wallet-balance { grid-template-columns:1fr; gap:20px; }.wallet-balance strong { font-size:52px; }.wallet-scope { padding:16px 0 0; border-left:0; border-top:1px solid var(--wallet-line); }.usage-grid { grid-template-columns:1fr; }.usage-grid article { min-height:94px; border-right:0; border-bottom:1px solid var(--wallet-line); }.usage-grid article:last-child { border-bottom:0; }.wallet-page .section-line h2 { font-size:29px; }.wallet-table-wrap { overflow:visible; }.wallet-table { min-width:0; }.wallet-table thead { display:none; }.wallet-table,.wallet-table tbody { display:block; }.wallet-table tr { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"date amount" "project project" "note note"; gap:5px 16px; padding:15px 0; border-top:1px solid #e4ddd5; }.wallet-table td { padding:0; border:0; }.wallet-table td:nth-child(1) { grid-area:date; color:#867a71; font-size:12px; }.wallet-table td:nth-child(2) { grid-area:project; color:var(--wallet-ink); font-weight:800; }.wallet-table td:nth-child(3) { grid-area:note; color:#766e67; font-size:12px; }.wallet-table td:nth-child(4) { grid-area:amount; align-self:start; }.wallet-table .wallet-empty { display:block; min-height:0; padding:28px 0; } }

.payment-header nav { display:flex; align-items:center; gap:16px; color:#6e655e; font-size:13px; font-weight:700; }.payment-header nav > a:hover { color:var(--payment-red); }
