:root{--bg: #0a1120;--bg-alt: #0d1526;--surface: #131d31;--surface-raised: #1a2540;--surface-sunken: #0c1424;--border: #223050;--border-strong: #32436c;--text: #e8eefb;--text-dim: #a7b6d4;--text-muted: #7387ad;--accent: #5b93fb;--accent-hover: #74a5ff;--accent-soft: rgba(91, 147, 251, .14);--accent-contrast: #06122a;--unread: #f2a33c;--unread-soft: rgba(242, 163, 60, .15);--unread-text: #f7bf74;--danger: #f4636a;--danger-soft: rgba(244, 99, 106, .14);--success: #43cf95;--success-soft: rgba(67, 207, 149, .14);--code-bg: #070d1a;--code-text: #cbd9f4;--shadow-sm: 0 1px 2px rgba(2, 6, 16, .5);--shadow-md: 0 6px 20px -6px rgba(2, 6, 16, .7);--shadow-lg: 0 24px 60px -12px rgba(2, 6, 16, .85);--font-ui: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--rail-width: 3px;--page-gutter: clamp(16px, 3vw, 40px);--transition: .12s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=light]{--bg: #f4f6fb;--bg-alt: #eef1f8;--surface: #ffffff;--surface-raised: #ffffff;--surface-sunken: #f7f9fd;--border: #dde3ef;--border-strong: #c3cddf;--text: #101a2e;--text-dim: #46566f;--text-muted: #6b7c99;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-soft: rgba(37, 99, 235, .1);--accent-contrast: #ffffff;--unread: #c2740b;--unread-soft: rgba(194, 116, 11, .12);--unread-text: #96590a;--danger: #d92d33;--danger-soft: rgba(217, 45, 51, .09);--success: #14855c;--success-soft: rgba(20, 133, 92, .1);--code-bg: #0d1526;--code-text: #d7e2f7;--shadow-sm: 0 1px 2px rgba(16, 26, 46, .06);--shadow-md: 0 6px 20px -6px rgba(16, 26, 46, .14);--shadow-lg: 0 24px 60px -12px rgba(16, 26, 46, .22)}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.022em;line-height:1.2}h1{font-size:clamp(22px,2.2vw,28px)}h2{font-size:17px}h3{font-size:14px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted)}.muted{color:var(--text-muted);font-size:13px}.dim{color:var(--text-dim)}.mono{font-family:var(--font-mono);font-size:12.5px;letter-spacing:-.01em}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-nav{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 var(--page-gutter);height:58px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.app-nav .brand{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.app-nav .brand:hover{text-decoration:none;color:var(--text)}.app-nav .brand-mark{font-size:17px}.app-nav .nav-right{display:flex;align-items:center;gap:10px}.nav-unread{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:999px;background:var(--unread-soft);color:var(--unread-text);border:1px solid color-mix(in srgb,var(--unread) 30%,transparent);font-size:12.5px;font-weight:600}.nav-unread:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--unread)}.nav-unread:hover{text-decoration:none;background:color-mix(in srgb,var(--unread) 22%,transparent)}.nav-email{font-size:13px;color:var(--text-muted)}.page{padding:clamp(20px,2.6vw,32px) var(--page-gutter) 64px;max-width:2100px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px}.page-title-group{display:flex;flex-direction:column;gap:4px;min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--border);background:var(--surface-sunken)}.panel-body{padding:16px}.panel-body.flush{padding:0}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row-tight{display:flex;align-items:center;gap:6px}.spacer{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 15px;border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--accent);color:var(--accent-contrast);font:inherit;font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition)}.btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--surface-raised);border-color:var(--border-strong);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--surface-raised);border-color:var(--accent);color:var(--text)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.btn-ghost:hover:not(:disabled){background:var(--surface-raised);border-color:transparent;color:var(--text)}.btn-danger{background:transparent;border-color:color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger);border-color:var(--danger);color:#fff}.btn-sm{padding:5px 10px;font-size:13px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font-size:14px;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.icon-btn:hover{background:var(--surface-raised);color:var(--text);border-color:var(--border-strong)}.input,.select,.textarea{width:100%;padding:8px 11px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:14px;background:var(--surface-sunken);color:var(--text);transition:border-color var(--transition),box-shadow var(--transition)}.textarea{min-height:88px;resize:vertical}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input:disabled{opacity:.6}.field{display:flex;flex-direction:column;gap:5px}.label{font-size:12.5px;font-weight:600;color:var(--text-dim)}.hint{font-size:12px;color:var(--text-muted)}.search{position:relative;flex:1;min-width:200px;max-width:380px}.search .input{padding-left:32px}.search:before{content:"⌕";position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:15px;pointer-events:none}.segmented{display:inline-flex;padding:3px;gap:2px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm)}.segmented button{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:none;border-radius:5px;background:transparent;color:var(--text-muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition),color var(--transition)}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true]{background:var(--surface-raised);color:var(--text);box-shadow:var(--shadow-sm)}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.badge-unread{display:inline-flex;align-items:center;gap:5px;padding:2px 9px 2px 7px;border-radius:999px;background:var(--unread-soft);border:1px solid color-mix(in srgb,var(--unread) 32%,transparent);color:var(--unread-text);font-size:12px;font-weight:700;white-space:nowrap}.badge-unread:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--unread)}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;background:var(--surface-sunken);border:1px solid var(--border);color:var(--text-dim);font-size:12px;font-weight:600}.token-chip{display:inline-flex;align-items:center;gap:7px;padding:3px 8px;border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border);color:var(--text-dim);font-family:var(--font-mono);font-size:12px;cursor:pointer;transition:border-color var(--transition),color var(--transition)}.token-chip:hover{border-color:var(--accent);color:var(--text)}.token-chip .copy-hint{color:var(--text-muted);font-size:11px;font-family:var(--font-ui)}.token-chip.copied{border-color:var(--success);color:var(--success)}.project-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:16px 18px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.project-card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-md)}.project-card.has-unread{border-color:color-mix(in srgb,var(--unread) 34%,var(--border))}.project-card.has-unread:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--rail-width);background:var(--unread)}.project-card.is-quiet{background:var(--bg-alt)}.project-card-top{display:flex;align-items:flex-start;gap:12px}.project-logo{flex:none;width:34px;height:34px;border-radius:8px;object-fit:contain;background:var(--surface-sunken);border:1px solid var(--border);padding:3px}.project-logo-fallback{display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--text-muted);font-family:var(--font-mono)}.project-card-title{display:flex;align-items:center;gap:8px;min-width:0;font-size:15.5px;font-weight:650;letter-spacing:-.015em;color:var(--text)}.project-card-title a{color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-title a:hover{color:var(--accent);text-decoration:none}.project-stats{display:flex;align-items:baseline;gap:16px;padding-top:12px;border-top:1px solid var(--border)}.stat{display:flex;flex-direction:column;gap:1px}.stat-value{font-family:var(--font-mono);font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.02em}.stat-value.is-new{color:var(--unread-text)}.stat-label{font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.project-card-actions{display:flex;gap:6px;align-items:center}.detail-head{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:20px}.detail-logo{width:40px;height:40px;border-radius:9px;object-fit:contain;background:var(--surface-sunken);border:1px solid var(--border);padding:4px}.detail-layout{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}@media (min-width: 1080px){.detail-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start}}@media (min-width: 1600px){.detail-layout{grid-template-columns:minmax(0,1fr) 400px}}.detail-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:74px}@media (max-width: 1079px){.detail-side{position:static}}.meta-list{display:flex;flex-direction:column;gap:11px}.meta-row{display:flex;flex-direction:column;gap:3px}.meta-row .meta-value{font-size:13.5px;color:var(--text);word-break:break-word}.disclosure{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.disclosure-trigger{display:flex;align-items:center;gap:9px;width:100%;padding:12px 15px;border:none;background:transparent;color:var(--text);font:inherit;font-size:14px;font-weight:600;text-align:left;cursor:pointer;transition:background var(--transition)}.disclosure-trigger:hover{background:var(--surface-sunken)}.disclosure-caret{color:var(--text-muted);font-size:11px;transition:transform var(--transition)}.disclosure[open] .disclosure-caret,.disclosure-trigger[aria-expanded=true] .disclosure-caret{transform:rotate(90deg)}.disclosure-panel{padding:14px 15px 15px;border-top:1px solid var(--border)}.form-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.form-tab{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-dim);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color var(--transition),color var(--transition),background var(--transition)}.form-tab:hover{color:var(--text);border-color:var(--border-strong)}.form-tab[aria-pressed=true]{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--text)}.form-tab .count{font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted)}.form-tab .count.is-new{color:var(--unread-text)}.field-editor{display:flex;flex-direction:column;gap:8px}.field-row{display:grid;grid-template-columns:auto minmax(0,1fr) 120px auto auto;align-items:center;gap:8px;padding:8px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm)}@media (max-width: 720px){.field-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"handle label   remove" "handle type    type" "handle req     req"}}.field-move{display:flex;flex-direction:column;gap:1px}.field-move button{width:20px;height:15px;padding:0;border:1px solid var(--border);border-radius:3px;background:var(--surface);color:var(--text-muted);font-size:9px;line-height:1;cursor:pointer}.field-move button:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.field-move button:disabled{opacity:.3;cursor:not-allowed}.field-key{font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted)}.switch{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-dim);cursor:pointer;white-space:nowrap}.submission-list{display:flex;flex-direction:column}.submission-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;width:100%;padding:13px 16px 13px 19px;border:none;border-bottom:1px solid var(--border);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--transition)}.submission-row:last-child{border-bottom:none}.submission-row:hover{background:var(--surface-sunken)}.submission-row.is-unread:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--rail-width);background:var(--unread)}.submission-row.is-unread .submission-who{color:var(--text);font-weight:650}.submission-row .submission-who{color:var(--text-dim);font-weight:500}.submission-who{display:flex;align-items:baseline;gap:9px;min-width:0;font-size:14.5px}.submission-who .who-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.submission-who .who-email{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.submission-when{display:flex;flex-direction:column;align-items:flex-end;gap:1px;white-space:nowrap}.submission-when .when-absolute{font-family:var(--font-mono);font-size:12px;color:var(--text-dim)}.submission-when .when-relative{font-size:11px;color:var(--text-muted)}.submission-preview{grid-column:1 / -1;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;color:var(--text-muted);font-size:13.5px;line-height:1.5;overflow-wrap:anywhere}.submission-form-tag{font-size:11px;font-weight:600;color:var(--text-muted);padding:1px 7px;border-radius:999px;border:1px solid var(--border);white-space:nowrap}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0409149e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade-in .14s ease-out}.drawer{position:fixed;inset:0 0 0 auto;z-index:51;width:min(560px,100vw);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);animation:slide-in .18s cubic-bezier(.32,.72,0,1)}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border)}.drawer-body{flex:1;overflow-y:auto;padding:18px 20px 28px}.drawer-foot{display:flex;align-items:center;gap:8px;padding:13px 20px;border-top:1px solid var(--border);background:var(--surface-sunken)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:clamp(24px,8vh,90px) 16px 24px;overflow-y:auto;background:#0409149e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade-in .14s ease-out}.modal{width:100%;max-width:560px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:rise-in .18s cubic-bezier(.32,.72,0,1)}.modal-sm{max-width:420px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 12px}.modal-body{padding:0 20px 18px}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}@keyframes fade-in{0%{opacity:0}}@keyframes slide-in{0%{transform:translate(18px);opacity:0}}@keyframes rise-in{0%{transform:translateY(10px);opacity:0}}.value-block{display:flex;flex-direction:column;gap:5px;padding:12px 0;border-bottom:1px solid var(--border)}.value-block:last-child{border-bottom:none}.value-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.value-text{font-size:14.5px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.value-text.is-mono{font-family:var(--font-mono);font-size:13px}.copy-btn{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer;transition:opacity var(--transition),color var(--transition),border-color var(--transition)}@media (hover: hover) and (pointer: fine){.copy-btn{opacity:.45}.value-block:hover .copy-btn,.copy-btn:hover,.copy-btn:focus-visible{opacity:1}}.copy-btn:hover{color:var(--text);border-color:var(--border-strong)}.copy-btn.copied{opacity:1;color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,transparent)}.snippet{position:relative;margin:6px 0 12px;padding:14px 74px 14px 16px;background:var(--code-bg);color:var(--code-text);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:12.5px;line-height:1.6;white-space:pre;overflow-x:auto}.snippet-copy{position:absolute;top:9px;right:9px;padding:4px 10px;border:1px solid rgba(255,255,255,.16);border-radius:5px;background:#ffffff12;color:#e6edf7;font:inherit;font-size:11.5px;font-weight:600;cursor:pointer;transition:background var(--transition)}.snippet-copy:hover{background:#ffffff24}.snippet-copy.copied{color:var(--success);border-color:var(--success)}.error-banner{display:flex;align-items:flex-start;gap:9px;padding:11px 14px;margin-bottom:16px;background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 34%,transparent);border-radius:var(--radius-sm);color:var(--danger);font-size:13.5px}.empty{display:flex;flex-direction:column;align-items:center;gap:7px;padding:48px 24px;text-align:center;color:var(--text-muted)}.empty-title{font-size:15px;font-weight:600;color:var(--text-dim)}.empty-hint{font-size:13.5px;max-width:420px}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface) 25%,var(--surface-raised) 37%,var(--surface) 63%);background-size:400% 100%;animation:shimmer 1.3s ease-in-out infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.auth-shell{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 58px);padding:32px 20px 64px}.auth-box{width:100%;max-width:380px;padding:28px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.auth-box .stack{gap:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
