@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap";
:root{--color-primary:#5046e6;--color-primary-600:#3d36b8;--neutral-900:#0b0f14;--neutral-700:#3a3f45;--neutral-100:#f5f7f9;--white:#fff;--success:#00b388;--warning:#f5a524;--danger:#e23d28;--radius:16px;--radius-sm:10px;--shadow-sm:0 2px 10px #0b0f140f;--shadow-md:0 2px 10px #5046e640}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;color:var(--neutral-900);background:linear-gradient(#fff 0%,#f5f7f9 100%);margin:0;padding:0;font-family:Inter,SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif}h1,h2,h3{letter-spacing:-.01em;margin:0 0 .75rem;font-family:Plus Jakarta Sans,Inter,system-ui,-apple-system,Segoe UI,sans-serif}h1{font-size:clamp(2rem,3.2vw,3rem);font-weight:800}h2{font-size:clamp(1.4rem,2vw,2rem);font-weight:700}p{margin:0 0 1rem;line-height:1.55}a{color:var(--color-primary);text-decoration:none}button{font-family:inherit}.app-container{flex-direction:column;min-height:100vh;display:flex}.surface-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.5rem}.surface-card.preview{padding:0;overflow:hidden}.widget-preview-iframe{border:none;border-radius:0;width:100%;height:600px;margin:0;padding:0;display:block}.text-muted{color:var(--neutral-700)}.text-primary{color:var(--color-primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.small{font-size:.85rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.form-grid{gap:1rem;display:grid}.form-field{flex-direction:column;gap:.5rem;display:flex}.form-field-heading{color:var(--neutral-900);margin:0;font-size:1.05rem;line-height:1.3}.form-field-heading label{font:inherit;color:inherit;margin:0;display:block}.form-divider{border-top:1px solid #0b0f141f;grid-column:span 2;margin:0}.form-block+.form-block{border-top:1px solid #0b0f1414;margin-top:1.5rem;padding-top:1.5rem}.form-actions{flex-wrap:wrap;gap:.75rem;display:flex}.onboarding-steps{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.onboarding-step{color:var(--neutral-700);background:#0b0f140d;border-radius:999px;padding:.2rem .7rem;font-size:.85rem}.onboarding-step.active{color:var(--color-primary);background:#5046e626}.onboarding-step.completed{color:var(--color-primary);background:#5046e614}.plan-list{gap:.75rem;display:grid}.plan-card{border-radius:var(--radius);background:var(--white);text-align:left;cursor:pointer;border:1px solid #0b0f1414;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:.9rem 1rem;transition:border .12s,box-shadow .12s;display:flex}.plan-card h3{margin:0}.plan-card.active{border-color:#5046e680;box-shadow:0 8px 25px #5046e626}.tooltip-field{flex-direction:column;gap:.75rem;display:flex}.tooltip-toggle-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.tooltip-description{margin:0}.tooltip-timing{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.widget-layout,.widget-main,.widget-sidebar{flex-direction:column;gap:1.5rem;display:flex}@media (min-width:1080px){.widget-layout{flex-direction:row;align-items:flex-start}.widget-main{flex:1.6}.widget-sidebar{flex:1;position:sticky;top:4rem}}.color-section,.color-section-fields,.recommendations-section{flex-direction:column;gap:.75rem;display:flex}.recommendations-fields{gap:.75rem;display:grid}.recommendation-field{flex-direction:column;gap:.35rem;display:flex}.recommendation-field label{color:var(--neutral-900);font-weight:500}.recommendation-field-footer p{margin:0}.field-length-info{margin-top:.25rem}.field-length-info p{margin:0}.toggle-switch{align-items:center;width:44px;height:24px;display:inline-flex;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch span{background:#0b0f1433;border-radius:999px;transition:background .12s;position:absolute;inset:0}.toggle-switch span:after{content:"";background:var(--white);border-radius:50%;width:18px;height:18px;transition:transform .12s;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #00000026}.toggle-switch input:checked+span{background:var(--color-primary)}.toggle-switch input:checked+span:after{transform:translate(20px)}.fixed-textarea{resize:none}.form-footer{flex-direction:column;gap:.75rem;padding-top:0;display:flex}.form-status{flex-direction:column;gap:.35rem;display:flex}.color-field{flex-direction:column;gap:.35rem;display:flex;position:relative}.color-field-preview{cursor:pointer;align-items:center;gap:.75rem;display:flex}.color-field-preview p{margin:0;font-weight:500}.color-input{appearance:none;cursor:pointer;background:0 0;border:1px solid #0b0f1426;border-radius:6px;width:32px;height:32px;padding:0;box-shadow:inset 0 0 0 1px #fff6}.color-input::-webkit-color-swatch-wrapper{border-radius:6px;padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:6px}.color-input::-moz-color-swatch{border:none;border-radius:6px}.portal-shell{flex-direction:column;gap:1.5rem;min-height:100vh;padding:0 2rem 4rem;display:flex}.portal-topbar{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:60;background:#ffffffb3;border-bottom:1px solid #0b0f140f;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;width:100%;padding:.5rem 1.5rem;display:grid;position:sticky;top:0;left:0;right:0}.portal-topbar-left{align-items:center;gap:.5rem;padding-left:3.5rem;display:flex}.portal-logo-mark{width:56px;height:32px;display:inline-flex}.portal-logo-mark svg{width:100%;height:100%}.portal-logo-text{-webkit-font-smoothing:antialiased;font-size:1.1rem;font-weight:700}.portal-topbar-title{text-align:center;color:var(--neutral-900);-webkit-font-smoothing:antialiased;font-size:1.1rem;font-weight:600}.portal-topbar-actions{align-items:center;gap:.75rem;display:flex}.icon-button{background:var(--white);cursor:pointer;border:1px solid #0b0f141a;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.profile-menu{position:relative}.profile-menu-trigger{cursor:pointer;background:0 0;border:none;padding:0}.profile-menu-content{min-width:220px;box-shadow:var(--shadow-sm);z-index:20;flex-direction:column;gap:.5rem;padding:1rem;display:flex;position:absolute;top:calc(100% + 8px);right:0}.profile-name{margin:0;font-weight:600}.avatar{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-primary);background:#5046e626;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.portal-body{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:1.5rem;padding:0 1rem;display:grid}.portal-sidebar{flex-direction:column;gap:1.5rem;display:flex;position:sticky;top:4rem}.portal-nav{flex-direction:column;gap:.35rem;display:flex}.portal-nav-separator{border-top:1px solid #0b0f1414;margin:.75rem 0}.portal-nav-link{border-radius:var(--radius-sm);color:var(--neutral-900);border:1px solid #0000;align-items:center;gap:.75rem;padding:.4rem .5rem;font-size:.95rem;font-weight:500;text-decoration:none;display:inline-flex}.portal-nav-icon{width:24px;height:24px;display:inline-flex}.portal-nav-icon svg{width:100%;height:100%}.portal-nav-label{flex:1}.portal-nav-link.active{color:var(--color-primary);background:#5046e61f;border-color:#5046e64d}.portal-nav-link.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.portal-content{flex-direction:column;gap:1rem;min-height:60vh;display:flex}.portal-breadcrumbs{color:var(--neutral-700);font-size:.9rem}.portal-content-inner{flex-direction:column;gap:1.5rem;display:flex}.portal-mobile-nav{display:none}.portal-mobile-nav-item{color:var(--neutral-700);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;font-size:.85rem;text-decoration:none;display:flex}.portal-mobile-nav-item.active{color:var(--color-primary)}.portal-mobile-nav-item.disabled{opacity:.4}.portal-topbar-switcher select{width:100%}.site-switcher{border-radius:var(--radius-sm);background:var(--color-primary);width:100%;box-shadow:var(--shadow-md);color:var(--white);align-items:stretch;gap:0;display:flex;position:relative;overflow:visible}.site-switcher button{cursor:pointer;color:inherit;font:inherit;background:0 0;border:none}.site-switcher-home{background:#ffffff26;justify-content:center;align-items:center;padding:.5rem .65rem;transition:background .12s;display:inline-flex}.site-switcher-home svg{width:20px;height:20px;color:var(--white)}.site-switcher-home:hover{background:#ffffff40}.site-switcher-divider{background:#fff6;align-self:stretch;width:1.5px}.site-switcher-trigger{flex:1;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .85rem;transition:background .12s;display:flex}.site-switcher-trigger:hover{background:#ffffff1f}.site-switcher-details{text-align:left;flex-direction:column;line-height:1.1;display:flex;overflow:hidden}.site-switcher-label{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:500;line-height:1.2;overflow:hidden}.site-switcher-domain{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.site-switcher-domain-placeholder{visibility:hidden}.site-switcher-chevron{justify-content:center;align-items:center;width:20px;height:20px;transition:transform .12s;display:inline-flex}.site-switcher-chevron.open{transform:rotate(180deg)}.site-switcher-dropdown{background:var(--white);border-radius:var(--radius);color:var(--neutral-900);z-index:30;padding:.75rem;position:absolute;top:calc(100% + .5rem);left:0;right:0;box-shadow:0 18px 40px #0b0f142e}.site-switcher-dropdown ul{flex-direction:column;gap:.5rem;max-height:260px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.site-switcher-option{border-radius:var(--radius-sm);background:var(--white);width:100%;color:inherit;border:1px solid #0b0f1414;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.site-switcher-option-name{font-size:.95rem;font-weight:600;line-height:1.2;display:block}.site-switcher-option:hover{background:#5046e60d;border-color:#5046e64d}.site-switcher-option-domain{color:var(--neutral-700);font-size:.85rem}.site-switcher-option-check{color:var(--color-primary);font-weight:700}.site-switcher-option.active{background:#5046e614;border-color:#5046e680}.site-switcher-option.add-new{color:var(--color-primary);background:#5046e60f;border-style:dashed;justify-content:center}.site-switcher-dropdown-footer{border-top:1px solid #0b0f1414;margin-top:.75rem;padding-top:.75rem}.site-switcher-dropdown-footer button{border-radius:var(--radius-sm);width:100%;color:var(--color-primary);background:#5046e614;border:1px solid #5046e633;justify-content:center;align-items:center;padding:.5rem .75rem;display:inline-flex}.portal-card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;display:grid}.portal-section{flex-direction:column;gap:1.5rem;display:flex}.site-card{cursor:pointer;flex-direction:column;gap:.85rem;transition:transform .12s,box-shadow .12s;display:flex}.site-card:hover{transform:translateY(-2px);box-shadow:0 8px 26px #0b0f1414}.site-card header{flex-direction:column;gap:.25rem;display:flex}.status-pill{background:#0b0f140d;border-radius:999px;align-items:center;gap:.35rem;padding:.15rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.status-pill.success{color:var(--success);background:#00b38826}.status-pill.warning{color:var(--warning);background:#f5a5242e}.status-pill.danger{color:var(--danger);background:#e23d2826}.site-card-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.metric-card{border-radius:var(--radius-sm);background:var(--neutral-100);border:1px solid #0b0f140f;padding:.75rem}.metric-card strong{font-size:1.25rem;display:block}.site-card-actions{flex-wrap:wrap;gap:.75rem;display:flex}.site-card.site-card-cta{cursor:default;background:#5046e614;border:1px dashed #5046e64d}.portal-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;display:grid}.portal-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.portal-list-item{border-bottom:1px solid #0b0f1414;justify-content:space-between;gap:1rem;padding-bottom:.5rem;display:flex}.portal-steps{counter-reset:step;flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.portal-steps li{padding-left:2.5rem;position:relative}.portal-steps li:before{counter-increment:step;content:counter(step);width:1.8rem;height:1.8rem;color:var(--color-primary);background:#5046e61f;border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;top:0;left:0}.portal-fallback{max-width:640px;margin:0 auto;padding:4rem 1.5rem}@media (max-width:1024px){.portal-body{grid-template-columns:1fr}.portal-sidebar{display:none}}@media (max-width:768px){.portal-shell{padding:6rem 1rem 5.5rem}.portal-topbar{gap:.5rem;width:calc(100% - 1.5rem)}.portal-topbar-title{text-align:right}.portal-mobile-nav{background:var(--white);z-index:50;border-top:1px solid #0b0f141a;padding:.35rem .5rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0b0f1414}}@media (min-width:768px){.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.two .two-column{grid-column:span 2}}.btn{border-radius:var(--radius-sm);cursor:pointer;box-shadow:var(--shadow-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:.35rem;padding:.65rem 1.5rem;font-size:.95rem;font-weight:600;transition:transform .12s,box-shadow .12s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--color-primary-600)}.btn-secondary{background:var(--white);color:var(--color-primary);border-color:#5046e633}.btn-secondary:hover:not(:disabled){background:#5046e614;border-color:#5046e666}.btn-danger{background:var(--danger);color:var(--white);border-color:#0000}.btn-danger:hover:not(:disabled){background:#c2311f}.btn-ghost{color:var(--neutral-900);box-shadow:none;background:0 0;border-color:#0000}input,select,textarea{border-radius:var(--radius-sm);background:var(--white);border:1px solid #0b0f141f;width:100%;padding:.65rem .85rem;font-family:inherit;font-size:1rem}label{flex-direction:column;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.badge{color:var(--color-primary);background:#5046e61a;border-radius:999px;align-items:center;padding:.15rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.badge-success{color:var(--success);background:#00b3881f}.badge-danger{color:var(--danger);background:#e23d281f}.badge-neutral{color:var(--neutral-700);background:#0b0f1414}.list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.source-row{border-radius:var(--radius);border:1px solid #0b0f1414;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.source-row .actions{flex-wrap:wrap;gap:.5rem;display:flex}.sources-card{position:relative;overflow:visible}.sources-toolbar{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.sources-toolbar-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.sources-add-wrapper{display:inline-flex;position:relative}.toolbar-placeholder{border-radius:var(--radius-sm);color:var(--neutral-700);cursor:not-allowed;background:#0b0f1405;border:1px dashed #0b0f1433;padding:.6rem 1rem;font-size:.9rem;font-weight:600}.source-type-menu{background:var(--white);border-radius:var(--radius);width:min(360px,85vw);box-shadow:var(--shadow-md);z-index:5;padding:1rem;position:absolute;top:calc(100% + .5rem);right:0}.source-type-title{margin:0 0 .5rem;font-weight:600}.source-type-options{flex-direction:column;gap:.5rem;display:flex}.source-type-option{border-radius:var(--radius-sm);text-align:left;background:var(--white);cursor:pointer;border:1px solid #0b0f141a;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;transition:border-color .12s,transform .12s;display:flex}.source-type-option:hover:not(:disabled){border-color:#5046e666;transform:translateY(-1px)}.source-type-option p{margin:.15rem 0 0}.source-type-option.coming-soon{cursor:not-allowed;opacity:.6}.sources-table{border-radius:var(--radius);border:1px solid #0b0f1414;overflow:hidden}.sources-header,.sources-row{grid-template-columns:.8fr 1.2fr .8fr .7fr 1.3fr 30px 30px 30px;place-items:center;gap:1rem;padding:1rem 1.25rem;display:grid}.sources-header{text-transform:uppercase;letter-spacing:.04em;color:var(--neutral-700);background:#0b0f1405;font-size:.85rem;font-weight:600}.sources-header span,.sources-cell{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.sources-row{border-top:1px solid #0b0f140d}.action-cell{justify-content:center;align-items:center;display:flex}.sources-alert{color:var(--danger);border-radius:var(--radius-sm);background:#e23d2814;border:1px solid #e23d2833;margin-bottom:1rem;padding:.75rem 1rem}.sources-state{text-align:center;color:var(--neutral-700);padding:2rem 0}.sources-empty-state{text-align:center;border-radius:var(--radius);border:1px dashed #0b0f1426;margin-top:1rem;padding:2.5rem 1rem}.icon-button{border-radius:var(--radius-sm);width:42px;height:42px;color:var(--neutral-900);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .12s,transform .12s;display:inline-flex}.icon-button:hover:not(:disabled){color:var(--color-primary);transform:translateY(-1px)}.icon-button.danger{color:var(--danger)}.icon-button.danger:hover:not(:disabled){color:var(--danger);background:#e23d281a}.icon-button:disabled{opacity:.5;cursor:not-allowed}.source-modal-overlay{z-index:30;background:#0b0f1459;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.source-modal-card{background:var(--white);border-radius:var(--radius);width:min(640px,100%);max-height:90vh;box-shadow:var(--shadow-md);flex-direction:column;gap:1rem;padding:1.5rem;display:flex;overflow-y:auto}.source-modal-header h3{margin-bottom:.25rem}.source-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.source-attributes{border-top:1px solid #0b0f1414;padding-top:1rem}.source-attributes h4{margin-bottom:.5rem}.source-attributes-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;display:grid}.source-attribute{border-radius:var(--radius-sm);border:1px solid #0b0f1414;gap:.5rem;padding:.75rem}.source-attribute-title{font-weight:600}.source-attribute-actions{flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.feed-type-field{flex-direction:column;gap:.35rem;display:flex}.feed-type-label{font-size:.9rem;font-weight:600}.feed-type-options{flex-wrap:wrap;gap:.75rem;display:flex}.feed-type-option{border-radius:var(--radius-sm);background:var(--white);cursor:pointer;text-align:left;border:1px solid #0b0f141f;flex:200px;justify-content:space-between;align-items:flex-start;gap:.75rem;min-width:200px;padding:.85rem;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.feed-type-option.selected{box-shadow:var(--shadow-sm);border-color:#5046e673;transform:translateY(-1px)}.feed-type-option:hover:not(:disabled){border-color:#5046e673}.feed-type-option:disabled{cursor:not-allowed;opacity:.6}.feed-type-option.coming-soon{opacity:.6}.status-chip{border-radius:999px;align-items:center;margin:.1rem 0;padding:.3rem .85rem;font-size:.8rem;font-weight:600;line-height:1;display:inline-flex}.status-active{color:var(--success);background:#00b3881f}.status-paused{color:var(--neutral-700);background:#0b0f1414}.status-error{color:var(--danger);background:#e23d281f}.status-pending{color:var(--warning);background:#f5a5241f}.sources-syncing{color:var(--color-primary);align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:inline-flex}.sources-spinner{border:2px solid #5046e640;border-top-color:var(--color-primary);border-radius:50%;width:14px;height:14px;animation:.9s linear infinite sources-spin}@keyframes sources-spin{to{transform:rotate(360deg)}}@media (max-width:900px){.sources-header{display:none}.sources-row{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:.5rem}.sources-row .sources-cell:first-child,.sources-row .sources-cell:nth-child(2),.sources-row .sources-cell:nth-child(3),.sources-row .sources-cell:nth-child(4),.sources-row .sources-cell:nth-child(5){grid-column:span 2}.sources-row .sources-cell:nth-child(6),.sources-row .sources-cell:nth-child(7),.sources-row .sources-cell:nth-child(8){grid-column:span 1}.source-type-menu{left:0;right:auto}}.auth-section{padding:2rem 1rem 4rem}.auth-card{max-width:28rem;margin:0 auto}.auth-submit{width:100%}.auth-signup{text-align:center;margin-top:1.5rem;font-size:.95rem}.auth-signup a{font-weight:600}.link-inline{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.95rem;font-weight:600}.link-inline:hover{text-decoration:underline}.label-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.inline-link{color:var(--color-primary);font-size:.85rem;font-weight:600}.auth-social{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.google-icon{justify-content:center;align-items:center;width:20px;height:20px;margin-right:.5rem;display:inline-flex}.google-icon svg{width:100%;height:100%}.auth-success{border-radius:var(--radius);background:var(--neutral-100);flex-direction:column;gap:.75rem;margin-top:1.5rem;padding:1.25rem;display:flex}@media (min-width:900px){.auth-section{justify-content:center;align-items:flex-start;min-height:100vh;padding:6rem 1rem;display:flex}.auth-card{width:100%}}
