:root{
  --bg:#eceeea;
  --paper:#f8f8f5;
  --paper-2:#f2f3ef;
  --ink:#111315;
  --muted:#6d7275;
  --muted-2:#92979a;
  --line:#d9dcd7;
  --line-strong:#c7cbc6;
  --soft:#e9ebe7;
  --dark:#111315;
  --dark2:#1b1e20;
  --dark3:#262a2d;
  --silver:#a8adb0;
  --silver-soft:#e4e7e4;
  --green:#35694f;
  --green-bg:#e6eee9;
  --amber:#836b3d;
  --amber-bg:#f2ede2;
  --red:#884743;
  --red-bg:#f2e8e6;
  --shadow:0 18px 48px rgba(17,19,21,.085);
  --shadow-soft:0 8px 26px rgba(17,19,21,.045);
}
html,body{background:linear-gradient(180deg,#e9ebe7 0%,#f0f1ed 24%,#eceeea 100%);color:var(--ink)}
.app{background:linear-gradient(180deg,#fafaf7 0%,#f8f8f5 100%);box-shadow:0 0 0 1px rgba(17,19,21,.025)}
.homeHead{padding-top:calc(24px + env(safe-area-inset-top));padding-bottom:16px}.homeHead h1,.pageHead h1,.accessHead h1,.profileInfo h1{color:#111315}
.avatarBtn{background:linear-gradient(145deg,#e9ebe7,#dfe2de);border-color:#d0d4cf;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 7px 18px rgba(17,19,21,.05)}
.hero{background:linear-gradient(148deg,#111315 0%,#1b1e20 56%,#262a2d 100%);border:1px solid rgba(255,255,255,.05);box-shadow:0 24px 54px rgba(17,19,21,.18)}
.statusPill{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.07);color:#f2f3f1}.ghostBtn{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.15);color:#f4f5f3}.ghostBtn:active{background:rgba(255,255,255,.11)}
.primaryHero{background:linear-gradient(180deg,#ffffff,#f0f1ee);color:#111315;box-shadow:inset 0 0 0 1px rgba(17,19,21,.05),0 8px 20px rgba(0,0,0,.11)}
.metricStrip{border-color:var(--line)}.metricStrip button+button{border-color:var(--line)}.metricStrip small{color:var(--muted-2)}
.activitySurface,.taskSurface{background:rgba(255,255,255,.72);border-color:rgba(199,203,198,.78);box-shadow:var(--shadow-soft);backdrop-filter:blur(16px)}
.taskSurface{background:linear-gradient(180deg,#f7f8f5,#f1f3ef)}
.actionCentre{background:linear-gradient(145deg,#17191b,#222628);border:1px solid rgba(255,255,255,.045);box-shadow:0 18px 42px rgba(17,19,21,.14)}
.actionIcon{background:rgba(255,255,255,.08)}.actionBtn{background:#f4f5f2;color:#17191b}
.bottomNav{background:rgba(248,248,245,.9);border-color:rgba(199,203,198,.72);box-shadow:0 -8px 30px rgba(17,19,21,.045)}.navBtn{color:#8b9093}.navBtn.on{color:#141618}
.tabs button,.filterModes button,.hoursFilters button{background:#f8f9f6;border-color:var(--line);color:#5f6467}.tabs button.on,.filterModes button.on,.hoursFilters button.on{background:linear-gradient(180deg,#1a1d1f,#111315);color:#fff;border-color:#111315;box-shadow:0 7px 16px rgba(17,19,21,.12)}
.chatRow,.infoRow,.profileRow,.accessRow,.historyRow{border-color:var(--line)}.chatAvatar{background:linear-gradient(145deg,#17191b,#282c2f)}.chatAvatar.site{background:#e7e9e5;color:#202326;border:1px solid #d8dbd6}
.profileHero{background:linear-gradient(145deg,#151719,#222629);border:1px solid rgba(255,255,255,.04);box-shadow:0 20px 46px rgba(17,19,21,.14)}.profilePhoto{background:#2a2e31;border-color:#44494c}.profileEdit{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}
.groupTitle,.listLabel{color:#888e90;letter-spacing:.015em}.surface{border-color:var(--line)}
.sheetOverlay{background:rgba(10,12,13,.52);backdrop-filter:blur(3px)}.sheet{background:linear-gradient(180deg,#fbfbf8,#f5f6f2);box-shadow:0 -24px 65px rgba(17,19,21,.18)}.sheetGrab{background:#c8ccc7}.iconCircle{background:#e9ebe7;color:#4e5356}
.viewOverlay{background:linear-gradient(180deg,#fafaf7,#f7f8f5)}.viewTop{background:rgba(248,248,245,.9);border-color:var(--line);box-shadow:0 5px 18px rgba(17,19,21,.035)}
.accessSummary{border-top-color:#17191b}.accessSummary.ready{color:var(--green)}.accessSummary.pending{color:var(--amber)}
.stateIcon.good{background:var(--green-bg);color:var(--green);box-shadow:inset 0 0 0 1px rgba(53,105,79,.07)}.stateIcon.warn{background:var(--amber-bg);color:var(--amber);box-shadow:inset 0 0 0 1px rgba(131,107,61,.08)}.stateIcon.optional{background:#eceeea;color:#6d7275}.stateText.good{color:var(--green)}.stateText.warn{color:var(--amber)}
.ackBtn{background:#fafbf8;border-color:var(--line)}.ackBtn.done{background:var(--green-bg);color:var(--green)}
.docScroll,.sigBox canvas,.confirmRow{background:#fbfbf9;border-color:var(--line)}.confirmRow{box-shadow:var(--shadow-soft)}
.warnBanner{background:var(--amber-bg);color:var(--amber)}
.filterBar select,.filterBar input,.field input,.field select,.field textarea,.hoursSelect{background:#fbfbf8;border-color:var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.dayBtn{background:#f8f9f6;border-color:var(--line)}.dayBtn.on{background:linear-gradient(180deg,#1a1d1f,#111315);color:#fff;border-color:#111315;box-shadow:0 9px 20px rgba(17,19,21,.13)}
.planState{background:#eceee9}.planState.accepted{background:var(--green-bg);color:var(--green)}.planState.declined{background:var(--red-bg);color:var(--red)}
.goodText{color:var(--green)}.warnText{color:var(--amber)}.danger{color:var(--red)!important}.unread{background:#17191b}
.toast{background:#17191b;box-shadow:0 10px 30px rgba(17,19,21,.2)}
.languageGate{background:linear-gradient(180deg,#eceeea 0%,#f4f5f1 55%,#eceeea 100%)!important;color:var(--ink)!important;align-items:center!important;padding:calc(24px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom))!important}.languagePanel{padding:26px 20px 20px;border:1px solid rgba(199,203,198,.78);border-radius:30px;background:rgba(250,250,247,.88);box-shadow:0 26px 70px rgba(17,19,21,.12);backdrop-filter:blur(22px)}.languageMark{width:auto!important;height:auto!important;display:inline-flex!important;padding:7px 11px!important;margin-bottom:22px!important;border:1px solid #d4d7d2!important;border-radius:999px!important;background:#eef0ec!important;color:#555b5e!important;font-size:9px!important;letter-spacing:.08em}.languagePanel h1{font-size:32px!important;color:#111315!important}.languagePanel p{color:#797e81!important;font-size:11px!important}.languagePanel button{background:linear-gradient(180deg,#17191b,#111315)!important;color:#fff!important;border:1px solid #272a2d!important;box-shadow:0 10px 24px rgba(17,19,21,.11)}.languagePanel button+button{background:#f7f8f5!important;color:#17191b!important;border-color:#d9dcd7!important;box-shadow:none}.languagePanel button span{color:#8f9497!important}.languagePanel button+button span{color:#8a8f92!important}
