@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&display=swap";html,body,#root{min-height:100%}:root{--ink:#172a35;--muted:#70808a;--line:#dce4e5;--paper:#f7faf9;--teal:#0d7c76;--teal-dark:#076661;--pale:#e8f4f1;--orange:#e48647}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);background:#f1f6f4;flex-direction:column;width:250px;padding:30px 18px 22px;display:flex}.brand{align-items:center;gap:11px;padding:0 11px 50px;display:flex}.brand-mark{background:var(--teal);color:#fff;border-radius:9px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:grid}.brand strong{letter-spacing:-.2px;font-size:14px;display:block}.brand span{color:var(--muted);margin-top:3px;font-size:11px;display:block}.nav-label,.section-kicker,.eyebrow{color:#809198;letter-spacing:1.2px;font-family:DM Mono,monospace;font-size:10px}.nav-label{margin:0 0 12px;padding:0 12px}.nav-item{color:#65757b;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;width:100%;height:43px;margin-bottom:3px;padding:0 12px;font-size:13px;display:flex}.nav-item:hover,.nav-item.active{color:var(--teal-dark);background:#dcefeb;font-weight:600}.nav-icon{text-align:center;width:18px;font-size:18px}.nav-dot{background:var(--orange);border-radius:50%;width:6px;height:6px;margin-left:auto}.sidebar-footer{border-top:1px solid var(--line);color:#50656b;margin-top:auto;padding:20px 12px 0;font-size:12px}.status-dot{background:#49aa77;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.muted{color:#93a0a3;margin-top:8px;font-size:10px}.main-content{flex:1;max-width:1260px;padding:38px 66px 70px}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:27px;display:flex}.eyebrow{margin:0 0 10px}.topbar h1{letter-spacing:-.7px;margin:0;font-size:27px}.top-actions{align-items:center;gap:16px;display:flex}.icon-button,.close-button{border:1px solid var(--line);color:#718087;background:#fff;border-radius:50%;width:29px;height:29px}.avatar{width:31px;height:31px;color:var(--teal-dark);background:#d9ece7;border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid}.intro-row{justify-content:space-between;align-items:center;padding:33px 0 28px;display:flex}.intro-row h2{letter-spacing:-.4px;margin:0 0 7px;font-size:21px}.intro-row p,.card-copy{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.privacy-badge{background:#e5f3ee;border-radius:7px;align-items:center;gap:10px;padding:11px 14px;display:flex}.privacy-badge>span{color:#fff;background:#4ca97a;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.privacy-badge strong,.privacy-badge small{display:block}.privacy-badge strong{font-size:11px}.privacy-badge small{color:#6e8b86;margin-top:2px;font-size:10px}.notice{color:#86633f;background:#fff8ed;border:1px solid #f1d8ba;border-radius:6px;align-items:center;gap:10px;margin-bottom:17px;padding:11px 14px;font-size:12px;display:flex}.notice>span{border:1px solid #d9a36e;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;display:grid}.notice button{color:inherit;background:0 0;border:0;margin-left:auto}.operation-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:25px 27px;box-shadow:0 1px 2px #193b4210}.card-heading{justify-content:space-between;align-items:flex-start;display:flex}.section-kicker{margin:0 0 8px}.card h3,.section-title h3{letter-spacing:-.2px;margin:0;font-size:16px}.step-badge{width:25px;height:25px;color:var(--teal);background:#e8f3f0;border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid}.card-copy{min-height:42px;margin-top:12px}.card code{color:var(--teal);background:#eff7f5;padding:2px 4px;font-size:11px}.dropzone{height:137px;color:var(--teal);background:#fbfefd;border:1px dashed #a8c4c1;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;margin-top:20px;display:flex;position:relative}.dropzone input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-icon{background:#e4f3ef;border-radius:50%;place-items:center;width:29px;height:29px;margin-bottom:9px;font-size:19px;display:grid}.dropzone strong{font-size:12px}.dropzone small{color:#94a5a7;margin-top:4px;font-size:10px}.selected-file{background:#f1f8f6;border-radius:5px;align-items:center;gap:9px;margin-top:14px;padding:9px;display:flex}.file-icon{color:var(--teal)}.selected-file strong,.selected-file small{font-size:11px;display:block}.selected-file small{color:var(--muted);margin-top:2px;font-size:10px}.check{color:#40a36d;margin-left:auto}.text-button{color:var(--teal);background:0 0;border:0;padding:2px;font-size:11px}.profile-icon{color:var(--teal);background:#edf7f4;border-radius:6px;place-items:center;width:33px;height:33px;display:grid}.profile-summary{border-top:1px solid #edf1f0;border-bottom:1px solid #edf1f0;align-items:center;gap:11px;margin-top:21px;padding:16px 0;display:flex}.profile-summary strong,.profile-summary small{display:block}.profile-summary strong{font-size:12px}.profile-summary small{color:var(--muted);margin-top:4px;font-size:10px}.saved-at{color:#91a0a2;margin:10px 0 0;font-size:10px}.secondary-button,.primary-button{border-radius:5px;padding:10px 14px;font-size:11px;font-weight:600}.secondary-button{color:var(--teal);background:#fff;border:1px solid #b8d4cf}.profile-card .secondary-button{justify-content:space-between;width:100%;margin-top:18px;display:flex}.primary-button{border:1px solid var(--teal);color:#fff;background:var(--teal)}.primary-button:disabled{opacity:.45;cursor:not-allowed}.refresh-card{align-items:center;gap:17px;margin-top:17px;padding:21px 27px;display:flex}.refresh-icon{width:36px;height:36px;color:var(--orange);background:#fff3e6;border-radius:50%;place-items:center;font-size:21px;display:grid}.refresh-copy{flex:1}.refresh-copy h3{font-size:14px}.refresh-copy p:last-child{color:var(--muted);margin:5px 0 0;font-size:11px}.activity-section{margin-top:39px}.section-title{justify-content:space-between;align-items:end;margin-bottom:16px;display:flex}.empty-activity{border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;flex-direction:column;align-items:center;padding:30px;display:flex}.empty-icon{color:#afc5c1;margin-bottom:9px;font-size:25px}.empty-activity strong{font-size:12px}.empty-activity span{color:#9aa8aa;margin-top:4px;font-size:11px}.placeholder{text-align:center;max-width:650px;margin:80px auto;padding:60px 50px}.placeholder-icon{color:var(--teal);margin-bottom:22px;font-size:35px}.placeholder h2{margin:0 0 10px;font-size:23px}.placeholder p:not(.section-kicker){color:var(--muted);margin-bottom:25px;font-size:13px;line-height:1.6}.modal-backdrop{z-index:5;background:#17333a55;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:10px;width:min(560px,100%);padding:27px;box-shadow:0 20px 60px #17333a33}.modal-header{justify-content:space-between;display:flex}.modal h2{margin:0;font-size:21px}.close-button{border:0;font-size:20px}.modal-copy{color:var(--muted);margin:14px 0 22px;font-size:12px;line-height:1.6}.schema-preview{border:1px solid var(--line);border-radius:6px;overflow:hidden}.schema-row{background:#f3f8f6;justify-content:space-between;align-items:center;padding:13px 15px;font-size:12px;display:flex}.schema-row span{color:#8a9b9d;font-size:10px}.field-list{gap:10px;padding:9px 15px 13px;font-size:11px;display:grid}.field-list label{color:#54696d}.field-list em{color:#c47742;margin-left:6px;font-size:10px;font-style:normal}.modal-footer{justify-content:flex-end;gap:9px;margin-top:23px;display:flex}@media (width<=800px){.sidebar{width:68px;padding:22px 8px}.brand{padding:0 8px 35px}.brand>div:last-child,.nav-label,.nav-item span:not(.nav-icon):not(.nav-dot),.sidebar-footer{display:none}.nav-item{justify-content:center;padding:0}.main-content{padding:27px 22px 50px}.intro-row{flex-direction:column;align-items:flex-start;gap:19px}.operation-grid{grid-template-columns:1fr}.refresh-card{flex-wrap:wrap;align-items:flex-start}.refresh-card .primary-button{margin-left:53px}.topbar h1{font-size:23px}}
