:root{--bg:#f6f4ee;--bg-accent:rgba(186,140,74,.08);--surface:hsla(0,0%,100%,.82);--surface-strong:#fff;--text:#1f2622;--text-soft:#5f675f;--text-faint:#828980;--primary:#245d52;--primary-soft:rgba(36,93,82,.1);--success:#1d7d5d;--warning:#b67a1a;--danger:#c45a5a;--border:rgba(31,38,34,.08);--shadow:0 10px 30px rgba(31,38,34,.06);--radius-lg:20px;--radius-md:16px;--radius-sm:12px;--container:1100px;--font-size-body:15px;--font-size-label:.76rem;--font-size-title:clamp(1.75rem,3vw,2.6rem);--font-size-section:clamp(1.25rem,2vw,1.7rem);--font-sans:"IBM Plex Sans","PingFang SC","Hiragino Sans GB","Noto Sans SC",sans-serif;--font-mono:"JetBrains Mono","SFMono-Regular","SF Mono","Menlo",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at top left,var(--bg-accent),transparent 28%),radial-gradient(circle at top right,rgba(36,93,82,.05),transparent 22%),linear-gradient(180deg,hsla(0,0%,100%,.55),transparent 34%),var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--font-size-body);line-height:1.6;margin:0;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}textarea{resize:vertical}img{display:block;max-width:100%}.app-shell{min-height:100vh}.page-shell{margin:0 auto;padding:20px 0 64px;width:min(var(--container),calc(100% - 32px))}.surface{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.surface-strong{background:var(--surface-strong)}.page-grid{display:grid;gap:20px}.stack-sm{display:grid;gap:10px}.stack-md{display:grid;gap:14px}.stack-lg{display:grid;gap:20px}.grid-cards{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.split-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:end;display:flex;gap:16px;justify-content:space-between}.section-heading h2,.section-heading h3,.section-heading p{margin:0}.section-kicker{color:var(--primary);font-size:var(--font-size-label);font-weight:700;letter-spacing:.08em;margin:0 0 8px}.section-copy{color:var(--text-soft);line-height:1.7;max-width:62ch}.section-heading h2{font-size:var(--font-size-section);line-height:1.2}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button{align-items:center;background:var(--primary);border:1px solid transparent;border-radius:999px;color:#fff;display:inline-flex;font-size:.92rem;font-weight:600;gap:8px;justify-content:center;min-height:40px;padding:0 15px;transition:transform .16s ease,background .16s ease,border-color .16s ease}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.6;transform:none}.button-ghost{background:transparent;border-color:var(--border);color:var(--text)}.button-soft{background:var(--primary-soft);color:var(--primary)}.button-sm{font-size:.84rem;font-weight:500;min-height:32px;padding:0 12px}.button-muted{background:#ffffffb8;border-color:var(--border);color:var(--text-soft)}.button-muted:hover{background:#ffffffeb;color:var(--text)}.pill-row{display:flex;flex-wrap:wrap;gap:10px}.badge,.pill{align-items:center;background:#ffffff9e;border:1px solid var(--border);border-radius:999px;color:var(--text-soft);display:inline-flex;font-size:.78rem;gap:6px;min-height:28px;padding:0 11px}.badge-ready{background:#1f8f5f14;border-color:#1f8f5f29;color:var(--success)}.badge-planned{background:#d18b1814;border-color:#d18b1829;color:var(--warning)}.field-grid{display:grid;gap:12px}.field-label{align-items:center;display:flex;font-size:.92rem;font-weight:600;gap:12px;justify-content:space-between;margin:0}.field-help{color:var(--text-faint);font-size:.88rem;margin:0}.field-input,.field-select,.field-textarea{background:#ffffffeb;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);transition:border-color .16s ease,box-shadow .16s ease;width:100%}.field-input,.field-select{min-height:44px;padding:0 14px}.field-textarea{line-height:1.65;min-height:200px;padding:14px}.field-input:focus,.field-select:focus,.field-textarea:focus{border-color:#2e6bff6b;box-shadow:0 0 0 4px #2e6bff1a;outline:none}.field-mono{font-family:var(--font-mono);font-size:.94rem}.hint-row{color:var(--text-faint);display:flex;flex-wrap:wrap;font-size:.84rem;gap:10px}.mono-box{background:#172026;border:1px solid var(--border);border-radius:var(--radius-md);color:#eff5f6;font-family:var(--font-mono);line-height:1.65;padding:14px 16px;white-space:pre-wrap;word-break:break-word}.empty-state,.notice-box{background:#ffffff8f;border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-soft);padding:18px}.status-error{color:var(--danger)}.status-success{color:var(--success)}.list-clean{list-style:none;margin:0;padding:0}.prose{color:var(--text);line-height:1.72}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose h2,.prose h3{line-height:1.25;margin-bottom:.9rem;margin-top:2rem}.prose li,.prose p{color:var(--text-soft)}.prose code{background:#18202512;border-radius:10px;font-family:var(--font-mono);font-size:.92em;padding:.12rem .36rem}.prose pre{background:#172026;border-radius:var(--radius-md);color:#eff5f6;overflow-x:auto;padding:18px}.prose pre code{background:transparent;padding:0}.prose ol,.prose ul{padding-left:1.2rem}.prose a{color:var(--primary)}@media(max-width:900px){.split-grid{grid-template-columns:1fr}}@media(max-width:640px){.page-shell{padding-bottom:48px;padding-top:14px;width:min(var(--container),calc(100% - 20px))}.surface{border-radius:18px}}
