@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--bg-subtle:#f5f5f5;--bg-card:#fff;--border:#e0e0e0;--border-focus:#1a1a1a;--text:#111;--text-2:#555;--text-3:#888;--accent:#1a1a1a;--accent-fg:#fff;--accent-hover:#333;--teal:#0d9488;--teal-light:#ccfbf1;--teal-fg:#fff;--danger:#d93025;--success:#1e8a4c;--badge-get-bg:#e6f4ea;--badge-get:#1e8a4c;--badge-post-bg:#e8f0fe;--badge-post:#1a73e8;--badge-put-bg:#fef7e0;--badge-put:#b06000;--badge-patch-bg:#f3e8fd;--badge-patch:#7b1fa2;--badge-delete-bg:#fce8e6;--badge-delete:#d93025;--shadow:0 1px 4px #00000014;--shadow-md:0 4px 16px #0000001a;--radius:8px;--radius-lg:12px}[data-theme=dark]{--bg:#111;--bg-subtle:#1c1c1c;--bg-card:#1c1c1c;--border:#2e2e2e;--border-focus:#fff;--text:#f5f5f5;--text-2:#aaa;--text-3:#666;--accent:#f5f5f5;--accent-fg:#111;--accent-hover:#ddd;--teal:#2dd4bf;--teal-light:#042f2e;--teal-fg:#fff;--danger:#f28b82;--success:#81c995;--badge-get-bg:#0d2b18;--badge-get:#81c995;--badge-post-bg:#0d1f3c;--badge-post:#8ab4f8;--badge-put-bg:#2b1d00;--badge-put:#fdd663;--badge-patch-bg:#1e0a3c;--badge-patch:#ce93d8;--badge-delete-bg:#2d0c07;--badge-delete:#f28b82;--shadow:0 1px 4px #0006;--shadow-md:0 4px 16px #00000080}html{font-size:16px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:DM Sans,sans-serif;transition:background .2s,color .2s}#root{min-height:100vh}h1{letter-spacing:-.02em;font-size:1.75rem;font-weight:700}h2{font-size:1.25rem;font-weight:600}h3{font-size:1rem;font-weight:600}p{line-height:1.6}.btn{border-radius:var(--radius);cursor:pointer;border:none;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-family:DM Sans,sans-serif;font-size:.9rem;font-weight:500;line-height:1.4;text-decoration:none;transition:background .15s,opacity .15s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-fg)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-outline{color:var(--text);border:1px solid var(--border);background:0 0}.btn-outline:hover:not(:disabled){border-color:var(--border-focus)}.btn-teal{background:var(--teal);color:var(--teal-fg)}.btn-teal:hover:not(:disabled){opacity:.88}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.form-group{flex-direction:column;gap:.35rem;display:flex}.form-label{color:var(--text-2);font-size:.8rem;font-weight:500}.form-input,.form-textarea{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);outline:none;padding:.6rem .85rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.form-input:focus,.form-textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 14%, transparent)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-3)}.form-textarea{resize:vertical;min-height:90px;line-height:1.5}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.25rem}.alert{border-radius:var(--radius);padding:.65rem .9rem;font-size:.875rem}.alert-error{background:var(--badge-delete-bg);color:var(--danger);border:1px solid var(--danger)}.alert-success{background:var(--badge-get-bg);color:var(--success);border:1px solid var(--success)}.badge{letter-spacing:.04em;white-space:nowrap;border-radius:4px;padding:.15rem .45rem;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:700;display:inline-block}.badge-GET{background:var(--badge-get-bg);color:var(--badge-get)}.badge-POST{background:var(--badge-post-bg);color:var(--badge-post)}.badge-PUT{background:var(--badge-put-bg);color:var(--badge-put)}.badge-PATCH{background:var(--badge-patch-bg);color:var(--badge-patch)}.badge-DELETE{background:var(--badge-delete-bg);color:var(--badge-delete)}.mono{font-family:JetBrains Mono,monospace;font-size:.875rem}.container{max-width:860px;margin:0 auto;padding:0 1.25rem}.spinner{border:2px solid #8080804d;border-top-color:currentColor;border-radius:50%;width:14px;height:14px;animation:.65s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--teal)}@media (width<=600px){h1{font-size:1.4rem}.container{padding:0 1rem}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.toast-stack{z-index:9999;pointer-events:none;flex-direction:column;gap:.5rem;display:flex;position:fixed;bottom:1.25rem;right:1.25rem}.toast{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);pointer-events:all;border:1px solid #0000;align-items:center;gap:.75rem;min-width:220px;max-width:360px;padding:.7rem 1rem;font-size:.875rem;font-weight:500;animation:.25s both toastIn;display:flex}.toast-success{background:var(--badge-get-bg);color:var(--success);border-color:var(--success)}.toast-info{background:var(--badge-post-bg);color:var(--badge-post);border-color:var(--badge-post)}.toast-error{background:var(--badge-delete-bg);color:var(--danger);border-color:var(--danger)}.toast-msg{flex:1}.toast-close{cursor:pointer;color:currentColor;opacity:.6;background:0 0;border:none;flex-shrink:0;padding:0;font-size:.8rem;line-height:1}.toast-close:hover{opacity:1}@keyframes toastIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.theme-btn{padding:0 .55rem!important}.navbar{background:var(--bg);border-bottom:1px solid var(--border);z-index:100;justify-content:space-between;align-items:center;height:56px;padding:0 1.5rem;display:flex;position:sticky;top:0}.navbar-brand{color:var(--text);align-items:baseline;gap:.45rem;text-decoration:none;display:flex}.navbar-brand strong{letter-spacing:-.02em;font-size:1.05rem;font-weight:700}.navbar-tagline{color:var(--teal);letter-spacing:.02em;font-size:.7rem;font-weight:600;display:none}@media (width>=480px){.navbar-tagline{display:inline}}.navbar-right{align-items:center;gap:.5rem;display:flex}.navbar-email{color:var(--text-3);font-size:.8rem;display:none}@media (width>=640px){.navbar-email{display:inline}}.landing{padding:5rem 0 4rem;animation:.4s both fadeUp}.landing-hero{max-width:580px;margin-bottom:4rem}.landing-label{color:var(--teal);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem;font-size:.72rem;font-weight:700}.landing-title{letter-spacing:-.035em;margin-bottom:.5rem;font-size:clamp(2.8rem,10vw,5rem);font-weight:700;line-height:1}.landing-tagline{color:var(--teal);margin-bottom:1.25rem;font-size:1.15rem;font-weight:500}.landing-desc{color:var(--text-2);max-width:470px;margin-bottom:2.25rem;font-size:1rem;line-height:1.75}.landing-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.landing-cta{padding:.65rem 1.4rem;font-size:.95rem}.landing-features{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2.5rem;display:grid}.landing-feature{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-subtle);padding:1.4rem;transition:border-color .18s}.landing-feature:hover{border-color:var(--teal)}.feat-icon{margin-bottom:.75rem;font-size:1.5rem;display:block}.landing-feature h3{margin-bottom:.4rem;font-size:.95rem}.landing-feature p{color:var(--text-2);font-size:.85rem;line-height:1.6}.landing-demo-box{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-subtle);flex-direction:column;gap:.5rem;padding:1.1rem 1.4rem;display:inline-flex}.landing-demo-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700}.landing-demo-url{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.landing-url-text{color:var(--text);font-size:.9rem}.landing-url-text .hl{color:var(--teal);font-weight:600}@media (width<=600px){.landing{padding:3rem 0 2.5rem}.landing-features{grid-template-columns:1fr 1fr}.landing-demo-box{width:100%}}@media (width<=400px){.landing-features{grid-template-columns:1fr}}.auth-page{justify-content:center;align-items:center;min-height:calc(100vh - 54px);padding:2rem 1rem;display:flex}.auth-box{width:100%;max-width:380px}.auth-box h1{margin-bottom:.3rem}.auth-sub{color:var(--text-2);margin-bottom:1.75rem;font-size:.875rem}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-submit{justify-content:center;width:100%;padding:.65rem}.auth-footer{text-align:center;color:var(--text-2);margin-top:1.25rem;font-size:.85rem}.auth-footer a{color:var(--text);font-weight:600;text-decoration:underline}.dashboard{flex-direction:column;gap:2rem;padding:2.5rem 1.25rem 4rem;animation:.35s both fadeUp;display:flex}.dash-header{flex-direction:column;gap:.35rem;display:flex}.dash-header h1{font-size:1.8rem}.dash-sub{color:var(--text-2);font-size:.875rem}.create-form{border-top:3px solid var(--teal)}.create-form h2{color:var(--teal);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.85rem;font-size:.72rem;font-weight:800}.create-row{gap:.6rem;display:flex}.create-row .form-input{flex:1}.proj-section-row{align-items:center;display:flex}.proj-section-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);font-size:.72rem;font-weight:800}.dash-empty{color:var(--text-3);font-size:.9rem}.proj-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;display:grid}.proj-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;transition:border-color .18s,box-shadow .18s,transform .12s;display:flex;overflow:hidden}.proj-card:hover{border-color:var(--teal);box-shadow:0 4px 18px color-mix(in srgb, var(--teal) 15%, transparent);transform:translateY(-2px)}.proj-card-strip{background:var(--teal);flex-shrink:0;height:3px}.proj-card-body{cursor:pointer;flex-direction:column;flex:1;gap:.45rem;padding:1.1rem 1.1rem .8rem;display:flex}.proj-card-icon{font-size:1.6rem;line-height:1}.proj-name{font-size:.95rem;font-weight:700;line-height:1.3}.proj-slug{color:var(--teal);background:var(--teal-light);letter-spacing:.02em;border-radius:4px;padding:.1rem .45rem;font-size:.7rem;font-weight:700;display:inline-block}.proj-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:.6rem .9rem;display:flex}.proj-confirm{flex:1;align-items:center;gap:.4rem;display:flex}.proj-confirm-msg{color:var(--danger);flex:1;font-size:.78rem;font-weight:500}.proj-confirm-actions{gap:.35rem;display:flex}.bin-btn{border-radius:var(--radius);cursor:pointer;width:28px;height:28px;color:var(--text-3);background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.proj-open-btn{color:var(--teal);cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem;font-weight:600}.proj-open-btn:hover{text-decoration:underline}.doc-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);overflow:hidden}.doc-panel-toggle{cursor:pointer;width:100%;color:var(--text);text-align:left;background:0 0;border:none;align-items:center;gap:.65rem;padding:1rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:background .15s;display:flex}.doc-panel-toggle:hover{background:var(--bg-subtle)}.doc-panel-icon{font-size:1.1rem}.doc-panel-title{flex:1}.doc-chevron{color:var(--text-3);flex-shrink:0;transition:transform .22s}.doc-chevron.open{transform:rotate(180deg)}.doc-panel-body{border-top:1px solid var(--border);flex-direction:column;gap:1.25rem;padding:0 1.25rem 1.5rem;display:flex}.doc-intro{color:var(--text-2);padding-top:1rem;font-size:.875rem;line-height:1.65}.doc-table{border:1px solid var(--border);border-radius:var(--radius);font-size:.82rem;overflow:hidden}.doc-table-head{background:var(--bg-subtle);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);border-bottom:1px solid var(--border);grid-template-columns:70px 1fr 1fr;gap:.75rem;padding:.5rem .85rem;font-size:.7rem;font-weight:700;display:grid}.doc-table-row{border-bottom:1px solid var(--border);grid-template-columns:70px 1fr 1fr;align-items:center;gap:.75rem;padding:.6rem .85rem;display:grid}.doc-table-row:last-child{border-bottom:none}.doc-path{color:var(--text);font-size:.78rem}.doc-row-desc{color:var(--text-2);font-size:.8rem}.doc-notes{flex-direction:column;gap:1rem;display:flex}.doc-note{flex-direction:column;gap:.45rem;display:flex}.doc-note-label{text-transform:uppercase;letter-spacing:.1em;color:var(--teal);font-size:.7rem;font-weight:800}.doc-note p{color:var(--text-2);font-size:.85rem;line-height:1.65}.doc-code{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);white-space:pre-wrap;margin:0;padding:.85rem 1rem;font-family:JetBrains Mono,monospace;font-size:.78rem;line-height:1.7}@media (width<=540px){.proj-list{grid-template-columns:1fr 1fr}.create-row{flex-direction:column}.doc-table-head,.doc-table-row{grid-template-columns:60px 1fr}.doc-table-head span:last-child,.doc-table-row .doc-row-desc{display:none}}@media (width<=360px){.proj-list{grid-template-columns:1fr}}.proj-view{flex-direction:column;gap:2rem;padding:2.5rem 1.25rem 4rem;animation:.35s both fadeUp;display:flex}.proj-view-header{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.proj-view-title-group{flex-direction:column;gap:.3rem;display:flex}.proj-view-title-group h1{line-height:1.1}.proj-view-slug{color:var(--teal);background:var(--teal-light);letter-spacing:.02em;border-radius:5px;padding:.18rem .6rem;font-size:.72rem;font-weight:700;display:inline-block}.gen-form{border-top:3px solid var(--teal);flex-direction:column;gap:.9rem;display:flex}.gen-form-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.gen-form-label{color:var(--teal);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.prompt-hint-btn{color:var(--text-3);border:1px dashed var(--border);cursor:pointer;opacity:1;letter-spacing:.02em;background:0 0;border-radius:100px;align-items:center;gap:.35rem;padding:.2rem .65rem;font-family:inherit;font-size:.7rem;font-weight:600;transition:opacity .3s,color .18s,border-color .18s;display:flex}.prompt-hint-btn:hover{color:var(--teal);border-color:var(--teal)}.prompt-hint-btn.hidden{opacity:0;pointer-events:none}.gen-form-footer{justify-content:flex-end;display:flex}.prompt-input-wrap{width:100%;position:relative}.prompt-textarea{box-sizing:border-box;width:100%}.sidebar-pull-tab{z-index:198;background:var(--bg-card);border:1px solid var(--border);cursor:pointer;color:var(--text-2);border-right:none;border-radius:10px 0 0 10px;flex-direction:column;align-items:center;gap:.45rem;padding:.85rem .45rem;font-family:inherit;transition:background .18s,border-color .18s,box-shadow .18s;display:flex;position:fixed;top:50%;right:0;transform:translateY(-50%);box-shadow:-3px 0 18px #0000002e}.sidebar-pull-tab:hover,.sidebar-pull-tab.tab-open{background:var(--teal-light);border-color:var(--teal);color:var(--teal);box-shadow:-4px 0 24px #0d94882e}.pull-tab-arrow{font-size:1.25rem;font-weight:300;line-height:1;transition:transform .25s}.sidebar-pull-tab.tab-open .pull-tab-arrow{transform:scaleX(-1)}.pull-tab-label{text-transform:uppercase;letter-spacing:.12em;writing-mode:vertical-rl;font-size:.6rem;font-weight:800;transform:rotate(180deg)}.sidebar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:199;opacity:0;pointer-events:none;background:#0006;transition:opacity .28s;position:fixed;inset:0}.sidebar-overlay.visible{opacity:1;pointer-events:auto}.help-sidebar{background:var(--bg-card);border-left:1px solid var(--border);z-index:200;flex-direction:column;width:min(420px,92vw);height:100dvh;transition:transform .32s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-8px 0 40px #00000040}.help-sidebar.open{transform:translate(0)}.sidebar-header{border-bottom:1px solid var(--border);background:var(--bg-card);z-index:1;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem;display:flex;position:sticky;top:0}.sidebar-header-title{letter-spacing:.04em;color:var(--text);font-size:.85rem;font-weight:800}.sidebar-close-btn{background:var(--bg-subtle);cursor:pointer;width:28px;height:28px;color:var(--text-2);border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.sidebar-close-btn:hover{background:var(--badge-delete-bg);color:var(--danger)}.sidebar-section{flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.sidebar-section-title{text-transform:uppercase;letter-spacing:.14em;color:var(--teal);font-size:.7rem;font-weight:800}.sidebar-section-intro{color:var(--text-2);font-size:.8rem;line-height:1.55}.sidebar-divider{background:var(--border);height:1px;margin:0 1.25rem}.prompt-tips-list{flex-direction:column;gap:.55rem;display:flex}.prompt-tip{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);align-items:flex-start;gap:.65rem;padding:.65rem .85rem;display:flex}.tip-icon{flex-shrink:0;margin-top:.1rem;font-size:1rem}.tip-label{color:var(--text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem;font-size:.72rem;font-weight:700;display:block}.tip-example{color:var(--teal);margin-bottom:.2rem;font-family:JetBrains Mono,monospace;font-size:.75rem;display:block}.tip-note{color:var(--text-3);font-size:.72rem;line-height:1.4;display:block}.sidebar-endpoint-table{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.sidebar-ep-row{border-bottom:1px solid var(--border);grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:start;gap:.2rem .65rem;padding:.65rem .85rem;display:grid}.sidebar-ep-row:last-child{border-bottom:none}.sidebar-badge{flex-shrink:0;grid-row:1/3;align-self:center}.sidebar-ep-path{word-break:break-all;color:var(--text);font-size:.72rem;line-height:1.4}.sidebar-ep-desc{color:var(--text-3);font-size:.7rem}.sidebar-notes{flex-direction:column;gap:.6rem;display:flex}.sidebar-note{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .9rem}.sidebar-note-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.35rem;font-size:.65rem;font-weight:800;display:block}.sidebar-note p{color:var(--text-2);font-size:.78rem;line-height:1.55}.sidebar-code{color:var(--text-2);white-space:pre-wrap;background:0 0;margin:0;font-family:JetBrains Mono,monospace;font-size:.72rem;line-height:1.65}.auth-api-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow);margin-bottom:1.5rem;animation:.5s cubic-bezier(.2,.9,.3,1.3) both hammerThrust;overflow:hidden}.auth-api-panel-header{border-bottom:1px solid var(--border);background:linear-gradient(135deg, var(--teal-light) 0%, transparent 100%);align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.auth-api-panel-icon{flex-shrink:0;font-size:1.5rem}.auth-api-panel-title{color:var(--teal);margin-bottom:.1rem;font-size:1.1rem;font-weight:700}.auth-api-panel-sub{color:var(--text-2);font-size:.85rem}.auth-api-endpoints{flex-direction:column;display:flex}.auth-api-row{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.auth-api-row:last-child{border-bottom:none}.auth-api-row-left{flex:1 1 0;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.auth-api-row-left>.badge{flex-shrink:0;margin-top:.15rem}.auth-api-row-info{flex:1;min-width:0}.auth-api-path{word-break:break-all;margin-bottom:.2rem;font-size:.82rem;line-height:1.45;display:block}.auth-api-desc-wrap{flex-direction:column;gap:.3rem;display:flex}.auth-api-desc{color:var(--text-3);font-size:.75rem;line-height:1.4}.auth-copy-btn{flex-shrink:0;align-self:flex-start}.resources-section{flex-direction:column;gap:.9rem;display:flex}.resources-header-row{justify-content:space-between;align-items:center;display:flex}.section-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);font-size:.72rem;font-weight:800}.empty-state{color:var(--text-3);font-size:.9rem}.empty-state-box{border:1px dashed var(--border);border-radius:var(--radius-lg);text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1.5rem;display:flex}.empty-icon{font-size:2rem}.empty-title{font-size:1rem;font-weight:700}.empty-desc{color:var(--text-2);max-width:320px;font-size:.875rem;line-height:1.6}.resources-list{flex-direction:column;gap:1rem;display:flex}.resource-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow);transition:border-color .2s,box-shadow .2s,transform .15s;overflow:hidden}.resource-card:hover{border-color:color-mix(in srgb, var(--card-from,var(--teal)) 40%, var(--border));box-shadow:0 4px 20px color-mix(in srgb, var(--card-from,var(--teal)) 12%, transparent);transform:translateY(-1px)}.resource-topbar{background:linear-gradient(90deg, var(--card-from,#0d9488), var(--card-to,#6366f1));height:3px}.resource-card-inner{flex-direction:column;gap:.85rem;padding:1.1rem 1.25rem;display:flex}.resource-meta-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.resource-identity{align-items:flex-start;gap:.85rem;min-width:0;display:flex}.resource-icon{border-radius:var(--radius);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;font-weight:900;display:flex}.resource-name{margin-bottom:.35rem;font-size:1rem;font-weight:700}.endpoint-chips{flex-wrap:wrap;gap:.3rem;display:flex}.chip{letter-spacing:.04em;opacity:.85;border-radius:3px;padding:.1rem .35rem;font-family:JetBrains Mono,monospace;font-size:.6rem;font-weight:700}.chip-more{color:var(--text-3);padding:.1rem .3rem;font-size:.65rem;font-weight:600}.resource-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.icon-btn{border-radius:var(--radius);cursor:pointer;width:30px;height:30px;color:var(--text-3);background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.bin-btn:hover{background:var(--badge-delete-bg);color:var(--danger)}.chevron-btn:hover{background:var(--bg-subtle);color:var(--text)}.auth-toggle-btn{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text-3);cursor:pointer;white-space:nowrap;letter-spacing:.03em;border-radius:100px;align-items:center;gap:.3rem;padding:.25rem .6rem;font-family:inherit;font-size:.7rem;font-weight:700;transition:background .18s,color .18s,border-color .18s;display:flex}.auth-toggle-btn:hover:not(:disabled){border-color:var(--teal);color:var(--teal)}.auth-toggle-btn.auth-on{background:var(--teal-light);border-color:var(--teal);color:var(--teal)}.auth-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.resource-url-bar{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:.75rem;padding:.55rem .75rem;display:flex}.url-bar-text{color:var(--teal);word-break:break-all;flex:1;font-size:.82rem;line-height:1.4}.url-copy-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text-2);cursor:pointer;flex-shrink:0;align-items:center;gap:.35rem;padding:.3rem .65rem;font-family:inherit;font-size:.75rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:flex}.url-copy-btn:hover{border-color:var(--teal);color:var(--teal)}.url-copy-btn.copied{background:var(--teal-light);color:var(--teal);border-color:var(--teal)}.confirm-bar{background:var(--badge-delete-bg);border-top:1px solid color-mix(in srgb, var(--danger) 25%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1.25rem;display:flex}.confirm-bar-msg{color:var(--danger);font-size:.82rem;font-weight:500}.confirm-bar-actions{gap:.4rem;display:flex}.confirm-cancel{border:1px solid var(--border);background:var(--bg-card);color:var(--text)}.confirm-cancel:hover{border-color:var(--text)}.confirm-delete{background:var(--danger);color:#fff;border:none}.confirm-delete:hover:not(:disabled){opacity:.85}.confirm-delete:disabled{opacity:.45;cursor:not-allowed}.resource-endpoints{border-top:1px solid var(--border)}.endpoint-row{border-bottom:1px solid var(--border);flex-direction:column;gap:.4rem;padding:.85rem 1.25rem;display:flex}.endpoint-row:last-child{border-bottom:none}.endpoint-top{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.endpoint-path{font-size:.85rem}.endpoint-desc{color:var(--text-2);font-size:.8rem;line-height:1.55}.endpoint-fields{flex-wrap:wrap;gap:.3rem;display:flex}.field-pill{border:1px solid var(--border);color:var(--text-2);background:var(--bg-subtle);border-radius:100px;padding:.1rem .5rem;font-size:.71rem}.field-type{color:var(--teal);font-weight:600}.endpoint-required-list{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.4rem;display:flex}.required-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.required-pill{border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);background:var(--badge-delete-bg);color:var(--danger);letter-spacing:.03em;border-radius:100px;padding:.15rem .5rem;font-size:.65rem;font-weight:600}.jwt-highlight{color:var(--teal);background:var(--teal-light);border-radius:4px;margin:0 .15rem;padding:.05rem .35rem;font-size:.9em;font-weight:700;display:inline-block}@keyframes hammerThrust{0%{opacity:0;transform:translateY(-20px)scale(.97)}60%{opacity:1;transform:translateY(8px)scale(1.01)}80%{transform:translateY(-2px)scale(.995)}to{transform:translateY(0)scale(1)}}@media (width<=600px){.proj-view{gap:1.25rem;padding:1.5rem .75rem 3rem}.url-bar-text{word-break:break-all;font-size:.73rem}.gen-form-top{flex-direction:column;align-items:flex-start}.auth-api-row{flex-direction:column;gap:.65rem}.auth-copy-btn{align-self:flex-start}.auth-api-path{word-break:break-all;font-size:.72rem}.auth-api-panel-sub{font-size:.78rem}.resource-meta-row{flex-wrap:wrap;gap:.65rem}.resource-actions{gap:.2rem}.auth-toggle-btn{padding:.2rem .45rem;font-size:.65rem}.resource-url-bar{flex-wrap:wrap;gap:.5rem}.url-copy-btn{padding:.25rem .55rem;font-size:.7rem}.sidebar-pull-tab{gap:.3rem;padding:.55rem .38rem}.pull-tab-label{letter-spacing:.08em;font-size:.5rem}.pull-tab-arrow{font-size:1rem}}@media (width<=400px){.pull-tab-label{display:none}.sidebar-pull-tab{padding:.5rem .42rem}}
