:root{--sky-1:#bfe0ff;--sky-2:#eaf5ff;--sky-3:#f7fbff;--cloud:#fff;--cloud-glass:#ffffffb3;--soft:#f2f7fd;--select:#eef5ff;--line:#dce8f5;--ink:#12304f;--ink-hover:#0b2238;--mute:#4f6a86;--on-ink:#fff;--blue:#2f7de1;--bar:#bcd8f7;--link:#1f5fbf;--link-hover:#123a75;--focus-ring:#2f7de133;--level-error:#c8352b;--level-warning:#9a5f06;--level-info:#2563c9;--ok:#1e7a4c;--ok-bg:#e4f5ec;--ok-ink:#14523a;--bad-bg:#fdecea;--bad-ink:#8e1d1a;--new-bg:#fff1d6;--new-ink:#7a4a00;--goose-error:#12304f;--goose-warning:#7a5a2e;--goose-info:#8fa7bf;--code-bg:#12304f;--code-ink:#eaf5ff;--code-rule:#24486e;--code-comment:#7e9ab8;--code-string:#9ccbff;--code-key:#ffd58a;--font-sans:"Figtree", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--text-xs:.75rem;--text-code:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.625rem;--text-title:1.875rem;--text-2xl:2.25rem;--text-stat:2.5rem;--text-hero:3.625rem;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--radius-pill:999px;--shadow-card:0 8px 30px #2f7de114;--shadow-raised:0 20px 50px #2f7de11f;--gutter:24px;--gutter-sm:16px;--page-max:1180px;--tap:44px}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(180deg, var(--sky-1) 0, var(--sky-2) 520px, var(--sky-3) 100%) no-repeat var(--sky-3);min-height:100vh;color:var(--ink);font:var(--text-base) / 1.5 var(--font-sans)}a{color:var(--link)}a:hover{color:var(--link-hover)}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}code,pre,.mono{font-family:var(--font-mono)}ol,ul{list-style:none}.page{max-width:var(--page-max);padding:8px var(--gutter) 72px;margin:0 auto}.page-status{text-align:center;color:var(--mute);padding:48px 0}.back-link{min-height:var(--tap);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.flock{color:var(--ink);opacity:.55}@media (width<=640px){.page{padding:8px var(--gutter-sm) 56px}.flock{display:none}}.btn{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--cloud);color:var(--ink);font:600 var(--text-base) var(--font-sans);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 20px;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--bar);color:var(--ink)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.btn-primary:hover{background:var(--ink-hover);border-color:var(--ink-hover);color:var(--on-ink)}.btn-on-ink{background:var(--cloud);border-color:var(--cloud);color:var(--ink)}.btn-small{min-height:36px;font-size:var(--text-sm);padding:0 14px}.btn-block{width:100%}.btn-danger{background:var(--level-error);border-color:var(--level-error);color:var(--on-ink)}.btn-danger:hover{background:var(--bad-ink);border-color:var(--bad-ink);color:var(--on-ink)}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field label{font-size:var(--text-sm);font-weight:600}.field input{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--soft);min-height:46px;color:var(--ink);font:var(--text-base) var(--font-sans);padding:0 16px}.field input:focus{border-color:var(--blue);background:var(--cloud);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.field .hint{font-size:var(--text-sm);color:var(--mute)}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.alert,.toast,.notice{border-radius:var(--radius-md);font-size:var(--text-sm);align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 16px;display:flex}.alert{background:var(--bad-bg);color:var(--bad-ink)}.toast{background:var(--ok-bg);color:var(--ok-ink);align-items:center;font-weight:600}.notice{background:var(--select);color:var(--ink)}.notice-danger{background:var(--bad-bg);color:var(--bad-ink);box-shadow:inset 4px 0 0 var(--level-error)}.notice-danger .alert{background:var(--cloud)}.card{padding:22px var(--gutter);border-radius:var(--radius-lg);background:var(--cloud);box-shadow:var(--shadow-card)}.card-raised{border-radius:var(--radius-xl);box-shadow:var(--shadow-raised)}.card-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px;display:flex}.card-header h2,.card-header h3{font-size:var(--text-lg);font-weight:700}.card-header span{font-size:var(--text-sm);color:var(--mute)}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;padding:24px 0 20px;display:flex;position:relative}.page-head h1{font-size:var(--text-2xl);letter-spacing:-.02em;overflow-wrap:anywhere;font-weight:800}.page-head p{color:var(--mute);margin-top:2px}.page-flock{position:absolute;top:0;right:240px}.tag{border-radius:var(--radius-sm);font-size:var(--text-xs);padding:1px 8px;font-weight:700;display:inline-block}.tag-role{background:var(--cloud);color:var(--mute)}.tag-new{background:var(--new-bg);color:var(--new-ink)}.tag-back{background:var(--bad-bg);color:var(--bad-ink)}.steps{flex-direction:column;gap:12px;display:flex}.steps li{border-radius:var(--radius-md);background:var(--soft);align-items:center;gap:12px;padding:12px 14px;display:flex}.steps b{background:var(--ink);width:30px;height:30px;color:var(--on-ink);border-radius:50%;flex:none;place-items:center;display:grid}.steps li.is-later{color:var(--mute)}.steps li.is-later b{background:var(--bar);color:var(--ink)}.code-block{border-radius:var(--radius-md);background:var(--code-bg);min-width:0;color:var(--code-ink);overflow:hidden}.code-bar{border-bottom:1px solid var(--code-rule);min-height:48px;font-size:var(--text-code);color:var(--code-comment);align-items:center;gap:8px;padding:6px 6px 6px 16px;display:flex}.code-bar .btn{border-color:var(--code-rule);color:var(--code-ink);background:0 0;margin-left:auto}.code-bar .btn:hover{border-color:var(--code-comment);color:var(--code-ink)}.code-block pre{font-size:var(--text-code);padding:14px 16px;line-height:1.7;overflow-x:auto}.api-key{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.api-key output{border-radius:var(--radius-pill);background:var(--soft);min-height:48px;font-size:var(--text-base);white-space:nowrap;flex:280px;align-items:center;padding:0 16px;display:flex;overflow-x:auto}.level{font-size:var(--text-code);align-items:center;gap:6px;font-weight:600;display:inline-flex}.level:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}.level-error{color:var(--level-error)}.level-warning{color:var(--level-warning)}.level-info{color:var(--level-info)}.goose-avatar{background:var(--soft);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid}.goose-avatar svg{width:28px;height:28px}.goose-error svg{fill:var(--goose-error)}.goose-warning svg{fill:var(--goose-warning)}.goose-info svg{fill:var(--goose-info)}.goose-row{border-radius:var(--radius-md);color:var(--ink);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 10px;text-decoration:none;display:grid}.goose-row+.goose-row{border-top:1px solid var(--line)}.goose-row .goose-text{min-width:0}.goose-row .name{font-weight:700}.goose-row .message{color:var(--mute);font:var(--text-code) var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.goose-row .count{text-align:right;font-weight:800}.goose-row .count small{font-size:var(--text-xs);color:var(--mute);font-weight:500;display:block}.site-header{align-items:center;gap:12px var(--gutter);flex-wrap:wrap;padding:16px 32px;display:flex}.brand{min-height:var(--tap);color:var(--ink);font-size:var(--text-lg);align-items:center;gap:10px;font-weight:800;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand svg{fill:currentColor;width:26px;height:26px}.site-nav{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;display:flex}.site-nav>a:not(.btn){border-radius:var(--radius-pill);min-height:40px;color:var(--ink);align-items:center;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}.site-nav>a[aria-current=page]{background:var(--cloud);box-shadow:var(--shadow-card)}.nav-user{border-radius:var(--radius-pill);background:var(--cloud-glass);min-height:40px;font-size:var(--text-sm);align-items:center;gap:8px;padding:0 12px 0 4px;font-weight:600;display:inline-flex}.nav-user i{background:var(--ink);width:32px;height:32px;color:var(--on-ink);border-radius:50%;place-items:center;font-style:normal;font-weight:800;display:grid}@media (width<=640px){.site-header{padding:14px var(--gutter-sm)}.site-nav{margin-left:0}}.home-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:48px;padding:48px 0 64px;display:grid;position:relative}.home-flock{position:absolute;top:8px;left:38%}.kicker{border-radius:var(--radius-md);background:var(--cloud-glass);font-size:var(--text-sm);padding:4px 12px;font-weight:600;display:inline-flex}.home-hero h1{font-size:var(--text-hero);letter-spacing:-.035em;margin:18px 0 14px;font-weight:800;line-height:1.02}.home-hero p{max-width:520px;font-size:var(--text-md);color:var(--mute);margin-bottom:26px}.home-actions{flex-wrap:wrap;gap:10px;display:flex}.home-preview{transform:rotate(1deg)}.home-section{padding:48px 0}.home-section h2{font-size:var(--text-2xl);letter-spacing:-.02em;text-align:center;margin-bottom:8px;font-weight:800}.home-lede{max-width:620px;font-size:var(--text-md);color:var(--mute);text-align:center;margin:0 auto 28px}.home-steps,.home-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.home-steps h3,.home-features h3{font-size:var(--text-lg);margin-bottom:6px;font-weight:800}.home-steps p,.home-features p{color:var(--mute)}.home-step-number{background:var(--ink);width:36px;height:36px;color:var(--on-ink);border-radius:50%;place-items:center;margin-bottom:12px;font-weight:800;display:grid}.home-code{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:28px;display:grid}.home-code h2,.home-code .home-lede{text-align:left;margin-left:0}.home-code code{border-radius:var(--radius-sm);background:var(--cloud);padding:1px 6px;font-size:.9em}.home-band{border-radius:var(--radius-xl);background:var(--ink);color:var(--on-ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:24px 0;padding:48px;display:flex}.home-band h2{font-size:var(--text-2xl);letter-spacing:-.02em;font-weight:800}.home-band p{color:var(--code-ink);margin-top:6px}@media (width<=900px){.home-hero,.home-code{grid-template-columns:minmax(0,1fr)}.home-hero h1{font-size:var(--text-2xl)}.home-steps,.home-features{grid-template-columns:minmax(0,1fr)}.home-preview{transform:none}.home-band{padding:28px}}.auth{max-width:460px;margin:32px auto 0;position:relative}.auth-flock{width:110px;height:44px;position:absolute;top:-44px;right:24px}.auth-card{padding:36px}.auth-card h1{font-size:var(--text-title);letter-spacing:-.02em;font-weight:800}.auth-sub{color:var(--mute);margin:4px 0 22px}.auth-switch{font-size:var(--text-sm);color:var(--mute);text-align:center;margin-top:18px}@media (width<=560px){.auth-card{border-radius:var(--radius-lg);padding:26px 20px}}.app-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.app-card{border:2px solid #0000;flex-direction:column;gap:8px;min-height:140px;display:flex;position:relative}.app-card:hover,.app-card:focus-within{border-color:var(--select)}.app-card h2{font-size:var(--text-lg);overflow-wrap:anywhere;font-weight:800}.app-card h2 a{color:var(--ink);text-decoration:none}.app-card h2 a:after{content:"";border-radius:inherit;position:absolute;inset:0}.app-card-meta{font-size:var(--text-sm);color:var(--mute);margin-top:auto}.app-card-add{border:2px dashed var(--bar);border-radius:var(--radius-lg);height:100%;min-height:140px;color:var(--ink);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-weight:700;text-decoration:none;display:flex}.app-card-add span{background:var(--cloud);width:44px;height:44px;font-size:var(--text-xl);border-radius:50%;place-items:center;font-weight:400;display:grid}.empty-state{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;padding:36px;display:grid}.empty-state h2{font-size:var(--text-title);letter-spacing:-.02em;margin-bottom:8px;font-weight:800}.empty-state p{font-size:var(--text-md);color:var(--mute);margin-bottom:18px}@media (width<=960px){.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.empty-state{grid-template-columns:minmax(0,1fr);padding:24px}}@media (width<=640px){.app-grid{grid-template-columns:minmax(0,1fr)}}.new-application{max-width:560px;margin:16px auto 0}.new-application .card{padding:36px}.new-application h1{font-size:var(--text-title);letter-spacing:-.02em;margin-bottom:24px;font-weight:800}.new-application-next{flex-direction:column;gap:4px}@media (width<=560px){.new-application .card{padding:24px 20px}}.application-detail{flex-direction:column;gap:20px;display:flex}.application-detail .page-head{padding:0}.api-key-note{font-size:var(--text-sm);color:var(--mute);margin-top:10px}.first-event{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:start;gap:28px;display:grid}@media (width<=860px){.first-event{grid-template-columns:minmax(0,1fr)}}.rotate-key-confirm{flex-direction:column;flex:100%;margin-bottom:0}.rotate-key-confirm .alert{margin-bottom:0}.rotate-key-actions{flex-wrap:wrap;gap:10px;display:flex}
