
:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;--teal:var(--accent);--border:var(--line);--muted:var(--secondary)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:36px;letter-spacing:-1.2px;font-weight:600;margin-bottom:12px}h2{font-size:19px;font-weight:600;letter-spacing:-.3px}h3{font-size:16px;font-weight:600;margin-bottom:7px}p{line-height:1.6}button{border:0}small{display:block} .sidebar{width:246px;position:fixed;inset:0 auto 0 0;background:var(--surface);border-right:1px solid var(--border);padding:36px 22px 22px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;color:var(--ink);font-size:29px;letter-spacing:-1.4px;font-weight:650;text-decoration:none!important;gap:10px}.brand-dot{color:#23997b;margin-left:-10px}.brand-mark{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:11px;background:var(--teal);color:var(--surface);font-size:28px;font-weight:500;line-height:1}.workspace-label{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:8px;margin:34px 0 32px;padding:12px 9px;font-size:14px;font-weight:550}.workspace-avatar{background:var(--wash);border-radius:8px;width:32px;height:32px;display:inline-grid;place-items:center;font-weight:600;font-size:14px}.workspace-label small{font-size:12px;color:var(--muted);font-weight:400;margin-top:4px}.green-dot{width:6px;height:6px;border-radius:50%;background:#2caa7e;display:inline-block;flex-shrink:0}.workspace-label>.green-dot{margin-left:auto}.nav-label,.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:650;color:var(--muted)}.nav-label{padding-left:12px;margin-bottom:13px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 12px;background:transparent;color:var(--secondary);font-size:14px;border-radius:7px;margin-bottom:5px}.nav-item>span{font-size:21px;width:23px;line-height:1}.nav-item.active{background:var(--wash);color:var(--accent);font-weight:600}.nav-item:hover{background:var(--wash)}.nav-item b{font-size:12px;background:var(--wash);border-radius:4px;margin-left:auto;padding:2px 6px}.sidebar-bottom{margin-top:auto}.private-note{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--secondary);padding:18px 0}.private-note>span{font-size:23px}.private-note small{margin-top:5px;color:var(--secondary);font-size:11px}main{margin-left:246px}.topbar{height:83px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 44px;font-size:13px;color:var(--muted)}.topbar strong{color:var(--ink);font-weight:500}.topbar>span .muted{margin:0 14px}.topbar>div{display:flex;align-items:center;gap:23px}.private-badge{font-size:12px;color:var(--accent)}.avatar{display:grid;place-items:center;background:var(--wash);border:3px solid var(--surface);box-shadow:0 0 0 1px var(--border);width:34px;height:34px;border-radius:50%;color:var(--accent)}.content{max-width:1400px;margin:auto;padding:42px 44px 60px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.page-heading .eyebrow{margin-bottom:12px}.subtitle{font-size:14px;color:var(--muted);margin-bottom:0}.button,.small-button,.light-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;background:var(--teal);color:var(--surface);border:1px solid var(--teal);padding:12px 18px;border-radius:7px;font-size:14px;font-weight:500;white-space:nowrap}.button:hover{background:var(--accent-hover);text-decoration:none}.small-button{background:var(--surface);color:var(--ink);border-color:var(--line);padding:8px 12px;font-size:12px}.small-button:hover{background:var(--wash)}.text-button{background:transparent;color:var(--accent);padding:7px 0;font-size:12px}.text-button:hover{text-decoration:underline}.light-button{background:var(--surface);color:var(--ink);border:0;font-size:13px}.muted{color:var(--muted);font-weight:400}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}.stats article{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:24px}.stats article>span{font-size:13px;color:var(--secondary)}.stats strong{display:flex;align-items:center;font-size:38px;font-weight:500;letter-spacing:-1px;margin:13px 0 8px}.stats small{font-size:12px;color:var(--secondary)}.stat-dot{height:7px;width:7px;border-radius:50%;background:#c2a269;margin-left:12px}.overview-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:24px}.panel{border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:23px 24px}.section-title h2{margin:0;font-size:16px}.section-title>.muted{font-size:12px}.empty{text-align:center;padding:30px 22px 38px}.empty p{font-size:14px;color:var(--muted);max-width:380px;margin:0 auto 22px}.empty-icon{display:inline-grid;place-items:center;background:var(--wash);color:var(--accent);border-radius:12px;width:45px;height:45px;font-size:24px;margin-bottom:20px}.empty h3{margin-bottom:10px}.empty .button{font-size:12px;padding:9px 13px}.panel-bottom{border-top:1px solid var(--line);padding:14px 24px;font-size:12px;color:var(--secondary)}.focus-panel{background:var(--wash);color:var(--surface);border-radius:10px;padding:29px 28px;display:flex;flex-direction:column;align-items:flex-start}.focus-panel .eyebrow{color:var(--accent);font-size:10px}.focus-panel h2{font-size:24px;line-height:1.35;font-weight:500;margin:22px 0 12px}.focus-panel p{font-size:13px;color:var(--secondary);margin-bottom:24px}.connection-line{font-size:11px;color:var(--secondary);margin-top:25px;display:flex;gap:8px;align-items:center}.spaced{margin-top:29px}.section-title.spaced{padding:0;margin:32px 0 20px}.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.event-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}.card-accent{height:4px;background:#4d967f}.tone-1{background:#8b9fc9}.tone-2{background:#c3a267}.card-inner{padding:23px 24px 17px}.card-inner .eyebrow{font-size:9px}.card-inner h3{margin:13px 0 9px;font-size:17px}.card-inner p{font-size:12px;color:var(--muted);min-height:40px}.duration{font-size:12px;color:var(--secondary);padding:8px 0 20px}.card-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding-top:15px}.card-footer a{font-size:12px}.meeting-row{display:flex;gap:15px;align-items:center;padding:19px 24px;border-top:1px solid var(--line)}.date-tile{border:1px solid var(--border);border-radius:8px;min-width:47px;padding:7px;text-align:center}.date-tile b{display:block;font-size:20px;font-weight:500}.date-tile span{font-size:10px;text-transform:uppercase;color:var(--muted)}.meeting-info{flex:1;min-width:0}.meeting-info p{font-size:12px;margin:0;overflow-wrap:anywhere}.meeting-info h3{font-size:14px}.meeting-time{text-align:right}.meeting-time strong{font-size:13px;font-weight:500}.meeting-time span{display:block;font-size:11px;color:var(--muted);margin-top:7px}.filter-bar{display:flex;gap:8px;align-items:center;margin-bottom:22px;flex-wrap:wrap}.filter{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:9px 12px;font-size:13px;color:var(--secondary)}.filter.selected{background:var(--wash);border-color:var(--accent);color:var(--accent)}.filter-bar>span{font-size:12px;color:var(--muted);margin-left:auto}.inbox-list{display:grid;gap:14px}.inbox-card{padding:23px;background:var(--surface);border:1px solid var(--border);border-radius:9px}.inbox-top,.inbox-footer{display:flex;align-items:center;justify-content:space-between;gap:15px}.inbox-top{margin-bottom:18px;font-size:12px}.tag{font-size:11px;background:var(--wash);padding:5px 9px;border-radius:4px;color:var(--accent)}.tag.blue{background:var(--wash);color:var(--accent)}.inbox-card h3 .muted{font-size:13px}.message-text{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:850px}.inbox-footer{border-top:1px solid var(--border);padding-top:16px;margin-top:20px;font-size:12px}.inbox-footer>div{display:flex;gap:14px;align-items:center}.settings-panel{padding:28px;max-width:750px}.settings-panel .section-title{padding:0;margin-bottom:20px}.settings-panel>p{font-size:14px}.settings-panel form{margin-top:25px}label{display:block;font-size:14px;font-weight:500;margin-bottom:20px}input,select,textarea{display:block;width:100%;border:1px solid var(--line);border-radius:6px;padding:11px 12px;margin-top:9px;background:var(--surface);color:var(--ink);font-size:14px}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}textarea{resize:vertical}fieldset{border:0;padding:0;margin:0 0 23px}legend{font-size:14px;margin-bottom:14px}.days{display:flex;gap:9px;flex-wrap:wrap}.days label{margin:0;position:relative}.days input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.days span{display:block;border:1px solid var(--border);border-radius:6px;padding:10px;font-size:13px}.days input:checked+span{background:var(--wash);border-color:var(--accent);color:var(--accent)}.days input:focus-visible+span{outline:2px solid var(--accent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}form>.muted{font-size:12px}.setup-steps{padding-left:22px;font-size:14px;line-height:1.8}.setup-steps li{margin-bottom:13px}code{font-size:12px;background:var(--wash);padding:2px 3px;overflow-wrap:anywhere}.notice{padding:17px;background:var(--wash);border-radius:6px;margin:23px 0;font-size:13px;line-height:1.6}.settings-panel>a{font-size:13px}dialog{width:min(560px,calc(100vw - 30px));border:1px solid var(--border);border-radius:14px;padding:28px;box-shadow:0 25px 100px #102f3629;max-height:90vh}dialog::backdrop{background:#142e3a66;backdrop-filter:blur(3px)}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px;gap:15px}.modal-heading h2{margin:0}.icon-button{background:var(--wash);width:30px;height:30px;border-radius:50%;font-size:22px;color:var(--secondary)}.form-error,.error{font-size:13px;color:var(--danger);margin-top:15px}.form-error:empty{display:none}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:var(--surface);padding:14px 22px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10;font-size:14px;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;background:var(--surface)}.login-intro{padding:65px 12%;background:var(--wash);display:flex;flex-direction:column;justify-content:center}.login-intro .brand{margin-bottom:100px}.login-intro .eyebrow{color:var(--accent)}.login-intro h1{font-size:64px;line-height:1.1;letter-spacing:-2.5px;margin:23px 0;color:var(--ink)}.login-intro p{font-size:16px;color:var(--secondary)}.login-pills{display:flex;gap:18px;font-size:12px;color:var(--secondary);margin:35px 0}.login-card{align-self:center;padding:60px;max-width:510px;width:100%;justify-self:center}.login-card h2{font-size:25px;line-height:1.35;margin:25px 0 12px}.login-card>p{color:var(--muted);font-size:14px}.login-card form{margin-top:35px}.login-card .button{width:100%}.login-footer{border-top:1px solid var(--border);font-size:12px;color:var(--muted);margin-top:40px;padding-top:24px}.public-shell{max-width:1050px;margin:auto;padding:50px 30px}.public-card{display:grid;grid-template-columns:.85fr 1.3fr;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-top:40px}.public-card>aside{background:var(--wash);padding:45px 30px}.public-card h1{margin:25px 0}.public-card>aside p{font-size:14px;color:var(--secondary)}.public-card>section{padding:35px}.confirmation{text-align:center;padding:50px 0}.confirmation p{font-size:14px;color:var(--muted)}.loading{padding:50px;color:var(--muted)}
@media(min-width:1500px){.content{padding-top:55px}.stats article{padding:28px}.overview-grid{grid-template-columns:1.9fr 1fr}}
@media(max-width:1150px){.sidebar{width:215px;padding-left:16px;padding-right:16px}main{margin-left:215px}.content{padding:32px 26px}.topbar{padding:0 26px}.event-grid{grid-template-columns:repeat(2,1fr)}.overview-grid{grid-template-columns:1fr}.focus-panel{display:block}.focus-panel h2 br{display:none}.focus-panel h2{margin-top:15px}.focus-panel .connection-line{display:inline-flex;margin-left:20px}.meeting-info .muted{display:none}}
@media(max-width:720px){.sidebar{position:static;width:100%;padding:17px;border-right:0;border-bottom:1px solid var(--border)}.sidebar .brand{font-size:24px}.sidebar .brand-mark{width:29px;height:29px}.workspace-label,.nav-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto;gap:4px;margin-top:18px}.nav-item{width:auto;white-space:nowrap;font-size:12px;padding:10px}.nav-item>span{font-size:16px;width:auto}main{margin-left:0}.topbar{height:56px;padding:0 20px}.content{padding:28px 18px}.page-heading{align-items:flex-start;flex-direction:column;gap:20px}h1{font-size:29px}.stats{gap:9px}.stats article{padding:15px 12px}.stats article>span{font-size:11px}.stats strong{font-size:30px}.stats small{font-size:10px}.event-grid{grid-template-columns:1fr}.inbox-footer{align-items:flex-start;flex-direction:column}.inbox-footer>div{flex-wrap:wrap;gap:12px}.filter-bar>span{width:100%;margin:7px 0}.meeting-row{padding:16px 14px;gap:10px;flex-wrap:wrap}.meeting-time{margin-left:auto}.settings-panel{padding:22px}.form-grid{grid-template-columns:1fr;gap:0}.login-shell{grid-template-columns:1fr}.login-intro{padding:30px}.login-intro .brand{margin-bottom:30px}.login-intro h1{font-size:40px}.login-intro p,.login-pills{display:none}.login-card{padding:32px}.public-shell{padding:25px 16px}.public-card{grid-template-columns:1fr;margin-top:25px}.public-card>aside{padding:25px}.public-card>aside h1{font-size:28px;margin:14px 0}.public-card>aside h1 br{display:none}.public-card>aside .private-note{display:none}.public-card>section{padding:25px}.focus-panel .connection-line{display:flex;margin-left:0}.inbox-top{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Shared team calendar */
.team-calendar{margin-bottom:30px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px}.calendar-toolbar h2{font-size:23px;margin:0 0 8px}.calendar-toolbar p{font-size:13px;color:var(--muted);margin:0}.calendar-controls{display:flex;gap:8px}.calendar-controls .small-button{font-size:16px;min-width:38px;min-height:38px}.calendar-controls .small-button:first-child{font-size:14px;margin-right:5px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--wash)}.calendar-weekdays span{padding:12px 14px;font-size:13px;color:var(--secondary)}.calendar-day{min-height:116px;min-width:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);text-align:left;padding:10px 8px;display:flex;flex-direction:column;gap:8px;color:var(--ink);position:relative}.calendar-day:nth-child(7n){border-right:0}.calendar-day:hover{background:var(--wash)}.calendar-day.selected-day{background:var(--wash);box-shadow:inset 0 0 0 2px var(--accent);z-index:1}.calendar-day:focus-visible{outline-offset:-4px;z-index:2}.day-number{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;font-size:14px}.is-today .day-number{background:var(--teal);color:var(--surface);font-weight:600}.outside-month{background:var(--canvas)}.outside-month .day-number{color:var(--secondary)}.day-events{display:flex;flex-direction:column;gap:5px;min-width:0;width:100%}.calendar-event{display:block;padding:5px 6px;border-radius:4px;background:var(--wash);border-left:2px solid var(--accent);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.5}.calendar-event>span{font-weight:600}.more-events{font-size:12px;color:var(--accent);padding-left:6px}.calendar-agenda{background:var(--surface)}.calendar-agenda .section-title{padding-bottom:16px}.calendar-empty{padding:0 24px 24px;margin:0;font-size:14px;color:var(--muted)}.agenda-entry{display:flex;align-items:center;gap:22px;width:100%;text-align:left;padding:18px 24px;background:var(--surface);border-top:1px solid var(--line);color:var(--ink)}.agenda-entry:hover{background:var(--wash)}.agenda-entry strong{font-size:15px;font-weight:600}.agenda-entry small{font-size:13px;color:var(--muted);margin-top:6px}.agenda-time{font-size:14px;min-width:85px}.agenda-arrow{margin-left:auto;color:var(--teal)}.wallet-address{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;word-break:break-word}.meeting-details p{font-size:14px;line-height:1.8}.meeting-details dt{font-size:12px;color:var(--muted);margin-top:18px}.meeting-details dd{margin:6px 0 0;font-size:14px;overflow-wrap:anywhere}.meeting-details dl{margin-bottom:26px}.meeting-info .wallet-address{font-size:12px}
@media(max-width:900px){.calendar-scroll{overflow-x:auto}.calendar-grid,.calendar-weekdays{min-width:560px}.calendar-toolbar{padding:20px}.calendar-toolbar h2{font-size:20px}}
@media(max-width:720px){.calendar-toolbar{align-items:flex-start;flex-direction:column;gap:14px}.calendar-day{min-height:95px}.calendar-agenda .section-title{flex-wrap:wrap}.calendar-toolbar p{line-height:1.5}.agenda-entry{gap:14px;padding:16px 20px}.calendar-agenda .section-title h2{font-size:15px}}
.brand-name{font-size:22px;letter-spacing:-.6px;line-height:1.1}.brand-name small{font-size:13px;letter-spacing:1.6px;font-weight:500;margin-top:5px}.brand .brand-mark{font-size:22px;flex-shrink:0}

/* Railgun terminal: paper, ink, and a little phosphor. */
:root {
  --canvas: #edece4;
  --surface: #f7f6ef;
  --wash: #e6e7dc;
  --ink: #292e26;
  --secondary: #606657;
  --line: #c9cdbf;
  --accent: #465b32;
  --accent-hover: #334423;
  --on-accent: #faf9f0;
  --danger: #a03528;
  --mono: 'SFMono-Regular', Consolas, 'Liberation Mono', monospace;
  --serif: 'Iowan Old Style', 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
  color-scheme: light;
  font-family: var(--mono);
  font-size: 14px;
  background: var(--canvas);
  color: var(--ink);
}
:root[data-theme='dark'] {
  --canvas: #181c18;
  --surface: #20251f;
  --wash: #2b3329;
  --ink: #e4e7d8;
  --secondary: #a8b19e;
  --line: #424c3d;
  --accent: #b5cc8e;
  --accent-hover: #c7dca6;
  --on-accent: #202819;
  --danger: #ffab98;
  color-scheme: dark;
}
body { background-image: radial-gradient(color-mix(in srgb, var(--line) 45%, transparent) .65px, transparent .65px); background-size: 7px 7px; }
.terminal-bar { height: 44px; position: sticky; top: 0; z-index: 5; background: var(--ink); color: var(--canvas); display: flex; align-items: center; justify-content: space-between; padding: 0 25px; font: 11px var(--mono); letter-spacing: .03em; }
.terminal-id { color: inherit; display: flex; align-items: center; gap: 9px; }
.terminal-id:hover { text-decoration: none; }
.terminal-path { opacity: .7; margin-left: -3px; }
.terminal-signal { width: 7px; height: 7px; background: var(--canvas); border-radius: 50%; }
#theme-toggle { color: inherit; background: transparent; border: 1px solid currentColor; padding: 5px 10px; border-radius: 2px; font-size: 11px; }
#theme-toggle:hover { background: var(--canvas); color: var(--ink); }
h1, .login-intro h1, .public-card h1 { font-family: var(--serif); font-weight: 400; letter-spacing: -1.5px; font-size: clamp(32px, 3.5vw, 49px); line-height: 1.12; }
h2, h3 { letter-spacing: -.3px; }
.sidebar { top: 44px; width: 235px; padding: 31px 19px 18px; background: var(--canvas); }
.brand { color: var(--ink); gap: 11px; }
.brand .brand-mark { border-radius: 0; background: transparent; border: 1px solid var(--accent); color: var(--accent); width: 36px; height: 39px; font-family: var(--serif); font-style: italic; font-size: 29px; box-shadow: 3px 3px 0 var(--wash); }
.brand-name { font-family: var(--serif); font-weight: 600; font-size: 25px; }
.brand-name small { font-family: var(--mono); font-size: 10px; font-weight: 400; letter-spacing: 2.4px; text-transform: uppercase; }
.workspace-label { border: 0; border-top: 1px dashed var(--line); border-bottom: 1px dashed var(--line); border-radius: 0; padding: 18px 0; margin: 29px 0; font-size: 11px; }
.workspace-label small { font-size: 10px; }
.workspace-avatar, .avatar { border-radius: 2px; color: var(--ink); }
.nav-label, .eyebrow { font-family: var(--mono); font-size: 10px; font-weight: 400; letter-spacing: 1.3px; }
.nav-label { padding-left: 10px; }
.nav-item { font-size: 12px; border-radius: 2px; padding: 13px 10px; gap: 9px; border-left: 2px solid transparent; }
.nav-item.active { border-left-color: var(--accent); }
.nav-item.active::after { content: '_'; margin-left: auto; }
.nav-item b { border-radius: 1px; }
.private-note { font-size: 10px; line-height: 1.6; }
.private-note small { font-size: 9px; color: var(--secondary); }
main { margin-left: 235px; }
.topbar { height: 63px; background: transparent; padding: 0 36px; font-size: 11px; border-bottom-style: dashed; }
.topbar .avatar { display: none; }
.private-badge { font-size: 10px; }
.content { max-width: 1440px; padding: 36px 36px 64px; }
.page-heading { margin-bottom: 32px; }
.page-heading .eyebrow::before { content: '> '; color: var(--accent); }
.subtitle { font-family: var(--mono); font-size: 12px; line-height: 1.7; }
.button, .small-button, .light-button { border-radius: 2px; font-size: 12px; padding: 12px 16px; }
.button { color: var(--on-accent); box-shadow: 3px 3px 0 var(--line); }
.button:active { transform: translate(1px, 1px); box-shadow: 1px 1px 0 var(--line); }
.small-button { padding: 8px 10px; font-size: 11px; }
.light-button { border: 1px solid var(--line); color: var(--ink); }
.light-button:hover { background: var(--canvas); }
.text-button { font-size: 11px; }
.panel, .event-card, .inbox-card { border-radius: 3px; }
.team-calendar { box-shadow: 5px 5px 0 var(--wash); }
.calendar-toolbar { padding: 23px 24px; }
.calendar-toolbar h2 { font-family: var(--serif); font-size: 30px; font-weight: 400; }
.calendar-toolbar p { font-size: 11px; line-height: 1.6; }
.calendar-controls .small-button { min-width: 36px; min-height: 36px; font-size: 18px; }
.calendar-controls .small-button:first-child { font-size: 11px; }
.calendar-weekdays span { font-size: 10px; text-transform: uppercase; letter-spacing: 1px; }
.calendar-day { min-height: 101px; padding: 9px; }
.day-number { font-size: 12px; border-radius: 3px 9px 4px 8px; }
.is-today .day-number { color: var(--on-accent); }
.calendar-day.selected-day { box-shadow: inset 0 -3px 0 var(--accent); }
.calendar-event { font-size: 10px; border-radius: 1px; }
.more-events { font-size: 10px; }
.calendar-agenda .section-title h2 { font-size: 13px; }
.calendar-empty, .agenda-entry small { font-size: 12px; }
.panel-bottom { font-size: 10px; line-height: 1.7; border-top-style: dashed; }
.stats { gap: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); margin: 35px 0; }
.stats article { background: transparent; border: 0; border-right: 1px dashed var(--line); border-radius: 0; padding: 21px 24px; }
.stats article:first-child { padding-left: 0; }
.stats article:last-child { border-right: 0; }
.stats article>span { font-size: 11px; }
.stats strong { font-size: 34px; margin: 10px 0; font-family: var(--serif); }
.stats small { font-size: 10px; }
.focus-panel { position: relative; background: var(--wash); color: var(--ink); border: 1px solid var(--line); border-radius: 3px 3px 38px 3px; padding: 27px; }
.focus-panel h2 { font: italic 29px/1.25 var(--serif); }
.focus-panel p { font-size: 12px; }
.focus-panel .eyebrow { color: var(--accent); }
.connection-line { color: var(--secondary); font-size: 10px; }
.green-dot { background: var(--accent); }
.card-accent { height: 2px; background: var(--accent); }
.card-accent.tone-1 { background: #879888; }
.card-accent.tone-2 { background: #ab8d61; }
.card-inner h3 { font: 23px var(--serif); }
.card-inner p { line-height: 1.8; }
.section-title h2 { font-size: 14px; }
.date-tile, .filter, .tag, .days span { border-radius: 2px; }
input, select, textarea { background: var(--surface); color: var(--ink); border-radius: 2px; font-size: 13px; padding: 12px; }
label, legend { font-size: 12px; line-height: 1.6; }
label .muted { font-size: 10px; }
input::placeholder, textarea::placeholder { color: var(--secondary); opacity: .8; }
input, select, textarea, button, a { scroll-margin-top: 60px; }
dialog { background: var(--surface); color: var(--ink); border-radius: 3px; border-top: 4px solid var(--accent); }
.icon-button { color: var(--ink); border-radius: 2px; }
#toast { border-radius: 2px; color: var(--canvas); }
.login-shell { min-height: calc(100vh - 44px); background: transparent; grid-template-columns: 1.15fr 1fr; }
.login-intro { background: var(--wash); position: relative; border-right: 1px solid var(--line); padding: 65px 12%; }
.login-intro::after { content: '[ time is yours ]'; color: var(--secondary); font: 11px var(--mono); position: absolute; bottom: 32px; left: 12%; }
.login-intro .brand { margin-bottom: 80px; }
.login-intro h1 { font-size: clamp(48px, 5.5vw, 82px); line-height: 1.04; }
.login-intro h1::after { content: '_'; color: var(--accent); font: .65em var(--mono); }
.login-intro p { font-size: 13px; line-height: 1.9; }
.login-pills { gap: 18px; flex-wrap: wrap; font-size: 10px; }
.login-card { padding: 48px; max-width: 500px; }
.login-card h2 { font-family: var(--serif); font-size: 32px; font-weight: 400; }
.login-card>p { font-size: 12px; line-height: 1.8; }
.login-footer { border-top-style: dashed; font-size: 10px; }
.public-shell { padding-top: 36px; }
.public-card { border-radius: 3px; box-shadow: 7px 7px 0 var(--wash); }
.public-card>aside { border-right: 1px dashed var(--line); }
.public-card h1 { font-size: 42px; }
.public-card>aside p { font-size: 12px; line-height: 1.9; }
.notice { border-radius: 2px; border-left: 2px solid var(--accent); }
@media(min-width:1500px) { .content { padding-top: 44px; } }
@media(max-width:1150px) { .sidebar { width: 210px; } main { margin-left: 210px; } .content { padding: 30px 24px 50px; } .topbar { padding: 0 24px; } }
@media(max-width:720px) {
  .terminal-bar { padding: 0 16px; }
  .sidebar { position: static; width: 100%; padding: 22px 16px 6px; }
  .sidebar nav { margin-top: 20px; }
  .nav-item { min-height: 44px; padding: 10px; }
  .nav-item.active::after { display: none; }
  main { margin-left: 0; }
  .topbar { height: 49px; padding: 0 18px; font-size: 10px; }
  .content { padding: 27px 16px 44px; }
  .page-heading { gap: 18px; }
  h1 { font-size: 35px; }
  .calendar-toolbar h2 { font-size: 27px; }
  .calendar-controls .small-button { min-height: 44px; min-width: 44px; }
  .stats article { padding: 16px 10px; }
  .stats article>span, .stats small { font-size: 9px; }
  .stats strong { font-size: 30px; }
  .login-shell { grid-template-columns: 1fr; }
  .login-intro { padding: 30px; border-right: 0; border-bottom: 1px solid var(--line); }
  .login-intro::after { display: none; }
  .login-intro .brand { margin-bottom: 35px; }
  .login-intro h1 { font-size: 49px; }
  .login-card { padding: 32px; }
  .public-card>aside { border-right: 0; border-bottom: 1px dashed var(--line); }
  .public-card h1 { font-size: 36px; }
  .button, input, select, textarea { min-height: 44px; }
}

/* Chat activity is labeled as well as colored, in both themes. */
.activity-light { --chat-color:#386b9a; --chat-tint:#e1edf5; }
.activity-warm { --chat-color:#875b18; --chat-tint:#f5e9ce; }
.activity-active { --chat-color:#2e693d; --chat-tint:#e1efdd; }
:root[data-theme='dark'] .activity-light { --chat-color:#9bc6ea; --chat-tint:#263c4c; }
:root[data-theme='dark'] .activity-warm { --chat-color:#edc477; --chat-tint:#483d25; }
:root[data-theme='dark'] .activity-active { --chat-color:#b5d49b; --chat-tint:#32442e; }
.chat-legend { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:22px; font-size:11px; }
.chat-legend>.muted { margin-left:auto; }
.activity-badge { display:inline-flex; align-items:center; gap:8px; color:var(--chat-color); background:var(--chat-tint); padding:6px 9px; font-size:11px; border-radius:2px; }
.activity-badge i, .activity-option i { width:8px; height:8px; background:var(--chat-color); border-radius:50%; display:inline-block; flex-shrink:0; }
.chat-card { border-left:4px solid var(--chat-color); }
.chat-card h3 { font:25px var(--serif); overflow-wrap:anywhere; }
.chat-contact { font-size:11px; }
.chat-link { font-size:12px; display:inline-block; margin:0 0 7px; }
.activity-options { display:flex; flex-wrap:wrap; gap:10px; }
.activity-option { margin:0; position:relative; flex:1; min-width:100px; cursor:pointer; }
.activity-option input { position:absolute; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; }
.activity-option span { display:flex; align-items:center; gap:9px; color:var(--chat-color); border:1px solid var(--line); padding:12px; border-radius:2px; }
.activity-option input:checked+span { background:var(--chat-tint); border-color:var(--chat-color); box-shadow:inset 0 0 0 1px var(--chat-color); }
.activity-option input:focus-visible+span { outline:3px solid var(--accent); outline-offset:3px; }
.activity-picker>p { font-size:11px; margin:12px 0 0; line-height:1.8; }
@media(max-width:720px) { .chat-legend>.muted { margin-left:0; width:100%; } .brand-name { font-size:23px; } }
