:root {
  --ink: #171717;
  --ink-soft: #535353;
  --muted: #7d7d7d;
  --forest: #2b2b2b;
  --forest-deep: #111111;
  --green: #303030;
  --lime: #111111;
  --coral: #5e5e5e;
  --amber: #d4d4d4;
  --red: #9c3d3d;
  --canvas: #f3f3f1;
  --paper: #fafafa;
  --white: #ffffff;
  --line: #dfdfdc;
  --line-dark: #c5c5c1;
  --mono: "DM Mono", monospace;
  --sans: "Manrope", "Noto Sans SC", sans-serif;
  --serif: "Noto Serif SC", serif;
  --shadow: 0 15px 34px rgba(0, 0, 0, 0.08);
}

* { box-sizing: border-box; }
html { min-width: 1180px; background: var(--canvas); }
body { min-width: 1180px; margin: 0; color: var(--ink); background: var(--canvas); font-family: var(--sans); }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 3px solid rgba(33, 123, 107, 0.32); outline-offset: 2px; }
.skip-link { position: fixed; z-index: 100; top: -50px; left: 16px; padding: 10px 14px; color: var(--forest-deep); background: var(--lime); text-decoration: none; }.skip-link:focus { top: 12px; }

/* App frame */
.shell { min-height: 100vh; background: var(--canvas); }
.sidebar { position: fixed; z-index: 20; inset: 0 auto 0 0; display: flex; flex-direction: column; width: 254px; padding: 22px 15px 15px; overflow-y: auto; color: #e9f5ef; background: var(--forest-deep); }
.sidebar::before { position: absolute; top: 0; right: 0; bottom: 0; width: 3px; content: ""; background: var(--lime); }
.brand { display: flex; align-items: center; gap: 11px; padding: 5px 12px 23px; color: #fff; text-decoration: none; border-bottom: 1px solid rgba(218, 241, 228, 0.16); }.brand-mark { display: grid; width: 38px; height: 38px; place-items: center; color: var(--forest-deep); font-family: var(--serif); font-size: 18px; font-weight: 900; background: var(--lime); }.brand strong { display: block; font-family: var(--serif); font-size: 18px; letter-spacing: 0; }.brand small { display: block; margin-top: 1px; color: #a7c3b7; font: 9px var(--mono); letter-spacing: 1.15px; }
.artisan-id { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 21px 11px 19px; border-bottom: 1px solid rgba(218, 241, 228, 0.14); }.portrait { display: grid; width: 42px; height: 42px; place-items: center; color: var(--forest); font-family: var(--serif); font-size: 17px; font-weight: 900; background: var(--lime); border-radius: 50%; }.artisan-id strong, .artisan-id small { display: block; }.artisan-id strong { overflow: hidden; color: #f8fffc; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }.artisan-id small { margin-top: 3px; color: #a3c1b4; font-size: 10px; }.verified { display: grid; place-items: center; color: var(--lime); }.verified svg { width: 17px; }
.nav { display: grid; gap: 4px; padding: 19px 0; }.nav-item { position: relative; display: flex; align-items: center; min-height: 43px; gap: 12px; padding: 0 12px; color: #b6cbc1; text-align: left; background: transparent; border: 0; border-left: 2px solid transparent; font-size: 13px; font-weight: 700; transition: background 180ms ease, color 180ms ease, transform 180ms ease; }.nav-item svg { width: 18px; stroke-width: 1.8; }.nav-item:hover { color: #fff; background: rgba(255,255,255,0.07); transform: translateX(2px); }.nav-item.active { color: #fff; background: rgba(201,236,114,0.12); border-left-color: var(--lime); }.nav-item b { min-width: 20px; height: 20px; margin-left: auto; padding: 0 6px; color: var(--forest-deep); background: var(--lime); border-radius: 10px; font: 11px/20px var(--mono); text-align: center; }.nav-item .season-badge { color: #6a4214; background: #f4c45e; }
.sidebar-foot { display: grid; gap: 9px; margin-top: auto; padding-top: 14px; border-top: 1px solid rgba(218, 241, 228, 0.14); }.protected-line, .availability { display: flex; align-items: center; min-height: 39px; gap: 9px; padding: 0 10px; color: #c5d8d0; text-align: left; background: transparent; border: 1px solid rgba(218, 241, 228, 0.16); font-size: 11px; }.protected-line:hover, .availability:hover { color: #fff; border-color: rgba(201,236,114,0.65); }.protected-line svg:first-child { width: 17px; }.protected-line svg:last-child, .availability svg { width: 14px; margin-left: auto; }.status-dot { width: 8px; height: 8px; background: var(--lime); border-radius: 50%; box-shadow: 0 0 0 3px rgba(201,236,114,0.11); }
.scrim { display: none; }.main { min-width: 0; min-height: 100dvh; margin-left: 254px; }.topbar { position: sticky; z-index: 10; top: 0; display: flex; align-items: center; justify-content: space-between; height: 70px; gap: 18px; padding: 0 35px; border-bottom: 1px solid var(--line); background: rgba(251,252,250,0.94); backdrop-filter: blur(12px); }.breadcrumb { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 12px; }.breadcrumb svg { width: 15px; color: #99aaa2; }.breadcrumb strong { color: var(--ink); font-weight: 800; }.top-actions { display: flex; gap: 9px; align-items: center; }.menu-button { display: none; }

/* Controls */
.icon-button { position: relative; display: inline-grid; width: 39px; height: 39px; padding: 0; place-items: center; color: var(--forest); background: #fff; border: 1px solid var(--line); border-radius: 6px; transition: color 160ms ease, border-color 160ms ease, background 160ms ease; }.icon-button:hover { color: var(--forest-deep); border-color: var(--green); background: #edf7f2; }.icon-button svg { width: 18px; }.icon-button em { position: absolute; top: 8px; right: 8px; width: 7px; height: 7px; background: var(--coral); border: 2px solid #fff; border-radius: 50%; }
.primary-button, .secondary-button, .danger-button, .ai-button { display: inline-flex; align-items: center; justify-content: center; min-height: 39px; gap: 7px; padding: 0 14px; border: 1px solid transparent; border-radius: 5px; font-size: 12px; font-weight: 800; transition: transform 160ms ease, background 160ms ease, border-color 160ms ease; }.primary-button, .ai-button { color: var(--forest-deep); background: var(--lime); }.primary-button:hover, .ai-button:hover { background: #b8db63; transform: translateY(-1px); }.secondary-button { color: var(--forest); background: #fff; border-color: var(--line-dark); }.secondary-button:hover { color: var(--forest-deep); background: #f0f7f3; border-color: var(--green); }.danger-button { color: #fff; background: var(--coral); }.danger-button:hover { background: #c6533e; transform: translateY(-1px); }.primary-button svg, .secondary-button svg, .danger-button svg, .ai-button svg { width: 16px; }.ai-button { color: #fff; background: var(--forest); border-color: var(--forest); }.ai-button:hover { color: var(--forest); background: var(--lime); border-color: var(--lime); }.text-button { display: inline-flex; align-items: center; min-height: 28px; gap: 4px; padding: 0; color: var(--green); background: transparent; border: 0; font-size: 11px; font-weight: 800; text-align: left; }.text-button:hover { color: var(--coral); text-decoration: underline; text-underline-offset: 3px; }.text-button svg { width: 14px; }

/* Shared content */
.app-content { width: min(1260px, 100%); margin: 0 auto; padding: 34px 36px 58px; }.view-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }.eyebrow { display: block; color: var(--green); font: 10px var(--mono); letter-spacing: 1.05px; }.view-head h1 { margin: 6px 0 0; color: var(--forest-deep); font-family: var(--serif); font-size: 31px; line-height: 1.2; letter-spacing: 0; }.view-head p { max-width: 650px; margin: 7px 0 0; color: var(--ink-soft); font-size: 12px; line-height: 1.7; }.head-actions { display: flex; gap: 8px; flex-wrap: wrap; }.panel { overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 3px 10px rgba(21,51,43,0.025); }.panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 13px; padding: 17px 18px 13px; border-bottom: 1px solid var(--line); }.panel-head h2 { margin: 0; color: var(--forest-deep); font-family: var(--serif); font-size: 16px; line-height: 1.35; }.panel-head p { margin: 4px 0 0; color: var(--muted); font-size: 10px; line-height: 1.55; }.badge, .tag { display: inline-flex; align-items: center; min-height: 23px; gap: 5px; padding: 0 8px; color: var(--green); background: #e9f6ef; border-radius: 20px; font-size: 10px; font-weight: 800; white-space: nowrap; }.badge.warning { color: #8d5c13; background: #fff1d7; }.badge.muted { color: var(--muted); background: #eff3f0; }.badge.danger { color: #9d3d35; background: #fbe9e5; }.tag svg { width: 13px; }

/* Dashboard */
.summary-strip { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); overflow: hidden; margin-bottom: 20px; background: var(--white); border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 3px 10px rgba(21,51,43,0.025); }.summary-strip button { min-height: 89px; padding: 15px 16px; color: var(--ink); text-align: left; background: #fff; border: 0; border-right: 1px solid var(--line); transition: background 160ms ease; }.summary-strip button:last-child { border-right: 0; }.summary-strip button:hover { background: #f4faf6; }.summary-strip button:nth-child(2) strong, .summary-strip button:nth-child(6) strong { color: var(--coral); }.summary-strip strong, .summary-strip span { display: block; }.summary-strip strong { color: var(--forest); font: 20px var(--mono); }.summary-strip span { margin-top: 7px; color: var(--muted); font-size: 10px; font-weight: 700; }
.project-focus { position: relative; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr); min-height: 304px; overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 8px; box-shadow: var(--shadow); }.project-focus::before { position: absolute; z-index: 2; top: 0; bottom: 0; left: 0; width: 5px; content: ""; background: var(--coral); }.focus-copy { display: flex; flex-direction: column; align-items: flex-start; padding: 30px 32px 27px; }.focus-copy .tag { color: var(--green); background: #e8f6ee; }.focus-copy h2 { max-width: 570px; margin: 18px 0 9px; color: var(--forest-deep); font-family: var(--serif); font-size: 28px; line-height: 1.35; }.focus-copy p { max-width: 570px; margin: 0; color: var(--ink-soft); font-size: 12px; line-height: 1.8; }.focus-actions { display: flex; gap: 9px; margin-top: auto; padding-top: 24px; }.focus-visual { position: relative; min-height: 250px; overflow: hidden; background: var(--forest); }.focus-visual img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.04); }.focus-visual::after { position: absolute; inset: 0; content: ""; background: rgba(9,42,35,.32); }.focus-note { position: absolute; z-index: 2; right: 18px; bottom: 18px; left: 18px; padding: 12px 13px; color: #f8fffb; border-left: 3px solid var(--lime); background: rgba(11,42,35,.88); font-size: 11px; line-height: 1.5; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.28fr) minmax(270px, .72fr); gap: 20px; margin-top: 20px; }.task-list { display: grid; }.task { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 15px 18px; border-bottom: 1px solid #edf1ee; }.task:last-child { border-bottom: 0; }.task-icon { display: grid; width: 32px; height: 32px; place-items: center; color: var(--green); background: #e8f5ee; border-radius: 6px; }.task-icon.warn { color: #a36d18; background: #fff1d8; }.task-icon svg { width: 16px; }.task strong, .task small { display: block; }.task strong { color: var(--ink); font-size: 12px; }.task small { margin-top: 3px; color: var(--muted); font-size: 10px; }.task time { color: var(--muted); font: 10px var(--mono); }.side-stack { display: grid; gap: 20px; align-content: start; }.balance-card { position: relative; padding: 22px; overflow: hidden; color: #edf9f3; background: var(--forest); border-radius: 8px; }.balance-card::after { position: absolute; right: -26px; bottom: -45px; width: 145px; height: 145px; content: ""; border: 27px solid rgba(201,236,114,.12); border-radius: 50%; }.balance-card>* { position: relative; z-index: 1; }.balance-card .eyebrow { color: var(--lime); }.balance-card strong { display: block; margin-top: 10px; color: #fff; font: 29px var(--mono); }.balance-card p { margin: 5px 0 18px; color: #b7d2c5; font-size: 11px; }.balance-card .primary-button { width: 100%; }.quiet-card { padding: 19px; background: #fcfdfb; border: 1px solid var(--line); border-radius: 8px; }.quiet-card h2 { margin: 0; color: var(--forest-deep); font-family: var(--serif); font-size: 16px; }.quiet-card p { margin: 8px 0 0; color: var(--ink-soft); font-size: 11px; line-height: 1.7; }.mini-status { display: flex; justify-content: space-between; gap: 9px; margin-top: 16px; padding-top: 13px; border-top: 1px solid var(--line); color: var(--muted); font-size: 10px; }.mini-status strong { color: var(--green); font: 11px var(--mono); }.section-title { margin: 27px 0 11px; color: var(--forest-deep); font-family: var(--serif); font-size: 18px; }.evidence-row { display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #fff; }.evidence { padding: 17px; border-right: 1px solid var(--line); }.evidence:last-child { border-right: 0; }.evidence i { display: grid; width: 30px; height: 30px; place-items: center; color: var(--coral); background: #fff0eb; border-radius: 50%; }.evidence:nth-child(2) i { color: var(--green); background: #eaf6ef; }.evidence:nth-child(3) i { color: #9d721b; background: #fff3db; }.evidence i svg { width: 16px; }.evidence strong, .evidence small { display: block; }.evidence strong { margin-top: 10px; font-size: 12px; }.evidence small { margin-top: 3px; color: var(--muted); font-size: 10px; }

/* Lists, project work, and data panels */
.work-list, .ledger, .notice-list, .member-list, .credit-list { display: grid; }.work-item, .ledger-row, .order-row { padding: 19px; border-bottom: 1px solid var(--line); }.work-item:last-child, .ledger-row:last-child, .order-row:last-child { border-bottom: 0; }.work-top, .ledger-row { display: flex; justify-content: space-between; gap: 18px; }.work-item h2, .order-row h2 { margin: 4px 0 5px; color: var(--forest-deep); font-family: var(--serif); font-size: 17px; }.work-item p, .order-row p { margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.7; }.meta-row { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }.meta-row span { padding: 5px 7px; color: #587067; background: #eff5f1; border-radius: 3px; font-size: 10px; }.row-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 15px; }.field-layout, .finance-layout, .profile-layout, .message-layout, .reputation-layout, .hall-layout, .team-layout, .project-board, .finance-detail { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(270px, .75fr); gap: 20px; }.map { position: relative; min-height: 360px; overflow: hidden; background: #d7e4de; }.map::before { position: absolute; inset: -12%; content: ""; background: repeating-linear-gradient(28deg, transparent 0 49px, rgba(255,255,255,.64) 50px 54px), repeating-linear-gradient(113deg, transparent 0 78px, rgba(255,255,255,.52) 79px 83px); transform: rotate(-5deg); }.fence { position: absolute; inset: 23% 20%; border: 2px dashed var(--green); border-radius: 46%; }.map-label, .map-person { position: absolute; z-index: 1; padding: 7px 9px; font-size: 10px; }.map-label { top: 17px; left: 17px; color: var(--forest); background: rgba(255,255,255,.94); border-radius: 3px; }.map-person { color: #fff; background: var(--green); border-radius: 3px; }.map-person.self { top: 52%; left: 48%; background: var(--coral); }.map-person.team { top: 39%; right: 19%; }.status-card, .profile-card { padding: 21px; }.status-card h2, .profile-card h2 { margin: 0; color: var(--forest-deep); font-family: var(--serif); font-size: 17px; }.status-card p, .profile-card p { color: var(--muted); font-size: 11px; line-height: 1.7; }.status-list { display: grid; margin-top: 16px; }.status-line { display: flex; justify-content: space-between; gap: 12px; padding: 11px 0; color: var(--ink-soft); border-bottom: 1px solid var(--line); font-size: 11px; }.status-line strong { color: var(--green); font-size: 11px; }.status-card button { width: 100%; margin-top: 14px; }.feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 20px; }.compact-panel { min-height: 200px; }.compact-body { padding: 17px 18px; }.compact-body strong { display: block; color: var(--forest-deep); font-family: var(--serif); font-size: 14px; }.compact-body p { margin: 6px 0 15px; color: var(--ink-soft); font-size: 11px; line-height: 1.7; }.compact-body button { margin-top: 7px; }.compact-body .text-button { min-height: 31px; }.project-side .status-list { padding: 0 18px 12px; }.stage-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; padding: 18px; background: #edf3ef; }.stage-steps span { display: grid; min-height: 37px; place-items: center; color: var(--muted); background: #fff; font-size: 10px; font-weight: 700; }.stage-steps span.done { color: var(--forest-deep); background: var(--lime); }.stage-steps span.current { color: #785113; background: #ffe6a5; }.board-actions { display: flex; gap: 8px; flex-wrap: wrap; padding: 18px; }.board-actions button { flex: 1; min-width: 125px; }

/* Messaging and finance */
.notice { display: grid; grid-template-columns: 32px minmax(0,1fr) auto; gap: 11px; align-items: start; width: 100%; padding: 16px 18px; color: var(--ink); text-align: left; background: #fff; border: 0; border-bottom: 1px solid var(--line); }.notice.unread { background: #f7fcf8; }.notice:hover { background: #eef8f1; }.notice-icon { display: grid; width: 31px; height: 31px; place-items: center; color: var(--green); background: #e7f4ec; border-radius: 6px; }.notice-icon.warn { color: #a36d18; background: #fff0d7; }.notice-icon svg { width: 16px; }.notice strong, .notice small { display: block; }.notice strong { font-size: 12px; }.notice small { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.5; }.notice time { color: var(--muted); font: 10px var(--mono); }.communication-panel .compact-body { display: grid; align-content: start; min-height: 230px; }.communication-panel .compact-body button { width: 100%; }.ledger-row strong, .ledger-row small { display: block; }.ledger-row strong { font-size: 12px; }.ledger-row small { margin-top: 4px; color: var(--muted); font-size: 10px; }.amount { color: var(--green); font: 13px var(--mono); white-space: nowrap; }.amount.pending { color: var(--amber); }.finance-summary, .team-summary { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }.finance-summary .balance-card { min-height: 205px; }.team-summary { grid-template-columns: repeat(4, minmax(0,1fr)); margin-bottom: 20px; }.team-summary article { min-height: 104px; padding: 17px; background: #fff; border: 1px solid var(--line); border-radius: 8px; }.team-summary strong, .team-summary span { display: block; }.team-summary strong { color: var(--forest); font: 21px var(--mono); }.team-summary span { margin-top: 6px; color: var(--muted); font-size: 10px; }.member-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto auto; gap: 11px; align-items: center; padding: 15px 18px; border-bottom: 1px solid var(--line); }.member-avatar { display: grid; width: 37px; height: 37px; place-items: center; color: #fff; background: var(--green); border-radius: 50%; font-family: var(--serif); font-weight: 700; }.member-row strong, .member-row small { display: block; }.member-row strong { font-size: 12px; }.member-row small { margin-top: 3px; color: var(--muted); font-size: 10px; }.team-side .compact-body { display: grid; min-height: 280px; align-content: start; }.team-side .compact-body button { width: 100%; }

/* Profile, schedule, materials */
.profile-head { display: flex; gap: 13px; align-items: center; }.profile-head .portrait { width: 58px; height: 58px; font-size: 22px; }.profile-head h2 { font-size: 20px; }.score-line { display: flex; align-items: center; gap: 15px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }.score, .large-score { display: grid; width: 76px; height: 76px; flex: none; place-items: center; color: var(--forest); border: 8px solid #d6ecdf; border-top-color: var(--green); border-right-color: var(--green); border-radius: 50%; font: 22px var(--mono); }.skill { margin-top: 16px; }.skill-head { display: flex; justify-content: space-between; color: var(--ink-soft); font-size: 11px; }.bar { height: 7px; margin-top: 7px; overflow: hidden; background: #e8efeb; border-radius: 7px; }.bar span { display: block; height: 100%; background: var(--green); border-radius: 7px; }.rule-note { padding: 21px; color: var(--forest-deep); background: #eaf5ee; border-radius: 8px; }.rule-note h2 { margin: 0; font-family: var(--serif); font-size: 17px; }.rule-note p { color: var(--ink-soft); font-size: 11px; line-height: 1.7; }.profile-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; margin-top: 20px; background: #fff; border: 1px solid var(--line); border-radius: 8px; }.profile-facts article { padding: 16px; border-right: 1px solid var(--line); }.profile-facts article:last-child { border-right: 0; }.profile-facts span, .profile-facts strong, .profile-facts small { display: block; }.profile-facts span, .profile-facts small { color: var(--muted); font-size: 10px; }.profile-facts strong { margin: 6px 0 4px; color: var(--forest-deep); font-size: 12px; }.filter-bar, .material-toolbar { display: flex; flex-wrap: wrap; gap: 8px; padding: 11px; margin-bottom: 20px; background: #fff; border: 1px solid var(--line); border-radius: 8px; }.filter-bar button, .material-toolbar button { min-height: 33px; padding: 0 10px; color: var(--ink-soft); background: #fff; border: 1px solid var(--line-dark); border-radius: 4px; font-size: 10px; font-weight: 700; }.filter-bar button:hover, .material-toolbar button:hover, .material-toolbar button.active { color: var(--forest); background: #eaf5ef; border-color: var(--green); }.material-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }.material-card { min-height: 220px; padding: 18px; }.material-icon { display: grid; width: 34px; height: 34px; place-items: center; color: var(--green); background: #e7f4ec; border-radius: 6px; }.material-icon.warn { color: #a36d18; background: #fff0d7; }.material-icon svg { width: 18px; }.material-card h2 { margin: 14px 0 5px; font-family: var(--serif); font-size: 15px; }.material-card p { min-height: 37px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.6; }.material-card small { display: block; margin: 14px 0; color: var(--muted); font-size: 10px; }.material-card button { width: 100%; }

/* Score, PK, and extended modules */
.score-panel { padding: 0; }.score-summary { display: flex; gap: 19px; align-items: center; padding: 21px; border-bottom: 1px solid var(--line); }.score-summary h2 { margin: 7px 0 3px; color: var(--forest-deep); font-family: var(--serif); font-size: 17px; }.score-summary p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.6; }.credit-row { display: grid; grid-template-columns: 84px minmax(0,1fr) 56px auto; gap: 10px; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--line); font-size: 11px; }.credit-row span { color: var(--muted); font: 10px var(--mono); }.credit-row b { color: var(--green); font: 12px var(--mono); }.credit-row b.neutral { color: var(--muted); font: 10px var(--sans); }.rank-list, .season-rank { display: grid; padding: 6px 18px; }.rank-list div, .season-rank>div { display: grid; grid-template-columns: 31px 1fr auto; gap: 8px; align-items: center; padding: 11px 0; border-bottom: 1px solid var(--line); font-size: 12px; }.rank-list div:last-child, .season-rank>div:last-child { border-bottom: 0; }.rank-list span, .rank-list b, .season-rank span, .season-rank b { font-family: var(--mono); }.rank-list span, .season-rank span { color: var(--muted); }.rank-list b, .season-rank b { color: var(--green); }.rank-list .me, .season-rank .me { margin-inline: -18px; padding-inline: 18px; background: #eaf6ee; }.unified-account, .craft-section, .profile-bottom-grid, .offer-confirm-grid, .daily-evidence, .finance-extra, .season-tabs, .season-main-grid, .season-challenge-grid, .season-team-grid, .honor-grid, .institution-grid, .season-fairness { margin-top: 20px; }
.account-grid, .craft-grid, .profile-bottom-grid, .offer-confirm-grid, .finance-extra, .season-main-grid, .season-challenge-grid, .season-team-grid, .institution-grid { display: grid; gap: 20px; }.account-grid { grid-template-columns: repeat(3,1fr); gap: 0; }.account-grid>div { min-height: 92px; padding: 16px 18px; border-right: 1px solid var(--line); }.account-grid>div:last-child { border-right: 0; }.account-label, .account-grid strong, .account-grid small { display: block; }.account-label, .account-grid small { color: var(--muted); font-size: 10px; }.account-grid strong { margin: 6px 0 4px; color: var(--forest-deep); font-size: 12px; }.unified-account .row-actions { justify-content: flex-start; padding: 0 18px 17px; margin-top: 0; }.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin: 25px 0 11px; }.section-heading h2 { margin: 5px 0 0; color: var(--forest-deep); font-family: var(--serif); font-size: 18px; }.craft-grid { grid-template-columns: repeat(3,1fr); }.craft-card { min-height: 235px; padding: 18px; }.craft-card.active { border-top: 3px solid var(--green); }.craft-card.pending { border-top: 3px solid var(--amber); }.craft-top { display: flex; justify-content: space-between; gap: 10px; align-items: center; }.craft-icon { display: grid; width: 36px; height: 36px; place-items: center; color: #fff; background: var(--forest); border-radius: 50%; font-family: var(--serif); font-weight: 800; }.craft-icon.blue { background: #3a7480; }.craft-icon.amber { color: #744e10; background: #f0c96f; }.craft-card h3 { margin: 15px 0 5px; color: var(--forest-deep); font-family: var(--serif); font-size: 16px; }.craft-card p { min-height: 31px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }.craft-metrics { display: grid; gap: 8px; margin: 14px 0; padding: 11px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.craft-metrics span { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 10px; }.craft-metrics strong { color: var(--ink); font-size: 10px; }.profile-bottom-grid, .offer-confirm-grid, .finance-extra, .season-main-grid, .season-team-grid, .season-challenge-grid, .institution-grid { grid-template-columns: minmax(0,1.25fr) minmax(270px,.75fr); }.schedule-card { padding-bottom: 16px; }.schedule-week { display: grid; grid-template-columns: repeat(7,1fr); gap: 6px; padding: 17px 18px 9px; }.schedule-week span { display: grid; min-height: 55px; place-items: center; align-content: center; color: var(--ink-soft); background: #fff; border: 1px solid var(--line); border-radius: 5px; }.schedule-week b, .schedule-week small { display: block; }.schedule-week b { font: 14px var(--mono); }.schedule-week small { margin-top: 3px; font-size: 9px; }.schedule-week span.booked { color: #865f18; border-color: #f0d28d; background: #fff8e8; }.schedule-week span.open { color: var(--forest); border-color: #aad1ba; background: #eff9f1; }.schedule-note { display: flex; flex-wrap: wrap; gap: 11px; padding: 0 18px; color: var(--muted); font-size: 10px; }.schedule-dot { display: inline-block; width: 7px; height: 7px; margin-right: 4px; border-radius: 50%; }.schedule-dot.booked { background: var(--amber); }.schedule-dot.open { background: var(--green); }.schedule-card .row-actions, .daily-evidence>.row-actions { justify-content: flex-start; padding: 0 18px; }.schedule-card .row-actions { margin-top: 15px; }.identity-card { padding-bottom: 17px; }.identity-card .panel-head>svg { width: 20px; color: var(--coral); }.identity-lines { display: grid; margin: 0 18px 15px; }.identity-lines>div { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); }.identity-lines span { color: var(--muted); font-size: 10px; }.identity-lines strong { max-width: 62%; color: var(--ink-soft); font-size: 10px; text-align: right; }.identity-card>.secondary-button { margin-left: 18px; }
.acceptance-rules { padding-bottom: 17px; }.acceptance-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; padding: 17px 18px; }.accept-step { padding-left: 10px; border-left: 2px solid var(--line); }.accept-step.active { border-left-color: var(--coral); }.accept-step b, .accept-step span, .accept-step small { display: block; }.accept-step b { color: var(--coral); font: 10px var(--mono); }.accept-step span { margin: 4px 0 2px; font-size: 11px; font-weight: 800; }.accept-step small { color: var(--muted); font-size: 9px; line-height: 1.4; }.acceptance-rules>.primary-button { margin-left: 18px; }.matching-check .check-list { padding: 4px 18px 0; }.check-list { display: grid; gap: 9px; margin: 15px 0; }.check-list span { display: flex; gap: 7px; align-items: flex-start; color: var(--ink-soft); font-size: 11px; }.check-list svg { width: 15px; flex: none; color: var(--green); }.matching-note { margin: 12px 18px 17px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.daily-evidence { padding-bottom: 17px; }.timeline { display: grid; padding: 3px 18px; }.timeline-item { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; gap: 10px; align-items: center; min-height: 68px; border-bottom: 1px solid var(--line); }.timeline-item:last-child { border-bottom: 0; }.timeline-point { position: relative; display: grid; width: 27px; height: 27px; place-items: center; color: var(--muted); background: #eff2ef; border-radius: 50%; }.timeline-item:not(:last-child) .timeline-point::after { position: absolute; top: 28px; left: 13px; width: 1px; height: 41px; content: ""; background: #d8e2dc; }.timeline-item.done .timeline-point { color: var(--forest); background: var(--lime); }.timeline-item.current .timeline-point { color: #805210; background: #ffe4a2; }.timeline-point svg { width: 14px; }.timeline-item strong, .timeline-item small { display: block; }.timeline-item strong { font-size: 11px; }.timeline-item small { margin-top: 3px; color: var(--muted); font-size: 10px; }.mini-action { min-height: 31px; padding: 0 9px; font-size: 10px; }.evidence-types { display: grid; grid-template-columns: repeat(3,1fr); margin: 4px 0 15px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.evidence-types>div { padding: 14px 18px; border-right: 1px solid var(--line); }.evidence-types>div:last-child { border-right: 0; }.evidence-type-icon { display: grid; width: 29px; height: 29px; place-items: center; color: var(--green); background: #e9f5ee; border-radius: 6px; }.evidence-type-icon.album { color: #397183; background: #e7f0f4; }.evidence-type-icon.exception { color: #8c6115; background: #fff1d8; }.evidence-type-icon svg { width: 15px; }.evidence-types strong, .evidence-types small { display: block; }.evidence-types strong { margin-top: 9px; font-size: 11px; }.evidence-types small { min-height: 30px; margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.fee-lines { display: grid; padding: 0 18px; }.fee-lines>div { display: flex; justify-content: space-between; gap: 12px; padding: 11px 0; color: var(--muted); border-bottom: 1px solid var(--line); font-size: 11px; }.fee-lines strong { color: var(--ink); font: 11px var(--mono); }.fee-lines strong.neutral { color: var(--muted); font: 10px var(--sans); }.payout-card { padding-bottom: 17px; }.payout-account { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; gap: 11px; align-items: center; padding: 17px 18px; }.bank-mark { display: grid; width: 33px; height: 33px; place-items: center; color: #fff; background: var(--coral); border-radius: 50%; font-family: var(--serif); font-weight: 700; }.payout-account strong, .payout-account small { display: block; }.payout-account strong { font-size: 11px; }.payout-account small { margin-top: 4px; color: var(--muted); font-size: 10px; }.payout-card>.secondary-button { margin-left: 18px; }

/* PK signature experience */
.season-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: 28px 30px; color: #f4fcf7; background: var(--forest); border-radius: 8px; box-shadow: var(--shadow); }.season-hero .eyebrow { color: var(--lime); }.season-hero h1 { margin: 7px 0 5px; color: #fff; font-family: var(--serif); font-size: 29px; }.season-hero p { margin: 0; color: #c3d9ce; font-size: 11px; }.season-hero-stats { display: flex; gap: 26px; }.season-hero-stats div { min-width: 56px; padding-left: 13px; border-left: 1px solid rgba(231,250,240,.25); }.season-hero-stats strong, .season-hero-stats span { display: block; }.season-hero-stats strong { color: var(--lime); font: 20px var(--mono); }.season-hero-stats span { margin-top: 4px; color: #bdd2c7; font-size: 9px; }.season-tabs { display: grid; grid-template-columns: repeat(5,1fr); overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 8px; }.season-tab { display: flex; align-items: center; justify-content: center; min-height: 52px; gap: 7px; padding: 0 8px; color: var(--muted); background: #fff; border: 0; border-right: 1px solid var(--line); font-size: 11px; font-weight: 800; }.season-tab:last-child { border-right: 0; }.season-tab svg { width: 15px; }.season-tab:hover { color: var(--forest); background: #f1f8f3; }.season-tab.active { color: var(--forest-deep); background: #edf8ef; box-shadow: inset 0 -3px 0 var(--coral); }.season-score-panel { padding: 21px; }.season-panel-top { display: flex; justify-content: space-between; gap: 12px; }.season-panel-top h2 { margin: 5px 0; color: var(--forest-deep); font-family: var(--serif); font-size: 19px; }.season-panel-top p { margin: 0; color: var(--muted); font-size: 10px; }.score-hero { display: flex; align-items: center; gap: 21px; padding: 21px 0; }.score-ring { display: grid; width: 109px; height: 109px; flex: none; place-items: center; color: var(--forest); border: 10px solid #d8eee0; border-top-color: var(--coral); border-right-color: var(--coral); border-radius: 50%; }.score-ring strong, .score-ring small { display: block; }.score-ring strong { font: 23px var(--mono); }.score-ring small { margin-top: 3px; color: var(--muted); font-size: 9px; }.score-hero>div:last-child { flex: 1; }.score-hero>div:last-child>strong { display: block; font-size: 13px; }.score-hero p { margin: 5px 0 9px; color: var(--muted); font-size: 10px; line-height: 1.5; }.score-progress { height: 7px; overflow: hidden; background: #e9efeb; border-radius: 7px; }.score-progress i { display: block; height: 100%; background: var(--coral); border-radius: 7px; }.score-actions { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; padding-top: 14px; border-top: 1px solid var(--line); }.ranking-panel { overflow: hidden; }.season-rank>div { grid-template-columns: 43px minmax(0,1fr) auto; min-height: 53px; }.season-rank strong, .season-rank small { display: block; }.season-rank small { margin-top: 2px; color: var(--muted); font-size: 9px; }.full-button { width: calc(100% - 36px); margin: 12px 18px 18px; }.season-fairness { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 14px; align-items: center; padding: 17px 18px; background: #f8fcf8; }.fairness-icon { display: grid; width: 35px; height: 35px; place-items: center; color: var(--forest); background: var(--lime); border-radius: 50%; }.fairness-icon svg { width: 18px; }.season-fairness h2 { margin: 0 0 4px; font-family: var(--serif); font-size: 14px; }.season-fairness p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.6; }.challenge-feature { padding: 23px; border-top: 4px solid var(--coral); }.challenge-kicker { display: inline-block; padding: 5px 8px; color: #8d5011; background: #fff0d4; border-radius: 3px; font: 10px var(--mono); }.challenge-feature h2 { margin: 14px 0 7px; color: var(--forest-deep); font-family: var(--serif); font-size: 21px; }.challenge-feature p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }.challenge-meta { display: flex; flex-wrap: wrap; gap: 7px; margin: 16px 0; }.challenge-meta span { padding: 5px 7px; color: #72541b; background: #fff7e8; border-radius: 3px; font-size: 10px; }.challenge-list .challenge-row { display: grid; grid-template-columns: 36px minmax(0,1fr) auto; gap: 11px; align-items: center; padding: 17px 18px; }.challenge-thumb { display: grid; width: 36px; height: 36px; place-items: center; color: #fff; background: var(--green); border-radius: 50%; font-family: var(--serif); font-weight: 700; }.challenge-row strong, .challenge-row small { display: block; }.challenge-row strong { font-size: 11px; }.challenge-row small { margin-top: 4px; color: var(--muted); font-size: 9px; }.challenge-list>.secondary-button { margin: 0 18px 18px; }.team-score-card { padding-bottom: 17px; }.team-score-number { display: flex; align-items: baseline; gap: 9px; padding: 20px 18px 14px; }.team-score-number strong { color: var(--forest); font: 30px var(--mono); }.team-score-number span { color: var(--muted); font-size: 10px; }.team-score-number b { margin-left: auto; color: var(--green); font: 10px var(--mono); }.team-score-grid { display: grid; grid-template-columns: repeat(4,1fr); margin: 0 18px 17px; overflow: hidden; border: 1px solid var(--line); border-radius: 5px; }.team-score-grid span { padding: 10px 8px; color: var(--muted); border-right: 1px solid var(--line); font-size: 9px; }.team-score-grid strong { display: block; margin-top: 4px; color: var(--ink); font: 12px var(--mono); }.team-score-card>.secondary-button { margin-left: 18px; }.rule-list { display: grid; padding: 3px 18px; }.rule-list>div { display: flex; gap: 8px; align-items: flex-start; padding: 10px 0; color: var(--ink-soft); border-bottom: 1px solid var(--line); font-size: 11px; line-height: 1.5; }.rule-list>div:last-child { border-bottom: 0; }.rule-list svg { width: 15px; flex: none; color: var(--green); }.rule-list>div:last-child svg { color: var(--amber); }.honor-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px; }.honor-card { display: grid; grid-template-columns: 45px minmax(0,1fr) auto; gap: 13px; align-items: center; min-height: 130px; padding: 18px; background: #fff; border: 1px solid var(--line); border-radius: 8px; }.honor-card.current { border-color: #b4d5bf; background: #f4fbf5; }.honor-icon { display: grid; width: 43px; height: 43px; place-items: center; color: #744b0b; background: #f5d885; border-radius: 50%; font-family: var(--serif); font-weight: 900; }.honor-card strong, .honor-card p, .honor-card span { display: block; }.honor-card strong { color: var(--forest-deep); font-family: var(--serif); font-size: 14px; }.honor-card p { margin: 4px 0; color: var(--muted); font-size: 10px; line-height: 1.5; }.honor-card span { color: var(--green); font-size: 9px; }.institution-feature, .institution-list { padding-bottom: 18px; }.institution-score { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3px 13px; align-items: end; padding: 19px 18px; border-bottom: 1px solid var(--line); }.institution-score strong { color: var(--forest-deep); font-family: var(--serif); font-size: 16px; }.institution-score b { grid-row: span 2; color: var(--coral); font: 29px var(--mono); }.institution-score span { color: var(--muted); font-size: 10px; }.institution-bars { display: grid; gap: 10px; padding: 16px 18px; }.institution-bars>div { display: grid; grid-template-columns: 74px 1fr 21px; gap: 8px; align-items: center; color: var(--muted); font-size: 10px; }.institution-bars i { display: block; height: 6px; background: var(--green); border-radius: 5px; }.institution-bars b { color: var(--forest); font: 10px var(--mono); }.institution-feature>.text-button { margin-left: 18px; }.institution-row { display: grid; grid-template-columns: 28px minmax(0,1fr) 28px 78px; gap: 8px; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--line); font-size: 11px; }.institution-row span { color: var(--muted); font: 10px var(--mono); }.institution-row b { color: var(--green); font: 11px var(--mono); }.institution-row small { color: var(--muted); font-size: 9px; text-align: right; }

/* Dialog, assistant, feedback */
.ai-drawer { position: fixed; z-index: 40; inset: 0 0 0 auto; display: flex; flex-direction: column; width: min(420px,100vw); background: #fbfcfa; border-left: 1px solid var(--line); box-shadow: -18px 0 42px rgba(10,40,32,.16); transform: translateX(104%); transition: transform 220ms ease; }.ai-drawer.open { transform: translateX(0); }.drawer-header { display: flex; align-items: flex-start; justify-content: space-between; padding: 22px 20px 17px; color: var(--forest-deep); border-bottom: 1px solid var(--line); }.drawer-header h2 { margin: 5px 0 0; font-family: var(--serif); font-size: 21px; }.ai-context { display: flex; gap: 9px; align-items: center; margin: 16px 18px 0; padding: 11px; color: var(--forest); background: #e8f5ed; border-radius: 6px; font-size: 11px; }.ai-context svg { width: 16px; color: var(--coral); }.chat-stream { flex: 1; overflow: auto; padding: 19px 18px; }.chat-message { display: flex; gap: 9px; margin-bottom: 15px; }.chat-message>span { display: grid; width: 28px; height: 28px; flex: none; place-items: center; color: var(--forest-deep); background: var(--lime); border-radius: 50%; font: 10px var(--mono); }.chat-message p { margin: 0; padding: 10px 11px; color: var(--ink-soft); background: #eef3ef; border-radius: 3px 9px 9px 9px; font-size: 12px; line-height: 1.65; }.chat-message.user { justify-content: flex-end; }.chat-message.user>span { order: 2; color: #fff; background: var(--coral); }.chat-message.user p { color: #fff; background: var(--forest); border-radius: 9px 3px 9px 9px; }.prompt-row { display: flex; flex-wrap: wrap; gap: 7px; padding: 0 18px 13px; }.prompt-row button { min-height: 30px; padding: 0 9px; color: var(--ink-soft); background: #fff; border: 1px solid var(--line); border-radius: 4px; font-size: 10px; }.prompt-row button:hover { color: var(--forest); border-color: var(--green); background: #eff8f2; }.chat-form { display: flex; gap: 8px; padding: 13px 18px; border-top: 1px solid var(--line); }.chat-form input { min-width: 0; height: 41px; flex: 1; padding: 0 11px; color: var(--ink); background: #fff; border: 1px solid var(--line-dark); border-radius: 5px; }.chat-form .send { color: var(--forest-deep); background: var(--lime); border-color: var(--lime); }.ai-note { margin: 0; padding: 0 18px 17px; color: var(--muted); font-size: 10px; line-height: 1.55; }.action-dialog { width: min(490px,calc(100vw - 28px)); padding: 0; background: transparent; border: 0; }.action-dialog::backdrop { background: rgba(8,36,29,.48); }.dialog-card { padding: 23px; background: #fff; border-radius: 8px; box-shadow: 0 22px 55px rgba(11,41,33,.2); }.dialog-card h2 { margin: 5px 0 6px; color: var(--forest-deep); font-family: var(--serif); font-size: 21px; }.dialog-card p { color: var(--ink-soft); font-size: 12px; line-height: 1.7; }.dialog-card label { display: grid; gap: 6px; margin: 16px 0; color: var(--ink-soft); font-size: 11px; }.dialog-card input, .dialog-card textarea, .dialog-card select { width: 100%; padding: 10px; color: var(--ink); background: #fff; border: 1px solid var(--line-dark); border-radius: 4px; font-family: var(--sans); }.dialog-card textarea { resize: vertical; }.dialog-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; }.toast { position: fixed; z-index: 50; right: 22px; bottom: 22px; max-width: min(390px,calc(100vw - 30px)); padding: 12px 14px; color: #fff; background: var(--forest-deep); border-left: 3px solid var(--lime); box-shadow: var(--shadow); border-radius: 4px; font-size: 12px; opacity: 0; pointer-events: none; transform: translateY(12px); transition: opacity 180ms ease, transform 180ms ease; }.toast.show { opacity: 1; transform: translateY(0); }.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

@media (max-width: 1060px) { html, body { min-width: 0; }.sidebar { width: 222px; }.main { margin-left: 222px; }.app-content { padding: 28px 24px 48px; }.topbar { padding-inline: 24px; }.project-focus, .dashboard-grid, .field-layout, .finance-layout, .profile-layout, .message-layout, .reputation-layout, .hall-layout, .team-layout, .project-board, .finance-detail, .profile-bottom-grid, .offer-confirm-grid, .finance-extra, .season-main-grid, .season-challenge-grid, .season-team-grid, .institution-grid { grid-template-columns: 1fr; }.side-stack { grid-template-columns: 1fr 1fr; }.craft-grid { grid-template-columns: 1fr; }.account-grid { grid-template-columns: 1fr; }.account-grid>div { border-right: 0; border-bottom: 1px solid var(--line); }.season-tabs { grid-template-columns: repeat(3,1fr); }.season-tab:nth-child(3) { border-right: 0; }.season-tab:nth-child(-n+3) { border-bottom: 1px solid var(--line); }.material-grid { grid-template-columns: repeat(2,1fr); }.finance-summary { grid-template-columns: 1fr; }.honor-grid { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .sidebar { z-index: 30; width: 272px; transform: translateX(-103%); transition: transform 180ms ease; }.sidebar.open { transform: translateX(0); }.scrim { position: fixed; z-index: 25; inset: 0; background: rgba(9,34,29,.46); }.scrim.show { display: block; }.main { margin-left: 0; }.topbar { height: 62px; padding: 0 13px; }.menu-button { display: inline-grid; }.breadcrumb { min-width: 0; flex: 1; }.breadcrumb>span, .breadcrumb>svg { display: none; }.top-actions>.icon-button { display: none; }.ai-button { width: 39px; padding: 0; }.ai-button span { display: none; }.app-content { padding: 22px 14px 38px; }.view-head { align-items: flex-start; flex-direction: column; gap: 13px; margin-bottom: 18px; }.view-head h1 { font-size: 27px; }.head-actions { width: 100%; }.head-actions button { flex: 1; }.summary-strip { grid-template-columns: repeat(2,1fr); }.summary-strip button { min-height: 76px; border-bottom: 1px solid var(--line); }.summary-strip button:nth-child(2n) { border-right: 0; }.summary-strip button:nth-last-child(-n+2) { border-bottom: 0; }.project-focus { grid-template-columns: 1fr; }.focus-copy { min-height: 260px; padding: 24px; }.focus-copy h2 { font-size: 23px; }.focus-visual { min-height: 205px; }.focus-actions { width: 100%; }.focus-actions button { flex: 1; }.side-stack { grid-template-columns: 1fr; }.evidence-row, .evidence-types, .profile-facts, .team-summary, .material-grid { grid-template-columns: 1fr; }.evidence, .evidence-types>div, .profile-facts article { border-right: 0; border-bottom: 1px solid var(--line); }.evidence:last-child, .evidence-types>div:last-child, .profile-facts article:last-child { border-bottom: 0; }.work-top, .ledger-row, .order-row { align-items: flex-start; flex-direction: column; }.row-actions { justify-content: stretch; }.row-actions button { flex: 1; }.board-actions { display: grid; grid-template-columns: 1fr 1fr; }.board-actions button { min-width: 0; }.stage-steps { grid-template-columns: repeat(2,1fr); }.season-hero { align-items: flex-start; flex-direction: column; padding: 24px; }.season-hero-stats { width: 100%; gap: 10px; }.season-hero-stats div { flex: 1; }.season-tabs { grid-template-columns: 1fr; }.season-tab, .season-tab:nth-child(3) { justify-content: flex-start; padding-left: 14px; border-right: 0; border-bottom: 1px solid var(--line); }.season-tab:last-child { border-bottom: 0; }.score-hero { align-items: flex-start; flex-direction: column; }.season-fairness { grid-template-columns: 35px minmax(0,1fr); }.season-fairness .text-button { grid-column: 2; justify-self: start; }.acceptance-steps { grid-template-columns: 1fr; }.timeline-item { grid-template-columns: 32px minmax(0,1fr); padding: 10px 0; }.timeline-item .mini-action, .timeline-item .text-button { grid-column: 2; justify-self: start; }.timeline-item:not(:last-child) .timeline-point::after { height:54px; }.team-score-grid { grid-template-columns: repeat(2,1fr); }.team-score-grid span:nth-child(2), .team-score-grid span:nth-child(4) { border-right: 0; }.institution-row { grid-template-columns: 26px minmax(0,1fr) 28px; }.institution-row small { grid-column: 2 / -1; text-align: left; }.credit-row { grid-template-columns: 68px minmax(0,1fr) auto; }.credit-row .text-button { grid-column: 2 / -1; justify-self: start; }.member-row { grid-template-columns: 38px minmax(0,1fr) auto; }.member-row .text-button { grid-column: 2 / -1; justify-self: start; }.dialog-actions { flex-wrap: wrap; }.dialog-actions button { flex: 1; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }
html, body { min-width: 0; }
@media (max-width: 1200px) and (min-width: 721px) { .sidebar { width: 232px; }.main { margin-left: 232px; }.topbar { padding-inline: 24px; }.app-content { padding-inline: 24px; }.summary-strip { grid-template-columns: repeat(3, minmax(0,1fr)); }.summary-strip button:nth-child(3) { border-right: 0; }.summary-strip button:nth-child(-n+3) { border-bottom: 1px solid var(--line); } }

/* Four visual chapters: editorial overview, field command, project gallery, mobile workbench. */
.mobile-dock { display: none; }
body[data-surface="dashboard"] .app-content { padding-top: 42px; }
body[data-surface="dashboard"] .view-head { padding-bottom: 18px; border-bottom: 2px solid var(--forest-deep); }
body[data-surface="dashboard"] .view-head .eyebrow { color: var(--coral); }
body[data-surface="dashboard"] .summary-strip { border-top: 4px solid var(--forest-deep); box-shadow: none; }
body[data-surface="dashboard"] .summary-strip button { min-height: 96px; }
body[data-surface="dashboard"] .summary-strip button:nth-child(odd) { background: #fdfcf7; }
body[data-surface="dashboard"] .project-focus { border-width: 1px 1px 3px; border-bottom-color: var(--forest-deep); }
body[data-surface="dashboard"] .focus-copy { background: #fffef9; }
body[data-surface="dashboard"] .focus-visual::after { background: rgba(11, 36, 31, .22); }

/* Project archive: the artist's verified crafts, not a conventional settings page. */
body[data-surface="profile"] .app-content { padding-top: 42px; }
body[data-surface="profile"] .view-head { align-items: flex-start; padding: 25px 28px; background: #f6f2eb; border-top: 4px solid var(--coral); border-bottom: 1px solid #dbd2c6; }
body[data-surface="profile"] .view-head h1 { font-size: 37px; }
body[data-surface="profile"] .view-head .eyebrow { color: #a04d36; }
body[data-surface="profile"] .unified-account { border-left: 4px solid var(--forest); box-shadow: none; }
body[data-surface="profile"] .craft-grid { gap: 12px; }
body[data-surface="profile"] .craft-card { position: relative; min-height: 246px; border-color: #dcd5ca; box-shadow: none; }
body[data-surface="profile"] .craft-card:nth-child(1) { background: #123b35; color: #eff8ef; }
body[data-surface="profile"] .craft-card:nth-child(1)::before { position: absolute; right: 16px; bottom: 13px; color: rgba(201,236,114,.18); content: "01"; font: 74px/1 var(--mono); }
body[data-surface="profile"] .craft-card:nth-child(1) h3, body[data-surface="profile"] .craft-card:nth-child(1) p, body[data-surface="profile"] .craft-card:nth-child(1) .craft-metrics strong { color: #fff; }
body[data-surface="profile"] .craft-card:nth-child(1) .craft-metrics, body[data-surface="profile"] .craft-card:nth-child(1) .craft-metrics span { color: #bdd2c5; border-color: rgba(255,255,255,.16); }
body[data-surface="profile"] .craft-card:nth-child(1) .text-button { color: var(--lime); }
body[data-surface="profile"] .craft-card:nth-child(2) { background: #e9edef; border-top: 4px solid #236d89; }
body[data-surface="profile"] .craft-card:nth-child(3) { background: #fff8ea; border-top: 4px solid var(--amber); }
body[data-surface="profile"] .schedule-card { border-top: 3px solid #236d89; }

/* Dark command center is reserved for active field work and evidence capture. */
body[data-surface="project"] { color: #e5f0ea; background: #0e1719; }
body[data-surface="project"] .shell, body[data-surface="project"] .main { background: #0e1719; }
body[data-surface="project"] .topbar { color: #dbe8e1; background: rgba(14,23,25,.95); border-color: #27383a; }
body[data-surface="project"] .breadcrumb, body[data-surface="project"] .breadcrumb strong { color: #dbe8e1; }
body[data-surface="project"] .breadcrumb svg { color: #7e9690; }
body[data-surface="project"] .topbar .icon-button { color: var(--lime); background: #162326; border-color: #304345; }
body[data-surface="project"] .app-content { padding-top: 42px; }
body[data-surface="project"] .view-head { position: relative; align-items: flex-start; padding: 0 0 23px; border-bottom: 1px solid #334447; }
body[data-surface="project"] .view-head::after { position: absolute; right: 0; bottom: -1px; width: 110px; height: 3px; content: ""; background: var(--lime); }
body[data-surface="project"] .view-head h1, body[data-surface="project"] .panel-head h2, body[data-surface="project"] .status-card h2, body[data-surface="project"] .compact-body strong, body[data-surface="project"] .work-item h2 { color: #f4faf6; }
body[data-surface="project"] .view-head p, body[data-surface="project"] .panel-head p, body[data-surface="project"] .status-card p, body[data-surface="project"] .compact-body p, body[data-surface="project"] .task small, body[data-surface="project"] .work-item p, body[data-surface="project"] .timeline-item small { color: #9eb2ac; }
body[data-surface="project"] .eyebrow { color: var(--lime); }
body[data-surface="project"] .panel, body[data-surface="project"] .quiet-card { color: #dce8e1; background: #162225; border-color: #304144; box-shadow: none; }
body[data-surface="project"] .panel-head, body[data-surface="project"] .task, body[data-surface="project"] .timeline-item, body[data-surface="project"] .status-line { border-color: #304144; }
body[data-surface="project"] .map { background: #25383a; }
body[data-surface="project"] .map::before { opacity: .55; }
body[data-surface="project"] .map-label { color: #f4faf6; background: #0d1719; }
body[data-surface="project"] .stage-steps { background: #293a3d; }
body[data-surface="project"] .stage-steps span { color: #98ada7; background: #182629; }
body[data-surface="project"] .stage-steps span.done { color: #122820; background: var(--lime); }
body[data-surface="project"] .secondary-button { color: #edf7f1; background: transparent; border-color: #526967; }
body[data-surface="project"] .secondary-button:hover { color: #102920; background: var(--lime); border-color: var(--lime); }
body[data-surface="project"] .badge.muted { color: #c0d0c9; background: #304043; }
body[data-surface="project"] .daily-evidence { border-top: 3px solid var(--coral); }
body[data-surface="project"] .evidence-types { border-top-color: #304144; }
body[data-surface="project"] .evidence-types > div { background: #1c2b2e; }
body[data-surface="project"] .timeline-point { color: #112923; background: var(--lime); }

/* Income and season retain a quiet data language while the portfolio stays expressive. */
body[data-surface="finance"] .finance-summary .balance-card { background: #123b35; border-top: 4px solid var(--lime); }
body[data-surface="finance"] .finance-extra { margin-top: 20px; }
body[data-surface="finance"] .fee-ledger { border-top: 3px solid #236d89; }
body[data-surface="season"] .app-content { padding-top: 42px; }
body[data-surface="season"] .view-head { display: none; }

/* Matching is presented as a recommendation with evidence, never as a black-box score. */
body[data-surface="hall"] .app-content { padding-top: 42px; }
body[data-surface="hall"] .view-head { padding-bottom: 17px; border-bottom: 1px solid var(--line-dark); }
body[data-surface="hall"] .filter-bar { border-left: 4px solid #236d89; box-shadow: none; }
.match-band { display: grid; grid-template-columns: 142px minmax(0,1fr) auto; gap: 22px; align-items: center; margin: 20px 0; padding: 20px 23px; color: #e7f2ec; background: #123b35; border-radius: 8px; box-shadow: var(--shadow); }
.match-score { display: grid; grid-template-columns: auto auto; gap: 0 5px; align-items: baseline; padding-right: 21px; border-right: 1px solid rgba(231,250,240,.24); }
.match-score span { grid-column: 1 / -1; color: var(--lime); font: 10px var(--mono); letter-spacing: 1px; }
.match-score strong { margin-top: 4px; color: #fff; font: 43px/1 var(--mono); }
.match-score small { color: #b7d3c7; font: 11px var(--mono); }
.match-copy .eyebrow { color: #d8ee84; }
.match-copy h2 { margin: 6px 0; color: #fff; font-family: var(--serif); font-size: 19px; line-height: 1.45; }
.match-copy p { margin: 0; color: #c5dbd0; font-size: 11px; line-height: 1.65; }
.match-tags { display: flex; max-width: 278px; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.match-tags span { padding: 5px 7px; color: #dce9e3; border: 1px solid rgba(231,250,240,.22); border-radius: 3px; font-size: 9px; }
.match-tags .secondary-button { width: 100%; color: #13372f; background: var(--lime); border-color: var(--lime); }
body[data-surface="hall"] .hall-layout > .panel:first-child { border-top: 3px solid var(--coral); }
body[data-surface="hall"] .order-row { transition: background 180ms ease; }
body[data-surface="hall"] .order-row:hover { background: #f6faf6; }
body[data-surface="hall"] .order-row:first-of-type { background: #fffaf0; }
body[data-surface="hall"] .ai-check-panel { align-self: start; border-top: 3px solid var(--amber); }

/* Money has four mutually exclusive states so that a balance never implies payout certainty. */
.cash-band { display: grid; grid-template-columns: minmax(190px,1.35fr) repeat(3,minmax(120px,1fr)) auto; align-items: stretch; overflow: hidden; margin-bottom: 20px; color: #f6fffa; background: #102f2c; border: 1px solid #102f2c; border-radius: 8px; }
.cash-band > div { display: grid; align-content: center; min-height: 107px; padding: 16px 18px; border-right: 1px solid rgba(227,244,235,.16); }
.cash-band > div span { color: #b6d0c4; font-size: 10px; }
.cash-band > div strong { margin: 6px 0 4px; color: #fff; font: 18px var(--mono); }
.cash-band > div small { color: #8eaaa0; font-size: 9px; }
.cash-band .cash-main { background: #174a40; }
.cash-band .cash-main span { color: var(--lime); font: 10px var(--mono); letter-spacing: .65px; }
.cash-band .cash-main strong { font-size: 25px; }
.cash-band > button { align-self: center; justify-self: center; margin: 16px; white-space: nowrap; }
body[data-surface="finance"] .finance-summary { grid-template-columns: minmax(0,1.15fr) repeat(2,minmax(0,.925fr)); }
body[data-surface="finance"] .finance-summary .compact-panel { border-top: 3px solid #236d89; }
body[data-surface="finance"] .finance-summary .compact-panel:last-child { border-top-color: var(--coral); }
body[data-surface="materials"] .app-content { padding-top: 42px; }
body[data-surface="materials"] .material-toolbar { border-left: 4px solid var(--coral); }
body[data-surface="materials"] .material-card:nth-child(2), body[data-surface="materials"] .material-card:nth-child(5) { background: #f3f7f5; }
body[data-surface="team"] .team-summary article:first-child { color: #edf9f3; background: var(--forest); border-color: var(--forest); }
body[data-surface="team"] .team-summary article:first-child strong { color: var(--lime); }
body[data-surface="team"] .team-summary article:first-child span { color: #bdd2c7; }

@media (max-width: 720px) {
  body { background: #f5f6f2; }
  .sidebar { transform: translateX(-100%); box-shadow: none; }
  .sidebar.open { transform: translateX(0); box-shadow: 12px 0 35px rgba(0,0,0,.24); }
  .main { margin-left: 0; }
  .topbar { height: 58px; padding: 0 16px; background: rgba(255,255,255,.96); }
  .menu-button { display: inline-grid; }
  .breadcrumb > span, .breadcrumb > svg { display: none; }
  .breadcrumb strong { font-size: 13px; }
  .top-actions .icon-button { display: none; }
  .top-actions .ai-button { min-height: 36px; padding: 0 11px; font-size: 11px; }
  .app-content { padding: 19px 16px 94px; }
  .mobile-dock { position: fixed; z-index: 40; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); min-height: 70px; padding: 5px 8px max(7px, env(safe-area-inset-bottom)); background: rgba(255,255,255,.96); border-top: 1px solid #dfe5df; box-shadow: 0 -5px 20px rgba(18,59,53,.08); backdrop-filter: blur(12px); }
  .mobile-dock .mobile-nav-item { display: grid; min-height: 52px; gap: 3px; padding: 6px 1px; place-items: center; color: #65736e; background: transparent; border: 0; border-left: 0; font-size: 10px; font-weight: 700; transform: none; }
  .mobile-dock .mobile-nav-item svg { width: 20px; }
  .mobile-dock .mobile-nav-item.active { color: var(--forest-deep); background: transparent; border-left: 0; }
  .mobile-dock .mobile-nav-item.active svg { color: var(--coral); stroke-width: 2.3; }
  .mobile-dock .mobile-nav-item:active { opacity: .66; }
  .view-head { align-items: flex-start; margin-bottom: 17px; }
  .view-head h1 { font-size: 27px; }
  .view-head p { max-width: 100%; font-size: 12px; }
  .head-actions { width: 100%; margin-top: 3px; }
  .head-actions button { flex: 1; }
  .summary-strip { grid-template-columns: repeat(2,minmax(0,1fr)); margin-bottom: 14px; }
  .summary-strip button { min-height: 75px; padding: 12px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  .summary-strip button:nth-child(even) { border-right: 0; }
  .summary-strip button:nth-child(n+5) { border-bottom: 0; }
  .summary-strip strong { font-size: 18px; }
  .project-focus { grid-template-columns: 1fr; min-height: 0; }
  .focus-copy { min-height: 282px; padding: 24px 21px; }
  .focus-copy h2 { margin-top: 14px; font-size: 24px; }
  .focus-visual { min-height: 205px; }
  .dashboard-grid, .field-layout, .project-board, .profile-layout, .hall-layout, .finance-layout, .team-layout, .finance-detail, .profile-bottom-grid, .offer-confirm-grid, .season-main-grid, .season-challenge-grid, .season-team-grid, .institution-grid { grid-template-columns: 1fr; gap: 14px; }
  .dashboard-grid { margin-top: 14px; }
  .side-stack { grid-template-columns: 1fr; gap: 14px; }
  .evidence-row { grid-template-columns: 1fr; }
  .evidence { min-height: 70px; display: grid; grid-template-columns: 32px 1fr; column-gap: 12px; align-items: center; border-right: 0; border-bottom: 1px solid var(--line); }
  .evidence:last-child { border-bottom: 0; }
  .evidence strong, .evidence small { margin: 0; }
  .evidence small { grid-column: 2; }
  body[data-surface="dashboard"] .app-content, body[data-surface="profile"] .app-content, body[data-surface="project"] .app-content, body[data-surface="season"] .app-content { padding-top: 22px; }
  body[data-surface="dashboard"] .view-head { padding-bottom: 13px; }
  body[data-surface="profile"] .view-head { padding: 21px 18px; }
  body[data-surface="profile"] .view-head h1 { font-size: 29px; }
  body[data-surface="profile"] .craft-grid, body[data-surface="profile"] .profile-facts, .material-grid, .feature-grid, .team-summary, .finance-summary { grid-template-columns: 1fr; }
  body[data-surface="profile"] .craft-card { min-height: 196px; }
  body[data-surface="hall"] .app-content, body[data-surface="materials"] .app-content { padding-top: 22px; }
  .match-band { grid-template-columns: 1fr; gap: 13px; padding: 19px; }
  .match-score { grid-template-columns: auto auto 1fr; gap: 0 5px; padding: 0 0 13px; border-right: 0; border-bottom: 1px solid rgba(231,250,240,.22); }
  .match-score span { grid-column: 1; align-self: center; }
  .match-score strong { margin-top: 0; font-size: 33px; }
  .match-tags { max-width: none; justify-content: flex-start; }
  .match-tags .secondary-button { width: auto; }
  .cash-band { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .cash-band > div { min-height: 91px; padding: 14px; border-bottom: 1px solid rgba(227,244,235,.16); }
  .cash-band > div:nth-child(2) { border-right: 0; }
  .cash-band > button { grid-column: 1 / -1; width: calc(100% - 28px); margin: 7px 14px 14px; }
  body[data-surface="finance"] .finance-summary { grid-template-columns: 1fr; }
  body[data-surface="project"] .topbar { background: #0e1719; border-color: #283a3d; }
  body[data-surface="project"] .mobile-dock { color: #dce8e1; background: rgba(14,23,25,.96); border-color: #2b3d3e; }
  body[data-surface="project"] .mobile-dock .mobile-nav-item { color: #8fa59d; }
  body[data-surface="project"] .mobile-dock .mobile-nav-item.active { color: #eff9f3; }
  body[data-surface="project"] .mobile-dock .mobile-nav-item.active svg { color: var(--lime); }
  body[data-surface="project"] .view-head { padding-bottom: 17px; }
  body[data-surface="project"] .field-layout .map { min-height: 250px; }
  body[data-surface="project"] .row-actions { display: grid; grid-template-columns: 1fr; }
  body[data-surface="project"] .row-actions button { width: 100%; }
}

.account-trigger { position: relative; display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 4px 8px 4px 5px; color: var(--forest-deep); background: #fff; border: 1px solid var(--line); border-radius: 6px; text-align: left; }
.account-trigger:hover { border-color: #a5c9b5; background: #f7fbf8; }
.account-trigger > svg { width: 14px; color: var(--muted); }
.account-avatar { position: relative; display: grid; width: 30px; height: 30px; place-items: center; flex: none; color: var(--forest-deep); background: var(--lime); border-radius: 50%; font-size: 11px; font-weight: 800; }
.account-avatar::after { position: absolute; right: -1px; bottom: -1px; width: 8px; height: 8px; content: ""; background: var(--green); border: 2px solid #fff; border-radius: 50%; }
.account-copy { display: grid; gap: 1px; min-width: 86px; }
.account-copy strong { font-size: 10px; line-height: 1.15; }
.account-copy small { color: var(--muted); font-size: 8px; line-height: 1.2; }
.dialog-detail-list { display: grid; gap: 1px; margin-top: 15px; border: 1px solid var(--line); }
.dialog-detail-list div { display: flex; justify-content: space-between; gap: 14px; padding: 10px; background: #f8faf8; font-size: 10px; }
.dialog-detail-list div + div { border-top: 1px solid var(--line); }
.dialog-detail-list span { color: var(--muted); }
.dialog-detail-list strong { color: var(--forest-deep); text-align: right; font-size: 10px; }
body[data-surface="project"] .account-trigger { color: #edf6f1; background: #162b2a; border-color: #31554c; }
body[data-surface="project"] .account-trigger:hover { background: #203733; }
body[data-surface="project"] .account-avatar::after { border-color: #162b2a; }

@media (max-width: 720px) {
  .account-trigger { width: 36px; min-height: 36px; padding: 3px; justify-content: center; border: 0; background: transparent; }
  .account-trigger:hover { background: #f1f6f3; }
  .account-trigger > svg,.account-copy { display: none; }
.account-avatar { width: 29px; height: 29px; }
}

.action-dialog:has(.composer-flow) { width: min(680px, calc(100vw - 28px)); max-height: min(860px, calc(100dvh - 36px)); overflow-x: hidden; overflow-y: auto; }
.dialog-card:has(.composer-flow) { width: 100%; min-width: 0; box-sizing: border-box; padding: 26px; overflow: hidden; }
.dialog-card:has(.composer-flow) * { min-width: 0; max-width: 100%; box-sizing: border-box; }
.composer-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; margin: 19px 0 21px; padding: 0; list-style: none; }
.composer-flow li { position: relative; display: grid; grid-template-columns: 20px minmax(0, 1fr); align-items: center; gap: 5px; min-width: 0; color: #8a9890; font-size: 9px; }
.composer-flow li:not(:last-child)::after { position: absolute; top: 10px; left: 24px; width: calc(100% - 25px); height: 1px; content: ""; background: #d9e4dd; }
.composer-flow b { position: relative; z-index: 1; display: grid; width: 20px; height: 20px; place-items: center; color: #74877e; background: #e6eee9; border-radius: 50%; font: 9px var(--mono); }
.composer-flow li.active { color: var(--forest-deep); font-weight: 800; }
.composer-flow li.active b { color: var(--forest-deep); background: var(--lime); }
.composer-flow span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.composer-section,.composer-media-step,.composer-publish-check { margin-top: 17px; padding: 15px; border: 1px solid var(--line); background: #fbfcfa; }
.composer-section-heading,.composer-media-heading,.composer-publish-check > div:first-child { display: flex; align-items: flex-start; gap: 9px; }
.composer-step-index { display: grid; width: 23px; height: 23px; flex: none; place-items: center; color: var(--forest-deep); background: #e5f4eb; border-radius: 50%; font: 9px var(--mono); }
.composer-section-heading strong,.composer-section-heading small,.composer-media-heading strong,.composer-media-heading small,.composer-publish-check strong,.composer-publish-check small { display: block; }
.composer-section-heading strong,.composer-media-heading strong,.composer-publish-check strong { color: var(--forest-deep); font-size: 11px; }
.composer-section-heading small,.composer-media-heading small,.composer-publish-check small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.5; }
.composer-section label { margin: 12px 0 0; }
.composer-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.composer-form-grid label { min-width: 0; }
.composer-media-heading { justify-content: space-between; gap: 12px; }
.composer-media-heading > div { display: flex; align-items: flex-start; gap: 9px; }
.composer-media-count { flex: none; padding-top: 3px; color: var(--green); font: 10px var(--mono); }
.composer-upload-row { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 10px; margin-top: 13px; padding: 11px; border: 1px dashed #aac5b5; background: #f3faf5; }
.composer-upload-icon { display: grid; width: 34px; height: 34px; place-items: center; color: var(--green); background: #e4f5ea; border-radius: 50%; }
.composer-upload-icon svg { width: 17px; }
.composer-upload-row strong,.composer-upload-row small { display: block; }
.composer-upload-row strong { color: var(--forest-deep); font-size: 10px; }
.composer-upload-row small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.composer-upload-row .secondary-button { min-height: 36px; white-space: nowrap; }
.composer-media-list { display: grid; gap: 7px; margin-top: 10px; }
.composer-media-empty { display: flex; align-items: center; gap: 7px; padding: 10px 0 1px; color: #77867e; font-size: 9px; line-height: 1.45; }
.composer-media-empty svg { width: 15px; color: var(--green); }
.composer-media-item { display: grid; grid-template-columns: 43px minmax(0, 1fr) 30px; align-items: center; gap: 9px; padding: 6px; background: #fff; border: 1px solid var(--line); }
.composer-media-preview { width: 43px; height: 35px; overflow: hidden; background: #dce8e0; }
.composer-media-preview img { display: block; width: 100%; height: 100%; object-fit: cover; }
.composer-video-file { display: grid; width: 100%; height: 100%; place-items: center; color: var(--forest-deep); background: #e5f4eb; }
.composer-video-file svg { width: 16px; }
.composer-media-file { min-width: 0; }
.composer-media-file span,.composer-media-file strong,.composer-media-file small { display: block; }
.composer-media-file span { color: var(--green); font-size: 8px; }
.composer-media-file strong { overflow: hidden; margin-top: 1px; color: var(--forest-deep); font-size: 10px; white-space: nowrap; text-overflow: ellipsis; }
.composer-media-file small { margin-top: 1px; color: var(--muted); font-size: 8px; }
.composer-remove-media { width: 30px; min-height: 30px; padding: 0; }
.composer-remove-media svg { width: 14px; }
.composer-media-protection { display: flex; align-items: flex-start; gap: 5px; margin: 10px 0 0; color: #5f7369; font-size: 9px !important; line-height: 1.5 !important; }
.composer-media-protection svg { width: 13px; flex: none; color: var(--green); }
.composer-consent { grid-template-columns: 16px minmax(0, 1fr); align-items: flex-start; margin: 14px 0 0 !important; line-height: 1.5; }
.composer-consent input { width: 15px !important; height: 15px; min-height: 0; margin: 1px 0 0; accent-color: var(--green); }
.composer-check-status { display: flex; align-items: center; gap: 5px; margin-top: 12px; padding: 8px 9px; color: #8b611c; background: #fff4de; font-size: 9px; line-height: 1.45; }
.composer-check-status svg { width: 13px; flex: none; }
.composer-check-status.is-ready { color: #367357; background: #e9f6ee; }
.composer-dialog-actions { align-items: center; }
.composer-dialog-actions > span { flex: 1; }

@media (max-width: 720px) {
  .action-dialog:has(.composer-flow) { width: min(100vw - 16px, 680px); max-height: calc(100dvh - 16px); }
  .dialog-card:has(.composer-flow) { padding: 18px; }
  .composer-flow { gap: 3px; }
  .composer-flow li { grid-template-columns: 18px minmax(0, 1fr); font-size: 8px; }
  .composer-flow b { width: 18px; height: 18px; font-size: 8px; }
  .composer-flow li:not(:last-child)::after { top: 9px; left: 22px; width: calc(100% - 23px); }
  .composer-form-grid { grid-template-columns: 1fr; gap: 0; }
  .composer-upload-row { grid-template-columns: 30px minmax(0, 1fr); }
  .composer-upload-icon { width: 30px; height: 30px; }
  .composer-upload-row .secondary-button { grid-column: 1 / -1; width: 100%; }
  .composer-dialog-actions { flex-wrap: wrap; }
  .composer-dialog-actions .text-button { order: 3; width: 100%; justify-content: center; }
  .composer-dialog-actions > span { display: none; }
}

.professional-profile { margin-bottom: 22px; border: 1px solid var(--line); background: #fff; }
.professional-profile-hero { display: grid; grid-template-columns: 70px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 22px; border-bottom: 1px solid var(--line); }
.professional-profile-portrait { position: relative; display: grid; width: 64px; height: 64px; place-items: center; color: var(--forest-deep); background: var(--lime); border-radius: 50%; font-family: var(--serif); font-size: 26px; font-weight: 800; }
.professional-profile-portrait > span { position: absolute; right: -3px; bottom: -2px; display: grid; width: 20px; height: 20px; place-items: center; color: #fff; background: var(--green); border: 2px solid #fff; border-radius: 50%; }
.professional-profile-portrait svg { width: 12px; }
.professional-profile-copy h2 { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin: 4px 0 5px; color: var(--forest-deep); font-family: var(--serif); font-size: 23px; }
.professional-profile-copy h2 small { color: var(--green); font-family: var(--sans); font-size: 11px; font-weight: 800; }
.professional-profile-copy p { max-width: 680px; margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.6; }
.professional-profile-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 11px; }
.professional-profile-tags span { display: inline-flex; align-items: center; gap: 4px; padding: 4px 6px; color: #526b5f; background: #eff5f1; font-size: 9px; }
.professional-profile-tags svg { width: 12px; color: var(--green); }
.professional-profile-actions { display: flex; align-items: center; gap: 8px; align-self: start; }
.professional-profile-actions .icon-button { min-height: 37px; }
.professional-profile-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-bottom: 1px solid var(--line); }
.professional-profile-stats > button,.professional-profile-stats > div { min-height: 70px; padding: 12px 18px; color: var(--forest-deep); background: #fff; border: 0; border-right: 1px solid var(--line); text-align: left; }
.professional-profile-stats > div:last-child { border-right: 0; background: #f8faf8; }
.professional-profile-stats > button:hover { background: #f0f8f3; }
.professional-profile-stats strong,.professional-profile-stats span { display: block; }
.professional-profile-stats strong { font: 20px var(--mono); }
.professional-profile-stats span { margin-top: 3px; color: var(--muted); font-size: 9px; }
.professional-profile-notice { display: flex; align-items: flex-start; gap: 7px; margin: 14px 18px 0; padding: 9px 10px; color: #5b7064; background: #f1f7f3; border-left: 3px solid var(--green); font-size: 9px; line-height: 1.5; }
.professional-profile-notice svg { width: 14px; flex: none; color: var(--green); }
.professional-profile-tabs { display: flex; margin-top: 14px; padding: 0 18px; border-bottom: 1px solid var(--line); }
.professional-profile-tabs button { display: inline-flex; align-items: center; gap: 6px; min-height: 45px; padding: 0 14px; color: var(--muted); background: transparent; border: 0; border-bottom: 3px solid transparent; font-size: 10px; font-weight: 800; }
.professional-profile-tabs button svg { width: 14px; }
.professional-profile-tabs button:hover { color: var(--forest); }
.professional-profile-tabs button.active { color: var(--forest-deep); border-bottom-color: var(--lime); }
.profile-social-feed { padding: 18px; }
.profile-social-feed-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 15px; margin-bottom: 13px; }
.profile-social-feed-head h2 { margin: 5px 0 0; color: var(--forest-deep); font-family: var(--serif); font-size: 17px; }
.profile-social-feed-head > span { display: inline-flex; align-items: center; gap: 4px; color: #6b7f74; font-size: 9px; }
.profile-social-feed-head > span svg { width: 13px; color: var(--green); }
.profile-activity { padding: 17px; border: 1px solid var(--line); background: #fff; }
.profile-activity + .profile-activity { margin-top: 11px; }
.profile-activity-author { display: flex; align-items: center; gap: 8px; }
.profile-activity-author > div { min-width: 0; }
.profile-activity-author strong,.profile-activity-author small { display: block; }
.profile-activity-author strong { color: var(--forest-deep); font-size: 10px; }
.profile-activity-author small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.profile-activity-author .text-button { margin-left: auto; min-height: 28px; font-size: 9px; }
.profile-activity-avatar { display: grid; width: 30px; height: 30px; flex: none; place-items: center; color: #fff; background: var(--forest); border-radius: 50%; font: 11px var(--serif); font-weight: 800; }
.profile-activity-avatar.coral { background: var(--coral); }
.profile-activity-avatar.blue { background: #357382; }
.profile-verified { display: inline-flex; align-items: center; gap: 4px; margin-left: auto; color: var(--green); background: #e9f5ed; padding: 4px 6px; font-size: 8px; font-weight: 800; }
.profile-verified svg { width: 12px; }
.profile-activity h3 { margin: 14px 0 6px; color: var(--forest-deep); font-family: var(--serif); font-size: 17px; line-height: 1.45; }
.profile-activity p { max-width: 760px; margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.7; }
.profile-activity-media { position: relative; height: 205px; margin-top: 14px; overflow: hidden; background: #dbe7df; }
.profile-activity-media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, transparent 52%, rgba(8, 38, 29, .56)); pointer-events: none; }
.profile-activity-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.profile-activity-media span { position: absolute; z-index: 1; left: 10px; bottom: 9px; display: inline-flex; align-items: center; gap: 5px; color: #fff; font-size: 9px; font-weight: 800; }
.profile-activity-media svg { width: 13px; }
.profile-activity footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 13px; padding-top: 11px; border-top: 1px solid var(--line); }
.profile-activity footer > span { color: var(--muted); font-size: 9px; }
.profile-activity footer > div { display: flex; gap: 10px; }
.profile-activity .text-button { min-height: 29px; font-size: 9px; }
.profile-activity .text-button svg { width: 13px; }
.profile-activity .text-button.selected { color: #86601a; }
.profile-activity-compact h3 { font-size: 15px; }
.profile-reputation-grid,.profile-honor-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--line); }
.profile-reputation-grid > article,.profile-honor-grid > article { min-height: 182px; padding: 19px; background: #fff; }
.profile-reputation-grid > article > strong { display: block; margin: 12px 0 4px; color: var(--forest-deep); font: 35px var(--mono); }
.profile-panel-label { color: var(--muted); font: 9px var(--mono); }
.profile-reputation-grid p { margin: 0; color: var(--muted); font-size: 10px; }
.profile-reputation-grid article > div { display: grid; gap: 6px; margin-top: 15px; padding-top: 11px; border-top: 1px solid var(--line); }
.profile-reputation-grid article > div span { display: flex; justify-content: space-between; color: var(--muted); font-size: 9px; }
.profile-reputation-grid article > div b { color: var(--green); font: 10px var(--mono); }
.profile-reputation-grid > aside,.profile-honor-grid > aside { grid-column: 1 / -1; padding: 18px 19px; color: #dcece3; background: var(--forest-deep); }
.profile-reputation-grid aside strong,.profile-honor-grid aside strong { display: block; color: var(--lime); font-size: 12px; }
.profile-reputation-grid aside p,.profile-honor-grid aside p { max-width: 700px; margin: 6px 0 12px; color: #c7d8cf; font-size: 10px; line-height: 1.6; }
.profile-reputation-grid aside .secondary-button,.profile-honor-grid aside .secondary-button { color: #eff9f3; border-color: #5d8174; background: transparent; }
.profile-honor-grid > article { display: flex; gap: 12px; align-items: flex-start; min-height: 124px; }
.profile-honor-grid > article > span { display: grid; width: 34px; height: 34px; flex: none; place-items: center; color: var(--forest-deep); background: var(--lime); border-radius: 50%; }
.profile-honor-grid svg { width: 17px; }
.profile-honor-grid strong,.profile-honor-grid p,.profile-honor-grid small { display: block; }
.profile-honor-grid strong { color: var(--forest-deep); font-size: 11px; }
.profile-honor-grid p { margin: 4px 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.profile-honor-grid small { color: var(--green); font-size: 9px; }

@media (max-width: 720px) {
  .professional-profile-hero { grid-template-columns: 51px minmax(0, 1fr); gap: 11px; padding: 16px; }
  .professional-profile-portrait { width: 50px; height: 50px; font-size: 20px; }
  .professional-profile-actions { grid-column: 1 / -1; justify-content: flex-end; }
  .professional-profile-copy h2 { font-size: 19px; }
  .professional-profile-copy p { font-size: 10px; }
  .professional-profile-tags { gap: 5px; }
  .professional-profile-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .professional-profile-stats > button,.professional-profile-stats > div { min-height: 64px; padding: 11px 14px; border-bottom: 1px solid var(--line); }
  .professional-profile-stats > button:nth-child(2n) { border-right: 0; }
  .professional-profile-stats > div { border-bottom: 0; }
  .professional-profile-tabs { overflow-x: auto; padding: 0 10px; }
  .professional-profile-tabs button { flex: none; min-height: 43px; padding-inline: 10px; white-space: nowrap; }
  .profile-social-feed { padding: 14px; }
  .profile-social-feed-head { align-items: flex-start; flex-direction: column; gap: 7px; }
  .profile-activity { padding: 14px; }
  .profile-activity h3 { font-size: 15px; }
  .profile-activity-media { height: 175px; }
  .profile-activity footer { align-items: flex-start; flex-direction: column; }
  .profile-activity footer > div { width: 100%; justify-content: space-between; }
  .profile-reputation-grid,.profile-honor-grid { grid-template-columns: 1fr; }
  .profile-reputation-grid > aside,.profile-honor-grid > aside { grid-column: auto; }
}

body[data-surface="publicProfile"] .app-content { max-width: 1010px; padding-top: 34px; }
body[data-surface="publicProfile"] .view-head { align-items: center; padding-bottom: 18px; border-bottom: 1px solid var(--line-dark); }
.public-profile-hero { display: grid; grid-template-columns: 82px minmax(0, 1fr) 228px; gap: 19px; align-items: center; margin-top: 20px; padding: 24px; color: #e8f3ed; background: var(--forest-deep); border-left: 5px solid var(--lime); }
.public-profile-portrait { position: relative; display: grid; width: 76px; height: 76px; place-items: center; color: var(--forest-deep); background: var(--lime); border-radius: 50%; font: 29px var(--serif); font-weight: 800; }
.public-profile-portrait > span { position: absolute; right: -2px; bottom: -2px; display: grid; width: 21px; height: 21px; place-items: center; color: #fff; background: var(--green); border: 2px solid var(--forest-deep); border-radius: 50%; }
.public-profile-portrait svg { width: 12px; }
.public-profile-copy h1 { display: flex; flex-wrap: wrap; align-items: baseline; gap: 9px; margin: 4px 0 6px; color: #fff; font-family: var(--serif); font-size: 26px; }
.public-profile-copy h1 small { color: var(--lime); font-family: var(--sans); font-size: 11px; font-weight: 800; }
.public-profile-copy p { max-width: 610px; margin: 0; color: #c4d9cd; font-size: 11px; line-height: 1.65; }
.public-profile-copy > div { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.public-profile-copy > div span { display: inline-flex; align-items: center; gap: 4px; color: #bdd2c6; font-size: 9px; }
.public-profile-copy > div svg { width: 13px; color: var(--lime); }
.public-profile-hero aside { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; border: 1px solid rgba(214, 237, 223, .25); background: rgba(214, 237, 223, .25); }
.public-profile-hero aside button { min-height: 72px; padding: 8px 4px; color: #ecf6f0; background: rgba(4, 33, 26, .45); border: 0; text-align: center; }
.public-profile-hero aside button:hover { color: var(--forest-deep); background: var(--lime); }
.public-profile-hero aside b,.public-profile-hero aside span { display: block; }
.public-profile-hero aside b { font: 16px var(--mono); }
.public-profile-hero aside span { margin-top: 4px; font-size: 8px; line-height: 1.25; }
.public-profile-boundary { display: grid; grid-template-columns: 16px minmax(0, 1fr) auto; align-items: center; gap: 8px; margin-top: 14px; padding: 11px 13px; color: #5c7065; background: #eff7f2; border: 1px solid #d7e9dd; font-size: 10px; line-height: 1.55; }
.public-profile-boundary > svg { width: 15px; color: var(--green); }
.public-profile-boundary .primary-button { min-height: 36px; white-space: nowrap; }
.public-profile-tabs { display: flex; margin-top: 20px; border-bottom: 1px solid var(--line); }
.public-profile-tabs button { display: inline-flex; align-items: center; gap: 6px; min-height: 47px; padding: 0 15px; color: var(--muted); background: transparent; border: 0; border-bottom: 3px solid transparent; font-size: 10px; font-weight: 800; }
.public-profile-tabs button:hover { color: var(--forest); }
.public-profile-tabs button.active { color: var(--forest-deep); border-bottom-color: var(--lime); }
.public-profile-tabs svg { width: 14px; }
.public-profile-posts { display: grid; gap: 13px; margin-top: 16px; }
.public-profile-post { padding: 20px; border: 1px solid var(--line); background: #fff; }
.public-profile-post header { display: flex; align-items: center; gap: 9px; }
.public-profile-post header > div { min-width: 0; }
.public-profile-post header strong,.public-profile-post header small { display: block; }
.public-profile-post header strong { color: var(--forest-deep); font-size: 10px; }
.public-profile-post header small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.public-profile-post-avatar { display: grid; width: 31px; height: 31px; flex: none; place-items: center; color: #fff; background: var(--forest); border-radius: 50%; font: 11px var(--serif); font-weight: 800; }
.public-profile-post-proof { display: inline-flex; align-items: center; gap: 4px; margin-left: auto; padding: 4px 6px; color: var(--green); background: #eaf5ed; font-size: 8px; font-weight: 800; }
.public-profile-post-proof svg { width: 12px; }
.public-profile-post h3 { margin: 14px 0 6px; color: var(--forest-deep); font-family: var(--serif); font-size: 19px; line-height: 1.45; }
.public-profile-post p { max-width: 720px; margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.75; }
.public-profile-post-media { position: relative; height: 250px; margin-top: 14px; overflow: hidden; background: #dae6df; }
.public-profile-post-media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, transparent 53%, rgba(8, 38, 29, .58)); pointer-events: none; }
.public-profile-post-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.public-profile-post-media span { position: absolute; z-index: 1; bottom: 11px; left: 11px; display: inline-flex; align-items: center; gap: 5px; color: #fff; font-size: 9px; font-weight: 800; }
.public-profile-post-media svg { width: 14px; }
.public-profile-post footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); }
.public-profile-post footer > span { color: var(--muted); font-size: 9px; }
.public-profile-post footer > div { display: flex; gap: 11px; }
.public-profile-post .text-button { min-height: 30px; font-size: 9px; }
.public-profile-post .text-button.selected { color: #86601a; }
.public-profile-work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
.public-profile-work-grid article { overflow: hidden; border: 1px solid var(--line); background: #fff; }
.public-profile-work-grid img { display: block; width: 100%; height: 170px; object-fit: cover; }
.public-profile-work-grid div { padding: 14px; }
.public-profile-work-grid span { color: var(--green); font-size: 9px; font-weight: 800; }
.public-profile-work-grid h3 { margin: 7px 0 5px; color: var(--forest-deep); font-family: var(--serif); font-size: 15px; line-height: 1.45; }
.public-profile-work-grid p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.public-profile-reputation { display: grid; grid-template-columns: .75fr 1.25fr; gap: 1px; margin-top: 16px; background: var(--line); }
.public-profile-reputation > div { min-height: 222px; padding: 22px; background: #fff; }
.public-profile-reputation strong { display: block; margin: 12px 0 2px; color: var(--forest-deep); font: 46px var(--mono); }
.public-profile-reputation > div > b { color: var(--green); font-size: 11px; }
.public-profile-reputation > div > p { margin: 8px 0 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.public-profile-score-list { display: grid; align-content: center; gap: 1px; background: var(--line); padding: 0 !important; }
.public-profile-score-list span { display: flex; align-items: center; justify-content: space-between; padding: 14px; color: var(--muted); background: #fff; font-size: 11px; }
.public-profile-score-list b { color: var(--green); font: 13px var(--mono); }
.public-profile-separation { grid-column: 1 / -1; display: flex; align-items: flex-start; gap: 7px; margin: 0; padding: 12px 16px; color: #c8dace; background: var(--forest-deep); font-size: 10px; line-height: 1.55; }
.public-profile-separation svg { width: 15px; flex: none; color: var(--lime); }
.public-profile-honors { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 16px; background: var(--line); }
.public-profile-honors article { display: flex; gap: 11px; padding: 18px; background: #fff; }
.public-profile-honors article > span { display: grid; width: 34px; height: 34px; flex: none; place-items: center; color: var(--forest-deep); background: var(--lime); border-radius: 50%; }
.public-profile-honors svg { width: 17px; }
.public-profile-honors strong { display: block; color: var(--forest-deep); font-size: 11px; }
.public-profile-honors p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.public-profile-honors aside { grid-column: 1 / -1; padding: 13px 18px; color: #c5d9cd; background: var(--forest-deep); font-size: 10px; line-height: 1.55; }

@media (max-width: 720px) {
  body[data-surface="publicProfile"] .app-content { padding-top: 22px; }
  body[data-surface="publicProfile"] .view-head { align-items: flex-start; }
  .public-profile-hero { grid-template-columns: 59px minmax(0, 1fr); gap: 12px; padding: 17px; }
  .public-profile-portrait { width: 55px; height: 55px; font-size: 22px; }
  .public-profile-copy h1 { font-size: 21px; }
  .public-profile-copy p { font-size: 10px; }
  .public-profile-hero aside { grid-column: 1 / -1; }
  .public-profile-hero aside button { min-height: 59px; }
  .public-profile-boundary { grid-template-columns: 15px minmax(0, 1fr); padding: 11px; font-size: 9px; }
  .public-profile-boundary .primary-button { grid-column: 1 / -1; width: 100%; }
  .public-profile-tabs { overflow-x: auto; }
  .public-profile-tabs button { flex: none; padding-inline: 11px; white-space: nowrap; }
  .public-profile-post { padding: 16px; }
  .public-profile-post h3 { font-size: 17px; }
  .public-profile-post-media { height: 192px; }
  .public-profile-post footer { align-items: flex-start; flex-direction: column; }
  .public-profile-post footer > div { width: 100%; justify-content: space-between; }
  .public-profile-work-grid,.public-profile-honors { grid-template-columns: 1fr; }
  .public-profile-work-grid img { height: 198px; }
  .public-profile-reputation { grid-template-columns: 1fr; }
  .public-profile-reputation > div { min-height: 0; }
  .public-profile-separation,.public-profile-honors aside { grid-column: auto; }
}

/* Premium artisan portfolio finish: graphite, mineral teal, and brushed bronze. */
body[data-surface="publicProfile"] { background: #f0f2ee; }
body[data-surface="publicProfile"] .topbar { background: rgba(248,249,246,.94); }
body[data-surface="publicProfile"] .view-head .eyebrow { color: #1d6f6b; }
body[data-surface="publicProfile"] .view-head h1 { color: #202626; }
body[data-surface="publicProfile"] .view-head .secondary-button { color: #33403f; border-color: #c7ccc5; background: #fff; }
body[data-surface="publicProfile"] .view-head .secondary-button:hover { color: #fff; border-color: #284745; background: #284745; }
.public-profile-hero { position: relative; overflow: hidden; background: #1b2020; border-left-color: #c49a5a; box-shadow: 0 16px 35px rgba(27,32,32,.13); }
.public-profile-hero::after { position: absolute; right: -48px; bottom: -82px; width: 260px; height: 260px; content: ""; border: 1px solid rgba(196,154,90,.26); border-radius: 50%; box-shadow: 0 0 0 24px rgba(196,154,90,.06), 0 0 0 48px rgba(196,154,90,.04); pointer-events: none; }
.public-profile-hero > * { position: relative; z-index: 1; }
.public-profile-portrait { color: #1b2020; background: #c49a5a; box-shadow: 0 8px 20px rgba(0,0,0,.18); }
.public-profile-portrait > span { color: #fff; background: #1d6f6b; border-color: #1b2020; }
.public-profile-copy h1 small { color: #deb977; }
.public-profile-copy p { color: #cad3cf; }
.public-profile-copy > div span { color: #cbd5d1; }
.public-profile-copy > div svg { color: #c49a5a; }
.public-profile-hero aside { border-color: rgba(222,185,119,.36); background: rgba(222,185,119,.21); }
.public-profile-hero aside button { color: #f4f4ef; background: rgba(12,16,16,.58); }
.public-profile-hero aside button:hover { color: #1b2020; background: #c49a5a; }
.public-profile-boundary { color: #536762; background: #f8faf7; border-color: #d6dfd8; border-left: 3px solid #1d6f6b; }
.public-profile-boundary > svg { color: #1d6f6b; }
.public-profile-boundary .primary-button { color: #fff; background: #1d6f6b; border-color: #1d6f6b; }
.public-profile-boundary .primary-button:hover { background: #155a57; border-color: #155a57; }
.public-profile-tabs { border-color: #cfd5ce; }
.public-profile-tabs button.active { color: #1d6f6b; border-bottom-color: #c49a5a; }
.public-profile-post { border-color: #d5d9d3; box-shadow: 0 8px 21px rgba(36,44,42,.045); }
.public-profile-post h3 { color: #202626; }
.public-profile-post-proof { color: #1d6f6b; background: #e4f0ec; }
.public-profile-post-avatar { background: #284745; }
.public-profile-post-media { background: #d9d9d0; }
.public-profile-post-media::after { background: linear-gradient(180deg, transparent 48%, rgba(23,27,27,.68)); }
.public-profile-work-grid article { border-color: #d5d9d3; box-shadow: 0 8px 20px rgba(36,44,42,.045); }
.public-profile-work-grid span { color: #1d6f6b; }
.public-profile-work-grid h3 { color: #202626; }
.public-profile-reputation { background: #d3d8d2; }
.public-profile-reputation > div { background: #fbfcf9; }
.public-profile-reputation strong { color: #202626; }
.public-profile-reputation > div > b,.public-profile-score-list b { color: #1d6f6b; }
.public-profile-score-list { background: #d3d8d2; }
.public-profile-score-list span { background: #fbfcf9; }
.public-profile-separation { color: #d5ded9; background: #202626; }
.public-profile-separation svg { color: #c49a5a; }
.public-profile-honors { background: #d3d8d2; }
.public-profile-honors article { background: #fbfcf9; }
.public-profile-honors article > span { color: #1b2020; background: #e7d1a9; }
.public-profile-honors strong { color: #202626; }
.public-profile-honors aside { color: #d4ddd8; background: #202626; }

body[data-surface="community"] .view-head .primary-button { color: #fff; background: #1d6f6b; border-color: #1d6f6b; }
body[data-surface="community"] .view-head .primary-button:hover { background: #155a57; border-color: #155a57; }
.community-profile-overview { background: #1b2020; border-left-color: #c49a5a; box-shadow: 0 15px 32px rgba(27,32,32,.10); }
.community-profile-avatar { color: #1b2020; background: #c49a5a; }
.community-profile-avatar > span { background: #1d6f6b; border-color: #1b2020; }
.community-profile-overview .eyebrow { color: #d8b879; }
.community-profile-overview h2 small { color: #d8b879; }
.community-profile-actions .secondary-button { color: #1b2020; background: #c49a5a; border-color: #c49a5a; }
.community-profile-actions .secondary-button:hover { background: #d7b675; }
.community-profile-stats b { color: #f3f4ef; }
.community-clean-toolbar,.community-v2-post,.community-clean-side { border-color: #d5d9d3; box-shadow: 0 5px 15px rgba(36,44,42,.025); }
.community-v2-tabs button.active { color: #1d6f6b; background: #f5f8f5; box-shadow: inset 0 -3px 0 #c49a5a; }
.community-v2-tabs button.active small { color: #1d6f6b; }
.community-v2-topic { color: #765420; background: #f4e8d2; }
.community-v2-proof { color: #1d6f6b; background: #e5f0eb; }
.community-v2-post h2,.community-clean-side h2 { color: #202626; }
.community-v2-author > span { color: #fff; background: #284745; }
.community-media-play { color: #1b2020; background: #c49a5a; }
.community-v2-copyright { color: #64726c; background: #f3f6f2; }
.community-clean-growth { background: #f4f5f1; }
.community-clean-metrics b { color: #1d6f6b; }

@media (max-width: 720px) {
  .public-profile-hero::after { right: -96px; bottom: -100px; width: 205px; height: 205px; }
}

/* Monochrome portfolio pass: UI chrome is grayscale; project media remains full color. */
body,body[data-surface="publicProfile"] { background: #f3f3f1; }
.shell { background: #f3f3f1; }
.sidebar { background: #f8f8f7; border-right-color: #dededb; box-shadow: 7px 0 20px rgba(0,0,0,.025); }
.sidebar::before { background: #151515; }
.brand { color: #151515; border-bottom-color: #dfdfdc; }
.brand-mark { color: #fff; background: #151515; border-radius: 0; }
.brand small,.artisan-id small { color: #858585; }
.portrait { color: #fff; background: #3a3a3a; }
.artisan-id strong { color: #202020; }
.verified { color: #303030; }
.nav-item { color: #737373; }
.nav-item:hover { color: #151515; background: #eeeeec; }
.nav-item.active { color: #111; background: #e7e7e4; border-left-color: #151515; }
.nav-item b { color: #fff; background: #151515; }
.nav-item .season-badge { color: #444; background: #d8d8d5; }
.sidebar-foot { border-top-color: #dfdfdc; }
.protected-line,.availability { color: #626262; background: #fafafa; border-color: #d8d8d5; }
.protected-line:hover,.availability:hover { color: #111; border-color: #555; }
.status-dot { background: #202020; box-shadow: 0 0 0 3px rgba(0,0,0,.08); }
.topbar { background: rgba(255,255,255,.92); border-bottom-color: #dfdfdc; }
.breadcrumb { color: #777; }
.breadcrumb strong { color: #222; }
.icon-button { color: #333; border-color: #dededb; background: #fff; }
.icon-button:hover { color: #111; border-color: #555; background: #f1f1ef; }
.icon-button em { background: #444; }
.primary-button,.ai-button { color: #fff; background: #151515; border-color: #151515; }
.primary-button:hover,.ai-button:hover { color: #fff; background: #3a3a3a; border-color: #3a3a3a; }
.secondary-button { color: #292929; border-color: #c8c8c4; background: #fff; }
.secondary-button:hover { color: #111; border-color: #555; background: #f0f0ee; }
.text-button { color: #303030; }
.text-button:hover { color: #111; }
.eyebrow { color: #666; }
.panel { border-color: #dededb; box-shadow: 0 4px 14px rgba(0,0,0,.03); }
.panel-head h2,.view-head h1 { color: #171717; }
.badge,.tag { color: #fff; background: #4a4a4a; border-radius: 3px; }
.badge.warning { color: #333; background: #dcdcd8; }
.badge.muted { color: #666; background: #eeeeeb; }
.badge.danger { color: #fff; background: #744; }
.skip-link { color: #fff; background: #151515; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline-color: rgba(0,0,0,.38); }

body[data-surface="publicProfile"] .topbar { background: rgba(255,255,255,.94); }
body[data-surface="publicProfile"] .view-head .eyebrow { color: #666; }
body[data-surface="publicProfile"] .view-head .secondary-button { color: #292929; background: #fff; border-color: #c8c8c4; }
body[data-surface="publicProfile"] .view-head .secondary-button:hover { color: #fff; background: #151515; border-color: #151515; }
.public-profile-hero { background: linear-gradient(90deg, rgba(0,0,0,.89) 0%, rgba(0,0,0,.69) 48%, rgba(0,0,0,.24) 75%, rgba(0,0,0,.06) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #151515; box-shadow: 0 14px 28px rgba(0,0,0,.12); }
.public-profile-portrait { color: #fff; background: #151515; }
.public-profile-portrait > span { color: #151515; background: #fff; border-color: #151515; }
.public-profile-copy h1 small { color: #e4e4e1; }
.public-profile-copy p,.public-profile-copy > div span { color: #dededb; }
.public-profile-copy > div svg { color: #f0f0ed; }
.public-profile-hero aside { border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.15); }
.public-profile-hero aside button { color: #fff; background: rgba(0,0,0,.42); }
.public-profile-hero aside button:hover { color: #111; background: #fff; }
.public-profile-boundary { color: #555; background: #fafafa; border-color: #dededb; border-left-color: #222; }
.public-profile-boundary > svg { color: #333; }
.public-profile-boundary .primary-button { color: #fff; background: #151515; border-color: #151515; }
.public-profile-tabs button.active { color: #151515; border-bottom-color: #151515; }
.public-profile-post,.public-profile-work-grid article { border-color: #dededb; box-shadow: 0 4px 14px rgba(0,0,0,.03); }
.public-profile-post h3,.public-profile-work-grid h3 { color: #171717; }
.public-profile-post-avatar { background: #3a3a3a; }
.public-profile-post-proof { color: #fff; background: #4a4a4a; }
.public-profile-work-grid span { color: #555; }
.public-profile-reputation,.public-profile-honors { background: #dededb; }
.public-profile-reputation > div,.public-profile-score-list span,.public-profile-honors article { background: #fff; }
.public-profile-reputation strong { color: #151515; }
.public-profile-reputation > div > b,.public-profile-score-list b { color: #333; }
.public-profile-separation,.public-profile-honors aside { color: #e5e5e2; background: #202020; }
.public-profile-separation svg { color: #fff; }
.public-profile-honors article > span { color: #fff; background: #444; }

body[data-surface="community"] .view-head .primary-button { color: #fff; background: #151515; border-color: #151515; }
body[data-surface="community"] .view-head .primary-button:hover { background: #3a3a3a; border-color: #3a3a3a; }
.community-profile-overview { color: #252525; background: #fff; border-color: #dededb; border-left-color: #151515; box-shadow: 0 5px 15px rgba(0,0,0,.03); }
.community-profile-avatar { color: #fff; background: #151515; }
.community-profile-avatar > span { color: #151515; background: #fff; border-color: #151515; }
.community-profile-overview .eyebrow { color: #666; }
.community-profile-overview h2 { color: #171717; }
.community-profile-overview h2 small { color: #555; }
.community-profile-overview p,.community-profile-stats span,.community-profile-actions > span { color: #707070; }
.community-profile-stats b { color: #171717; }
.community-profile-actions .secondary-button { color: #fff; background: #151515; border-color: #151515; }
.community-profile-actions .secondary-button:hover { background: #3a3a3a; border-color: #3a3a3a; }
.community-clean-toolbar,.community-v2-post,.community-clean-side { border-color: #dededb; box-shadow: 0 4px 13px rgba(0,0,0,.025); }
.community-v2-tabs button:hover { color: #151515; background: #f3f3f1; }
.community-v2-tabs button.active { color: #151515; background: #f1f1ef; box-shadow: inset 0 -3px 0 #151515; }
.community-v2-tabs button.active small { color: #151515; }
.community-v2-topic { color: #333; background: #e5e5e1; }
.community-v2-proof { color: #fff; background: #4a4a4a; }
.community-v2-post h2,.community-clean-side h2 { color: #171717; }
.community-v2-author > span { background: #3a3a3a; }
.community-media-play { color: #fff; background: #151515; }
.community-v2-copyright { color: #666; background: #f3f3f1; }
.community-clean-growth { background: #f7f7f5; }
.community-clean-metrics b { color: #222; }

/* Navy atelier system: the entire interface uses one refined deep-blue scale. */
:root {
  --ink: #102A43;
  --ink-soft: #48627B;
  --muted: #71859A;
  --forest: #1F4E79;
  --forest-deep: #0B1F33;
  --green: #2F6FAD;
  --lime: #102A43;
  --coral: #3F7FB8;
  --amber: #DCE8F3;
  --red: #A94442;
  --canvas: #F3F7FB;
  --paper: #FAFCFE;
  --line: #D7E2EC;
  --line-dark: #B9CAD9;
  --shadow: 0 16px 38px rgba(11,31,51,.10);
}
body,body[data-surface="publicProfile"],.shell { background: #F3F7FB; }
.sidebar { color: #C9D8E6; background: #102A43; border-right-color: #183B5A; box-shadow: 8px 0 28px rgba(11,31,51,.12); }
.sidebar::before { background: #6FA5D2; }
.brand { color: #fff; border-bottom-color: rgba(211,226,239,.18); }
.brand-mark { color: #102A43; background: #E8F1F8; border-radius: 6px; }
.brand small,.artisan-id small { color: #9DB5C9; }
.portrait { color: #fff; background: #3F7FB8; }
.artisan-id strong { color: #F7FBFF; }
.verified { color: #8FC2E7; }
.nav-item { color: #B5C9D9; }
.nav-item:hover { color: #fff; background: rgba(131,175,209,.12); }
.nav-item.active { color: #fff; background: rgba(111,165,210,.18); border-left-color: #8FC2E7; }
.nav-item b { color: #102A43; background: #E8F1F8; }
.nav-item .season-badge { color: #102A43; background: #A9C9E3; }
.sidebar-foot { border-top-color: rgba(211,226,239,.16); }
.protected-line,.availability { color: #C3D4E2; background: rgba(6,23,39,.15); border-color: rgba(211,226,239,.22); }
.protected-line:hover,.availability:hover { color: #fff; border-color: #8FC2E7; }
.status-dot { background: #8FC2E7; box-shadow: 0 0 0 3px rgba(143,194,231,.14); }
.topbar { background: rgba(250,252,254,.94); border-bottom-color: #D7E2EC; }
.breadcrumb { color: #71859A; }.breadcrumb strong { color: #102A43; }
.icon-button { color: #1F4E79; border-color: #D7E2EC; background: #fff; }
.icon-button:hover { color: #0B1F33; border-color: #7199BA; background: #EEF5FA; }
.icon-button em { background: #3F7FB8; }
.primary-button,.ai-button,body[data-surface="community"] .view-head .primary-button { color: #fff; background: #102A43; border-color: #102A43; }
.primary-button:hover,.ai-button:hover,body[data-surface="community"] .view-head .primary-button:hover { color: #fff; background: #1F4E79; border-color: #1F4E79; }
.secondary-button { color: #1F4E79; border-color: #B9CAD9; background: #fff; }
.secondary-button:hover { color: #0B1F33; border-color: #7199BA; background: #EEF5FA; }
.text-button { color: #2F6FAD; }.text-button:hover { color: #102A43; }
.eyebrow,body[data-surface="publicProfile"] .view-head .eyebrow { color: #2F6FAD; }
.panel { border-color: #D7E2EC; box-shadow: 0 5px 15px rgba(11,31,51,.035); }
.panel-head h2,.view-head h1 { color: #102A43; }
.badge,.tag { color: #fff; background: #2F6FAD; border-radius: 3px; }
.badge.warning { color: #1F4E79; background: #DDEBF6; }.badge.muted { color: #71859A; background: #EDF3F8; }.badge.danger { color: #fff; background: #A94442; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline-color: rgba(47,111,173,.42); }

body[data-surface="publicProfile"] .topbar { background: rgba(250,252,254,.95); }
body[data-surface="publicProfile"] .view-head .secondary-button { color: #1F4E79; background: #fff; border-color: #B9CAD9; }
body[data-surface="publicProfile"] .view-head .secondary-button:hover { color: #fff; background: #102A43; border-color: #102A43; }
.public-profile-hero { background: linear-gradient(90deg, rgba(11,31,51,.96) 0%, rgba(16,42,67,.86) 47%, rgba(16,42,67,.35) 75%, rgba(16,42,67,.12) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #6FA5D2; box-shadow: 0 15px 32px rgba(11,31,51,.15); }
.public-profile-portrait { color: #102A43; background: #E8F1F8; }
.public-profile-portrait > span { color: #fff; background: #2F6FAD; border-color: #E8F1F8; }
.public-profile-copy h1 small { color: #B9D7ED; }
.public-profile-copy p,.public-profile-copy > div span { color: #D3E2EF; }
.public-profile-copy > div svg { color: #8FC2E7; }
.public-profile-hero aside { border-color: rgba(200,222,239,.35); background: rgba(206,224,239,.14); }
.public-profile-hero aside button { color: #F7FBFF; background: rgba(7,26,43,.46); }
.public-profile-hero aside button:hover { color: #102A43; background: #E8F1F8; }
.public-profile-boundary { color: #48627B; background: #F5F9FC; border-color: #D7E7F2; border-left-color: #2F6FAD; }
.public-profile-boundary > svg { color: #2F6FAD; }
.public-profile-boundary .primary-button { color: #fff; background: #102A43; border-color: #102A43; }
.public-profile-tabs button.active { color: #102A43; border-bottom-color: #2F6FAD; }
.public-profile-post,.public-profile-work-grid article { border-color: #D7E2EC; box-shadow: 0 5px 15px rgba(11,31,51,.035); }
.public-profile-post h3,.public-profile-work-grid h3 { color: #102A43; }
.public-profile-post-avatar { background: #1F4E79; }.public-profile-post-proof { color: #fff; background: #2F6FAD; }.public-profile-work-grid span { color: #2F6FAD; }
.public-profile-reputation,.public-profile-honors { background: #D7E2EC; }
.public-profile-reputation > div,.public-profile-score-list span,.public-profile-honors article { background: #fff; }
.public-profile-reputation strong { color: #102A43; }.public-profile-reputation > div > b,.public-profile-score-list b { color: #2F6FAD; }
.public-profile-separation,.public-profile-honors aside { color: #D8E9F5; background: #102A43; }.public-profile-separation svg { color: #8FC2E7; }.public-profile-honors article > span { color: #fff; background: #2F6FAD; }

/* Bright studio palette: paper white, coral action, lagoon trust, and artwork-led profile. */
body { background: #f4f7fb; }
.shell { background: #f4f7fb; }
.sidebar { color: #425e70; background: #ffffff; border-right: 1px solid #dce5ed; box-shadow: 8px 0 24px rgba(40,72,96,.04); }
.sidebar::before { top: 0; right: auto; bottom: 0; left: 0; width: 4px; background: #f26b5b; }
.brand { color: #1d3440; border-bottom-color: #e4ebf1; }
.brand-mark { color: #fff; background: #f26b5b; border-radius: 8px; }
.brand small { color: #78909f; }
.artisan-id { border-bottom-color: #e7edf2; }
.portrait { color: #fff; background: #167f8d; }
.artisan-id strong { color: #243e4b; }
.artisan-id small { color: #7a8f9c; }
.verified { color: #167f8d; }
.nav-item { color: #667f8e; border-left-width: 3px; }
.nav-item:hover { color: #1d3440; background: #f0f6fa; transform: translateX(1px); }
.nav-item.active { color: #1d3440; background: #e8f5f4; border-left-color: #f26b5b; }
.nav-item b { color: #fff; background: #f26b5b; }
.nav-item .season-badge { color: #6e5113; background: #f8db7c; }
.sidebar-foot { border-top-color: #e7edf2; }
.protected-line,.availability { color: #627b8b; border-color: #dce5ed; background: #fbfdfe; }
.protected-line:hover,.availability:hover { color: #167f8d; border-color: #8dcfd2; }
.status-dot { background: #167f8d; box-shadow: 0 0 0 3px rgba(22,127,141,.12); }
.topbar { background: rgba(255,255,255,.92); border-bottom-color: #dce5ed; }
.icon-button { color: #366070; border-color: #dce5ed; background: #fff; }
.icon-button:hover { color: #167f8d; border-color: #8dcfd2; background: #edf9fa; }
.icon-button em { background: #f26b5b; }
.primary-button { color: #fff; background: #f26b5b; border-color: #f26b5b; }
.primary-button:hover { background: #df5a4c; border-color: #df5a4c; }
.ai-button { color: #fff; background: #167f8d; border-color: #167f8d; }
.ai-button:hover { color: #fff; background: #126a76; border-color: #126a76; }
.secondary-button { color: #2d5566; border-color: #bdcbd7; background: #fff; }
.secondary-button:hover { color: #167f8d; border-color: #75c3ca; background: #edf9fa; }
.text-button { color: #167f8d; }
.text-button:hover { color: #f26b5b; }
.eyebrow { color: #167f8d; }
.panel { border-color: #dce5ed; box-shadow: 0 6px 18px rgba(40,72,96,.045); }
.panel-head h2,.view-head h1 { color: #1d3440; }
.badge,.tag { color: #167f8d; background: #e7f7f5; }
.badge.warning { color: #885e12; background: #fff5d5; }
.app-content { background: transparent; }

body[data-surface="publicProfile"] { background: #f4f7fb; }
body[data-surface="publicProfile"] .topbar { background: rgba(255,255,255,.94); }
body[data-surface="publicProfile"] .view-head .secondary-button { color: #2d5566; background: #fff; border-color: #bdcbd7; }
body[data-surface="publicProfile"] .view-head .secondary-button:hover { color: #fff; background: #167f8d; border-color: #167f8d; }
.public-profile-hero { min-height: 225px; padding-left: 26px; color: #fff; background: linear-gradient(90deg, rgba(19,62,74,.96) 0%, rgba(19,62,74,.84) 44%, rgba(19,62,74,.22) 72%, rgba(19,62,74,.08) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #f26b5b; box-shadow: 0 15px 30px rgba(40,72,96,.13); }
.public-profile-hero::after { display: none; }
.public-profile-portrait { color: #fff; background: #f26b5b; box-shadow: 0 8px 20px rgba(8,50,61,.28); }
.public-profile-portrait > span { background: #f5c451; border-color: #f26b5b; color: #27424e; }
.public-profile-copy h1 small { color: #f8dc82; }
.public-profile-copy p { color: #d8edf0; }
.public-profile-copy > div span { color: #d7edf0; }
.public-profile-copy > div svg { color: #f5c451; }
.public-profile-hero aside { border-color: rgba(255,255,255,.32); background: rgba(255,255,255,.18); backdrop-filter: blur(5px); }
.public-profile-hero aside button { color: #fff; background: rgba(13,57,68,.58); }
.public-profile-hero aside button:hover { color: #1d3440; background: #f5c451; }
.public-profile-boundary { border-color: #cde9e8; border-left-color: #167f8d; background: #f5fbfc; color: #456774; }
.public-profile-boundary > svg { color: #167f8d; }
.public-profile-boundary .primary-button { color: #fff; background: #f26b5b; border-color: #f26b5b; }
.public-profile-boundary .primary-button:hover { background: #df5a4c; border-color: #df5a4c; }
.public-profile-tabs button.active { color: #167f8d; border-bottom-color: #f26b5b; }
.public-profile-post,.public-profile-work-grid article { border-color: #dce5ed; box-shadow: 0 6px 18px rgba(40,72,96,.045); }
.public-profile-post h3,.public-profile-work-grid h3 { color: #1d3440; }
.public-profile-post-avatar { background: #167f8d; }
.public-profile-post-proof { color: #167f8d; background: #e6f7f5; }
.public-profile-post-media::after { background: linear-gradient(180deg, transparent 48%, rgba(18,67,78,.66)); }
.public-profile-work-grid span { color: #167f8d; }
.public-profile-reputation { background: #dce5ed; }
.public-profile-reputation > div,.public-profile-score-list span { background: #fff; }
.public-profile-reputation strong { color: #1d3440; }
.public-profile-reputation > div > b,.public-profile-score-list b { color: #167f8d; }
.public-profile-separation { color: #d3eef0; background: #167f8d; }
.public-profile-separation svg { color: #f8dc82; }
.public-profile-honors { background: #dce5ed; }
.public-profile-honors article { background: #fff; }
.public-profile-honors article > span { color: #1d3440; background: #f8dc82; }
.public-profile-honors aside { color: #d3eef0; background: #167f8d; }

body[data-surface="community"] .view-head .primary-button { color: #fff; background: #f26b5b; border-color: #f26b5b; }
body[data-surface="community"] .view-head .primary-button:hover { background: #df5a4c; border-color: #df5a4c; }
.community-profile-overview { color: #24434f; background: linear-gradient(100deg, #fff4ee 0%, #fffaf6 63%, #eff9f8 100%); border-left-color: #f26b5b; box-shadow: 0 10px 24px rgba(40,72,96,.07); }
.community-profile-avatar { color: #fff; background: #f26b5b; }
.community-profile-avatar > span { background: #167f8d; border-color: #f26b5b; }
.community-profile-overview .eyebrow { color: #167f8d; }
.community-profile-overview h2 { color: #1d3440; }
.community-profile-overview h2 small { color: #167f8d; }
.community-profile-overview p { color: #607987; }
.community-profile-stats span { color: #6d8290; }
.community-profile-stats b { color: #1d3440; }
.community-profile-actions > span { color: #66808d; }
.community-profile-actions .secondary-button { color: #fff; background: #f26b5b; border-color: #f26b5b; }
.community-profile-actions .secondary-button:hover { background: #df5a4c; }
.community-clean-toolbar,.community-v2-post,.community-clean-side { border-color: #dce5ed; box-shadow: 0 5px 14px rgba(40,72,96,.035); }
.community-v2-tabs button:hover { color: #167f8d; background: #f4fafb; }
.community-v2-tabs button.active { color: #167f8d; background: #eaf8f7; box-shadow: inset 0 -3px 0 #f26b5b; }
.community-v2-tabs button.active small { color: #f26b5b; }
.community-v2-topic { color: #8a5c18; background: #fff2c9; }
.community-v2-proof { color: #167f8d; background: #e7f7f5; }
.community-v2-post h2,.community-clean-side h2 { color: #1d3440; }
.community-v2-author > span { background: #167f8d; }
.community-media-play { color: #fff; background: #f26b5b; }
.community-v2-copyright { color: #607783; background: #f4faf9; }
.community-clean-growth { background: #f7fbfc; }
.community-clean-metrics b { color: #167f8d; }

/* Final monochrome override. Keep real project media in color; all interface chrome is grayscale. */
body,body[data-surface="publicProfile"],.shell { background: #f3f3f1; }
.sidebar { background: #f8f8f7; border-right-color: #dededb; }
.sidebar::before { background: #151515; }
.brand { color: #151515; border-bottom-color: #dfdfdc; }
.brand-mark { color: #fff; background: #151515; border-radius: 0; }
.brand small,.artisan-id small { color: #858585; }
.portrait { color: #fff; background: #3a3a3a; }
.artisan-id strong { color: #202020; }
.verified { color: #303030; }
.nav-item { color: #737373; }
.nav-item:hover { color: #151515; background: #eeeeec; }
.nav-item.active { color: #111; background: #e7e7e4; border-left-color: #151515; }
.nav-item b { color: #fff; background: #151515; }
.nav-item .season-badge { color: #444; background: #d8d8d5; }
.sidebar-foot { border-top-color: #dfdfdc; }
.protected-line,.availability { color: #626262; background: #fafafa; border-color: #d8d8d5; }
.protected-line:hover,.availability:hover { color: #111; border-color: #555; }
.status-dot { background: #202020; box-shadow: 0 0 0 3px rgba(0,0,0,.08); }
.topbar { background: rgba(255,255,255,.92); border-bottom-color: #dfdfdc; }
.breadcrumb { color: #777; }.breadcrumb strong { color: #222; }
.icon-button { color: #333; border-color: #dededb; background: #fff; }
.icon-button:hover { color: #111; border-color: #555; background: #f1f1ef; }
.icon-button em { background: #444; }
.primary-button,.ai-button,body[data-surface="community"] .view-head .primary-button { color: #fff; background: #151515; border-color: #151515; }
.primary-button:hover,.ai-button:hover,body[data-surface="community"] .view-head .primary-button:hover { color: #fff; background: #3a3a3a; border-color: #3a3a3a; }
.secondary-button { color: #292929; border-color: #c8c8c4; background: #fff; }
.secondary-button:hover { color: #111; border-color: #555; background: #f0f0ee; }
.text-button { color: #303030; }.text-button:hover { color: #111; }
.eyebrow,body[data-surface="publicProfile"] .view-head .eyebrow { color: #666; }
.panel { border-color: #dededb; box-shadow: 0 4px 14px rgba(0,0,0,.03); }
.panel-head h2,.view-head h1 { color: #171717; }
.badge,.tag { color: #fff; background: #4a4a4a; border-radius: 3px; }
.badge.warning { color: #333; background: #dcdcd8; }.badge.muted { color: #666; background: #eeeeeb; }.badge.danger { color: #fff; background: #744; }
.skip-link { color: #fff; background: #151515; }

body[data-surface="publicProfile"] .topbar { background: rgba(255,255,255,.94); }
body[data-surface="publicProfile"] .view-head .secondary-button { color: #292929; background: #fff; border-color: #c8c8c4; }
body[data-surface="publicProfile"] .view-head .secondary-button:hover { color: #fff; background: #151515; border-color: #151515; }
.public-profile-hero { background: linear-gradient(90deg, rgba(0,0,0,.89) 0%, rgba(0,0,0,.69) 48%, rgba(0,0,0,.24) 75%, rgba(0,0,0,.06) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #151515; box-shadow: 0 14px 28px rgba(0,0,0,.12); }
.public-profile-portrait { color: #fff; background: #151515; }
.public-profile-portrait > span { color: #151515; background: #fff; border-color: #151515; }
.public-profile-copy h1 small { color: #e4e4e1; }
.public-profile-copy p,.public-profile-copy > div span { color: #dededb; }
.public-profile-copy > div svg { color: #f0f0ed; }
.public-profile-hero aside { border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.15); }
.public-profile-hero aside button { color: #fff; background: rgba(0,0,0,.42); }
.public-profile-hero aside button:hover { color: #111; background: #fff; }
.public-profile-boundary { color: #555; background: #fafafa; border-color: #dededb; border-left-color: #222; }
.public-profile-boundary > svg { color: #333; }
.public-profile-boundary .primary-button { color: #fff; background: #151515; border-color: #151515; }
.public-profile-tabs button.active { color: #151515; border-bottom-color: #151515; }
.public-profile-post,.public-profile-work-grid article { border-color: #dededb; box-shadow: 0 4px 14px rgba(0,0,0,.03); }
.public-profile-post h3,.public-profile-work-grid h3 { color: #171717; }
.public-profile-post-avatar { background: #3a3a3a; }.public-profile-post-proof { color: #fff; background: #4a4a4a; }.public-profile-work-grid span { color: #555; }
.public-profile-reputation,.public-profile-honors { background: #dededb; }
.public-profile-reputation > div,.public-profile-score-list span,.public-profile-honors article { background: #fff; }
.public-profile-reputation strong { color: #151515; }.public-profile-reputation > div > b,.public-profile-score-list b { color: #333; }
.public-profile-separation,.public-profile-honors aside { color: #e5e5e2; background: #202020; }.public-profile-separation svg { color: #fff; }.public-profile-honors article > span { color: #fff; background: #444; }

.community-profile-overview { color: #252525; background: #fff; border-color: #dededb; border-left-color: #151515; box-shadow: 0 5px 15px rgba(0,0,0,.03); }
.community-profile-avatar { color: #fff; background: #151515; }.community-profile-avatar > span { color: #151515; background: #fff; border-color: #151515; }
.community-profile-overview .eyebrow { color: #666; }.community-profile-overview h2 { color: #171717; }.community-profile-overview h2 small { color: #555; }
.community-profile-overview p,.community-profile-stats span,.community-profile-actions > span { color: #707070; }.community-profile-stats b { color: #171717; }
.community-profile-actions .secondary-button { color: #fff; background: #151515; border-color: #151515; }.community-profile-actions .secondary-button:hover { background: #3a3a3a; border-color: #3a3a3a; }
.community-clean-toolbar,.community-v2-post,.community-clean-side { border-color: #dededb; box-shadow: 0 4px 13px rgba(0,0,0,.025); }
.community-v2-tabs button:hover { color: #151515; background: #f3f3f1; }
.community-v2-tabs button.active { color: #151515; background: #f1f1ef; box-shadow: inset 0 -3px 0 #151515; }.community-v2-tabs button.active small { color: #151515; }
.community-v2-topic { color: #333; background: #e5e5e1; }.community-v2-proof { color: #fff; background: #4a4a4a; }
.community-v2-post h2,.community-clean-side h2 { color: #171717; }.community-v2-author > span { background: #3a3a3a; }
.community-media-play { color: #fff; background: #151515; }.community-v2-copyright { color: #666; background: #f3f3f1; }.community-clean-growth { background: #f7f7f5; }.community-clean-metrics b { color: #222; }

/* Final visual system: deep-sea blue, mist surfaces, no warm accent colors. */
:root { --forest: #1c5d88; --forest-deep: #0d2842; --green: #286d97; --lime: #c4dbe9; --canvas: #f2f6f9; --ink: #132d45; --muted: #698095; --line: #d7e3eb; }
body, body[data-surface="publicProfile"], .shell { color: #1a344b; background: #f2f6f9; }
.sidebar { color: #c6d7e5; background: #0d2842; border-right-color: #183d5c; box-shadow: 8px 0 28px rgba(13,40,66,.13); }
.sidebar::before { background: #75acd0; }
.brand { color: #f5f9fc; border-bottom-color: rgba(205,224,237,.16); }
.brand-mark { color: #0d2842; background: #dcecf5; border-radius: 4px; }
.brand small,.artisan-id small { color: #91aabf; }.portrait { color: #0d2842; background: #bcd5e6; }.artisan-id strong { color: #f4f8fb; }.verified { color: #82b8d8; }
.nav-item { color: #c4d4e1; }.nav-item:hover { color: #fff; background: #153752; }.nav-item.active { color: #fff; background: #183e5c; border-left-color: #80b9dc; }.nav-item b { color: #0d2842; background: #b7d4e6; }.nav-item .season-badge { color: #0d2842; background: #d2e5f0; }
.sidebar-foot { border-top-color: rgba(205,224,237,.16); }.protected-line,.availability { color: #d0deea; border-color: rgba(205,224,237,.18); background: rgba(255,255,255,.035); }.protected-line:hover,.availability:hover { color: #fff; border-color: #81b8d8; }.status-dot { background: #80b9dc; box-shadow: 0 0 0 3px rgba(128,185,220,.16); }
.topbar { background: rgba(250,252,254,.94); border-bottom-color: #d7e3eb; }.breadcrumb { color: #7b90a1; }.breadcrumb strong { color: #183750; }.icon-button { color: #31546c; border-color: #d5e1e9; background: #fff; }.icon-button:hover { color: #fff; border-color: #173d5b; background: #173d5b; }.icon-button em { background: #2e739d; }
.primary-button,.ai-button,body[data-surface="community"] .view-head .primary-button { color: #fff; background: #112f4b; border-color: #112f4b; }.primary-button:hover,.ai-button:hover,body[data-surface="community"] .view-head .primary-button:hover { color: #fff; background: #1c5d88; border-color: #1c5d88; }.secondary-button { color: #214d6c; border-color: #bdd1df; background: #fff; }.secondary-button:hover { color: #fff; border-color: #1b557d; background: #1b557d; }.text-button { color: #24608c; }.text-button:hover { color: #0d2842; }.eyebrow,body[data-surface="publicProfile"] .view-head .eyebrow { color: #4e7895; }.panel { border-color: #d7e3eb; box-shadow: 0 6px 17px rgba(18,54,79,.045); }.panel-head h2,.view-head h1 { color: #132f48; }.badge,.tag { color: #eaf5fb; background: #2a648d; }.badge.warning { color: #22455f; background: #d9eaf3; }.badge.muted { color: #638095; background: #eef4f7; }.badge.danger { color: #fff; background: #9c5151; }.skip-link { color: #fff; background: #0d2842; }
body[data-surface="publicProfile"] .topbar { background: rgba(250,252,254,.95); } body[data-surface="publicProfile"] .view-head .secondary-button:hover { color: #fff; border-color: #112f4b; background: #112f4b; }
.public-profile-hero { background: linear-gradient(90deg, rgba(9,32,53,.93) 0%, rgba(13,40,66,.78) 50%, rgba(13,40,66,.28) 77%, rgba(13,40,66,.06) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #79afcf; box-shadow: 0 14px 28px rgba(13,40,66,.15); }.public-profile-portrait { color: #0d2842; background: #d8eaf4; }.public-profile-portrait > span { color: #fff; border-color: #d8eaf4; background: #2c6f98; }.public-profile-copy h1 small { color: #d9e8f1; }.public-profile-copy p,.public-profile-copy > div span { color: #c7d8e5; }.public-profile-copy > div svg { color: #a7c8dc; }.public-profile-hero aside { border-color: rgba(219,234,245,.32); background: rgba(223,239,249,.12); }.public-profile-hero aside button { color: #fff; background: rgba(9,32,53,.48); }.public-profile-hero aside button:hover { color: #0d2842; background: #d8eaf4; }.public-profile-boundary { color: #5e788c; border-color: #d9e5ec; border-left-color: #2b6f99; background: #f7fafc; }.public-profile-boundary > svg { color: #2b6f99; }.public-profile-boundary .primary-button { color: #fff; border-color: #112f4b; background: #112f4b; }.public-profile-tabs button.active { color: #163e5b; border-bottom-color: #2b6f99; }.public-profile-post,.public-profile-work-grid article { border-color: #d8e4ec; box-shadow: 0 5px 15px rgba(17,54,79,.04); }.public-profile-post h3,.public-profile-work-grid h3 { color: #15334d; }.public-profile-post-avatar { background: #2f6f96; }.public-profile-post-proof { color: #eaf5fb; background: #2d668d; }.public-profile-work-grid span { color: #668093; }.public-profile-reputation,.public-profile-honors { background: #dce8ef; }.public-profile-reputation > div,.public-profile-score-list span,.public-profile-honors article { background: #fff; }.public-profile-reputation strong { color: #123551; }.public-profile-reputation > div > b,.public-profile-score-list b { color: #295571; }.public-profile-separation,.public-profile-honors aside { color: #dbeaf4; background: #133651; }.public-profile-separation svg { color: #b4d4e6; }.public-profile-honors article > span { color: #eaf6fc; background: #36759d; }

/* Graphite editorial system: cobalt is a precise signal, never a background theme. */
:root { --forest: #4263eb; --forest-deep: #1b1e24; --green: #4263eb; --lime: #e5eaff; --canvas: #f7f7f5; --ink: #1d2026; --muted: #737985; --line: #e6e6e2; }
body,body[data-surface="publicProfile"],.shell { color: #22252b; background: #f7f7f5; }
.sidebar { color: #b7bcc5; background: #1b1e24; border-right-color: #2a2e35; box-shadow: 8px 0 24px rgba(20,22,27,.1); }
.sidebar::before { background: #5c79f4; }.brand { color: #fff; border-bottom-color: rgba(255,255,255,.1); }.brand-mark { color: #1b1e24; background: #f7f7f4; border-radius: 3px; }.brand small,.artisan-id small { color: #8e959f; }.portrait { color: #fff; background: #3a3f48; }.artisan-id strong { color: #f8f9fb; }.verified { color: #91a6ff; }
.nav-item { color: #b6bbc4; }.nav-item:hover { color: #fff; background: #272b31; }.nav-item.active { color: #fff; background: #292d34; border-left-color: #6b84ff; }.nav-item b { color: #20232a; background: #d4ddff; }.nav-item .season-badge { color: #27314a; background: #dce3ff; }.sidebar-foot { border-top-color: rgba(255,255,255,.1); }.protected-line,.availability { color: #c8ccd4; border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.025); }.protected-line:hover,.availability:hover { color: #fff; border-color: #7189ff; }.status-dot { background: #7690ff; box-shadow: 0 0 0 3px rgba(118,144,255,.16); }
.topbar { background: rgba(250,250,248,.96); border-bottom-color: #e6e6e2; }.breadcrumb { color: #9297a0; }.breadcrumb strong { color: #2b2e35; }.icon-button { color: #555b66; border-color: #e4e4e0; background: #fff; }.icon-button:hover { color: #fff; border-color: #22252b; background: #22252b; }.icon-button em { background: #4d6cf1; }
.primary-button,.ai-button,body[data-surface="community"] .view-head .primary-button { color: #fff; border-color: #20232a; background: #20232a; }.primary-button:hover,.ai-button:hover,body[data-surface="community"] .view-head .primary-button:hover { color: #fff; border-color: #4263eb; background: #4263eb; }.secondary-button { color: #3e4652; border-color: #d8d8d4; background: #fff; }.secondary-button:hover { color: #fff; border-color: #22252b; background: #22252b; }.text-button { color: #4263eb; }.text-button:hover { color: #22252b; }.eyebrow,body[data-surface="publicProfile"] .view-head .eyebrow { color: #7881a3; }.panel { border-color: #e6e6e2; box-shadow: 0 5px 16px rgba(24,26,31,.035); }.panel-head h2,.view-head h1 { color: #20232a; }.badge,.tag { color: #f8f9ff; background: #526de8; }.badge.warning { color: #3b466e; background: #e4e8fb; }.badge.muted { color: #737985; background: #f0f0ed; }.badge.danger { color: #fff; background: #a45252; }.skip-link { color: #fff; background: #20232a; }
body[data-surface="publicProfile"] .topbar { background: rgba(250,250,248,.96); }.public-profile-hero { background: linear-gradient(90deg, rgba(22,24,29,.94) 0%, rgba(28,31,38,.78) 51%, rgba(30,33,40,.28) 76%, rgba(30,33,40,.05) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #758cff; box-shadow: 0 14px 28px rgba(20,22,27,.14); }.public-profile-portrait { color: #22252b; background: #f1f2f5; }.public-profile-portrait > span { color: #fff; border-color: #f1f2f5; background: #526de8; }.public-profile-copy h1 small { color: #d9dbe1; }.public-profile-copy p,.public-profile-copy > div span { color: #c9ccd3; }.public-profile-copy > div svg { color: #aab4e9; }.public-profile-hero aside { border-color: rgba(255,255,255,.23); background: rgba(255,255,255,.1); }.public-profile-hero aside button { color: #fff; background: rgba(21,23,29,.52); }.public-profile-hero aside button:hover { color: #20232a; background: #fff; }.public-profile-boundary { color: #6d737d; border-color: #e3e3df; border-left-color: #526de8; background: #fafaf8; }.public-profile-boundary > svg { color: #526de8; }.public-profile-boundary .primary-button { color: #fff; border-color: #20232a; background: #20232a; }.public-profile-tabs button.active { color: #262a31; border-bottom-color: #526de8; }.public-profile-post,.public-profile-work-grid article { border-color: #e6e6e2; box-shadow: 0 5px 15px rgba(20,22,27,.035); }.public-profile-post h3,.public-profile-work-grid h3 { color: #22252b; }.public-profile-post-avatar { background: #393e47; }.public-profile-post-proof { color: #fff; background: #526de8; }.public-profile-work-grid span { color: #737985; }.public-profile-reputation,.public-profile-honors { background: #e8e8e5; }.public-profile-reputation > div,.public-profile-score-list span,.public-profile-honors article { background: #fff; }.public-profile-reputation strong { color: #20232a; }.public-profile-reputation > div > b,.public-profile-score-list b { color: #444a54; }.public-profile-separation,.public-profile-honors aside { color: #dfe1e7; background: #292d34; }.public-profile-separation svg { color: #b9c4ff; }.public-profile-honors article > span { color: #fff; background: #526de8; }

/* Professional profile enters through the work itself, not a redundant page title. */
body[data-surface="publicProfile"] .app-content { max-width: 1010px; padding-top: 18px; }
.public-profile-backbar { display: flex; min-height: 34px; align-items: center; justify-content: space-between; margin-bottom: 10px; color: #858b94; font-size: 10px; }
.public-profile-backbar button { display: inline-flex; align-items: center; gap: 5px; padding: 0; color: #5a626d; border: 0; background: transparent; font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.public-profile-backbar button:hover { color: #526de8; }.public-profile-backbar button svg { width: 15px; }.public-profile-backbar > span { display: inline-flex; align-items: center; gap: 4px; color: #8c929b; }.public-profile-backbar > span svg { width: 13px; color: #526de8; }
body[data-surface="publicProfile"] .public-profile-hero { margin-top: 0; }
@media (max-width: 720px) { body[data-surface="publicProfile"] .app-content { padding-top: 12px; }.public-profile-backbar { min-height: 30px; margin-bottom: 8px; }.public-profile-backbar > span { display: none; } }

/* Public identity editing: visible on the profile, isolated from real-name verification. */
.public-profile-portrait { border: 0; cursor: pointer; }
.public-profile-portrait > img,.public-avatar-preview > img,.community-social-avatar > img,.artisan-id .portrait > img,.account-avatar > img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
.public-profile-portrait > i { position: absolute; right: -4px; top: -4px; display: grid; width: 22px; height: 22px; place-items: center; color: #fff; border: 2px solid #20232a; border-radius: 50%; background: #526de8; opacity: 0; transform: scale(.8); transition: opacity .16s ease, transform .16s ease; }
.public-profile-portrait > i svg { width: 11px; }.public-profile-portrait:hover > i,.public-profile-portrait:focus-visible > i { opacity: 1; transform: scale(1); }.public-profile-portrait:focus-visible { outline: 3px solid #aebdff; outline-offset: 3px; }
.public-avatar-editor { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 13px; align-items: center; margin: 14px 0 4px; padding: 12px; border: 1px solid #e4e4e0; background: #fafaf8; }
.public-avatar-preview { display: grid; width: 66px; height: 66px; place-items: center; overflow: hidden; color: #fff; border-radius: 50%; background: #343943; font: 24px var(--serif); font-weight: 800; }.public-avatar-editor strong,.public-avatar-editor small { display: block; }.public-avatar-editor strong { color: #282c33; font-size: 12px; }.public-avatar-editor small { margin: 4px 0 8px; color: #767d87; font-size: 10px; line-height: 1.5; }.public-avatar-editor .secondary-button { min-height: 31px; font-size: 10px; }
@media (max-width: 520px) { .public-avatar-editor { grid-template-columns: 58px minmax(0,1fr); padding: 10px; }.public-avatar-preview { width: 54px; height: 54px; font-size: 20px; } }

/* Atelier palette: obsidian, porcelain, platinum and restrained antique brass. */
:root { --forest: #4f6961; --forest-deep: #1b1c20; --green: #4f6961; --lime: #e6e1d7; --canvas: #f5f5f2; --ink: #232429; --muted: #76787e; --line: #dedfdd; }
body,body[data-surface="publicProfile"],.shell { color: #292a2e; background: #f5f5f2; }
.sidebar { color: #bfc0c3; background: #1b1c20; border-right-color: #2c2d31; box-shadow: 8px 0 26px rgba(15,16,18,.11); }
.sidebar::before { background: #a58b5e; }.brand { color: #f8f8f5; border-bottom-color: rgba(255,255,255,.1); }.brand-mark { color: #202126; background: #f1f1ed; }.brand small,.artisan-id small { color: #8e9095; }.portrait { color: #fff; background: #383a40; }.artisan-id strong { color: #f7f7f4; }.verified { color: #b9a273; }
.nav-item { color: #b7b9be; }.nav-item:hover { color: #fff; background: #25262b; }.nav-item.active { color: #fff; background: #2b2c31; border-left-color: #b19a6d; }.nav-item b { color: #25262b; background: #e6e5df; }.nav-item .season-badge { color: #454139; background: #ded8cc; }.sidebar-foot { border-top-color: rgba(255,255,255,.1); }.protected-line,.availability { color: #c5c6ca; border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.025); }.protected-line:hover,.availability:hover { color: #fff; border-color: #a58b5e; }.status-dot { background: #6d9085; box-shadow: 0 0 0 3px rgba(109,144,133,.16); }
.topbar { background: rgba(251,251,249,.96); border-bottom-color: #e1e2df; }.breadcrumb { color: #929499; }.breadcrumb strong { color: #34353a; }.icon-button { color: #565960; border-color: #dedfdd; background: #fff; }.icon-button:hover { color: #fff; border-color: #303136; background: #303136; }.icon-button em { background: #8d7650; }
.primary-button,.ai-button,body[data-surface="community"] .view-head .primary-button { color: #fff; border-color: #24252a; background: #24252a; }.primary-button:hover,.ai-button:hover,body[data-surface="community"] .view-head .primary-button:hover { color: #fff; border-color: #414248; background: #414248; }.secondary-button { color: #484b52; border-color: #d4d5d2; background: #fff; }.secondary-button:hover { color: #fff; border-color: #34353a; background: #34353a; }.text-button { color: #715e3f; }.text-button:hover { color: #24252a; }.eyebrow,body[data-surface="publicProfile"] .view-head .eyebrow { color: #85745a; }.panel { border-color: #dedfdd; box-shadow: 0 5px 16px rgba(26,27,30,.035); }.panel-head h2,.view-head h1 { color: #24252a; }.badge,.tag { color: #fff; background: #414349; }.badge.warning { color: #62563f; background: #e9e5dc; }.badge.muted { color: #74777d; background: #ededeb; }.badge.danger { color: #fff; background: #985656; }.skip-link { color: #fff; background: #24252a; }
.account-avatar { color: #fff; background: #4a4c52; }.account-trigger { color: #303238; border-color: #dedfdd; }.account-trigger:hover { border-color: #a58b5e; }.public-avatar-preview { background: #3c3e43; }
.public-profile-backbar button:hover,.public-profile-backbar > span svg { color: #8c744b; }.public-profile-portrait > i { border-color: #28292e; background: #9b8155; }.public-profile-portrait:focus-visible { outline-color: #cfc0a4; }
body[data-surface="publicProfile"] .topbar { background: rgba(251,251,249,.96); }.public-profile-hero { background: linear-gradient(90deg, rgba(25,26,29,.95) 0%, rgba(32,33,36,.78) 50%, rgba(35,36,39,.27) 76%, rgba(35,36,39,.04) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #a58b5e; box-shadow: 0 14px 28px rgba(20,21,23,.13); }.public-profile-portrait { color: #28292e; background: #f1f1ed; }.public-profile-portrait > span { color: #fff; border-color: #f1f1ed; background: #587369; }.public-profile-copy h1 small { color: #d9d6ce; }.public-profile-copy p,.public-profile-copy > div span { color: #cecfd0; }.public-profile-copy > div svg { color: #c0a878; }.public-profile-hero aside { border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.09); }.public-profile-hero aside button { color: #fff; background: rgba(23,24,27,.54); }.public-profile-hero aside button:hover { color: #27282d; background: #f1f1ed; }.public-profile-boundary { color: #6d7075; border-color: #e1e1de; border-left-color: #9b8155; background: #fafaf8; }.public-profile-boundary > svg { color: #8f7650; }.public-profile-boundary .primary-button { color: #fff; border-color: #292a2f; background: #292a2f; }.public-profile-tabs button.active { color: #2c2d32; border-bottom-color: #9b8155; }.public-profile-post,.public-profile-work-grid article { border-color: #dedfdd; }.public-profile-post-proof { color: #fff; background: #4f6961; }.public-profile-honors article > span { color: #fff; background: #8e7650; }

/* Contemporary field studio: cold paper, black structure, one active signal. */
:root { --forest: #1a9b8a; --forest-deep: #111318; --green: #1a9b8a; --lime: #ff6b35; --canvas: #f3f5f7; --ink: #15171b; --muted: #777d88; --line: #dbe0e6; }
body,body[data-surface="publicProfile"],.shell { color: #1b1d22; background: #f3f5f7; }
.sidebar { color: #b9c0ca; background: #111318; border-right-color: #252a32; box-shadow: 9px 0 28px rgba(10,12,16,.12); }
.sidebar::before { background: #ff6b35; }.brand { color: #fff; border-bottom-color: rgba(255,255,255,.1); }.brand-mark { color: #111318; background: #f8fafc; border-radius: 2px; }.brand small,.artisan-id small { color: #858d99; }.portrait { color: #111318; background: #d9dee5; }.artisan-id strong { color: #f7f8fa; }.verified { color: #26c6a9; }
.nav-item { color: #aeb6c1; }.nav-item:hover { color: #fff; background: #1d2128; }.nav-item.active { color: #fff; background: #232832; border-left-color: #ff6b35; }.nav-item b { color: #121419; background: #f2f5f8; }.nav-item .season-badge { color: #111318; background: #ffb089; }.sidebar-foot { border-top-color: rgba(255,255,255,.1); }.protected-line,.availability { color: #c1c8d1; border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.025); }.protected-line:hover,.availability:hover { color: #fff; border-color: #ff8b61; }.status-dot { background: #1a9b8a; box-shadow: 0 0 0 3px rgba(26,155,138,.15); }
.topbar { background: rgba(250,251,252,.96); border-bottom-color: #dce2e8; }.breadcrumb { color: #8a929d; }.breadcrumb strong { color: #242832; }.icon-button { color: #555d69; border-color: #dce2e8; background: #fff; }.icon-button:hover { color: #fff; border-color: #15171b; background: #15171b; }.icon-button em { background: #ff6b35; }
.primary-button,.ai-button,body[data-surface="community"] .view-head .primary-button { color: #fff; border-color: #ff5a22; background: #ff5a22; }.primary-button:hover,.ai-button:hover,body[data-surface="community"] .view-head .primary-button:hover { color: #fff; border-color: #e94b16; background: #e94b16; }.secondary-button { color: #343a45; border-color: #d3d9e0; background: #fff; }.secondary-button:hover { color: #fff; border-color: #15171b; background: #15171b; }.text-button { color: #e8531e; }.text-button:hover { color: #15171b; }.eyebrow,body[data-surface="publicProfile"] .view-head .eyebrow { color: #ff5a22; }.panel { border-color: #dce1e7; box-shadow: 0 8px 24px rgba(21,25,32,.045); }.panel-head h2,.view-head h1 { color: #15171b; }.badge,.tag { color: #fff; background: #1d222a; }.badge.warning { color: #934014; background: #fff0e9; }.badge.muted { color: #707783; background: #eef1f4; }.badge.danger { color: #fff; background: #b94646; }.skip-link { color: #fff; background: #15171b; }
.account-avatar { color: #fff; background: #20252d; }.account-trigger { color: #303640; border-color: #dce2e8; }.account-trigger:hover { border-color: #ff6b35; }.public-avatar-preview { background: #20252d; }
.public-profile-backbar button:hover,.public-profile-backbar > span svg { color: #ff5a22; }.public-profile-portrait > i { border-color: #20242b; background: #ff5a22; }.public-profile-portrait:focus-visible { outline-color: #ffb89a; }
body[data-surface="publicProfile"] .topbar { background: rgba(250,251,252,.96); }.public-profile-hero { background: linear-gradient(90deg, rgba(14,16,20,.95) 0%, rgba(18,22,29,.78) 50%, rgba(21,25,32,.25) 76%, rgba(21,25,32,.04) 100%), url("assets/community/craft-video.jpg") center 48% / cover; border-left-color: #ff6b35; box-shadow: 0 16px 34px rgba(13,16,21,.14); }.public-profile-portrait { color: #1b1e24; background: #f4f6f8; }.public-profile-portrait > span { color: #fff; border-color: #f4f6f8; background: #1a9b8a; }.public-profile-copy h1 small { color: #ffb496; }.public-profile-copy p,.public-profile-copy > div span { color: #d0d5dc; }.public-profile-copy > div svg { color: #ff9169; }.public-profile-boundary { color: #68717d; border-color: #dce2e8; border-left-color: #ff6b35; background: #fafbfc; }.public-profile-boundary > svg { color: #ff5a22; }.public-profile-boundary .primary-button { border-color: #ff5a22; background: #ff5a22; }.public-profile-tabs button.active { color: #1e2229; border-bottom-color: #ff5a22; }.public-profile-post,.public-profile-work-grid article { border-color: #dce2e8; }.public-profile-post-proof { color: #fff; background: #1a9b8a; }.public-profile-honors article > span { color: #fff; background: #ff5a22; }
