:root{--black: #000000;--dark-teal: #004640;--mid-teal: #1a4d47;--light-teal: #90dab8;--light-teal-accent: #90dad8;--orange: #b65d0b;--pink-medium: #c97796;--pink-rose: #e184a8;--pink-soft: #f6babf;--pink-soft-bg: #f0e4ea;--pink-pale: #faf5f8;--pink-pale-deep: #f6dce6;--gold: #ffda3f;--white: #ffffff;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-200: #eee;--gray-400: #bdbdbd;--gray-600: #666;--gray-700: #444;--shadow-sm: 0 2px 8px rgba(0, 70, 64, .05);--shadow-md: 0 6px 20px rgba(0, 70, 64, .08)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:Quicksand,system-ui,sans-serif;color:var(--dark-teal);background:var(--pink-pale);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;transition:grid-template-columns .2s ease}.app-shell--sidebar-collapsed{grid-template-columns:84px 1fr}.app-sidebar{background:var(--white);border-right:1px solid var(--pink-soft-bg);padding:24px 20px;display:flex;flex-direction:column;gap:2rem;position:sticky;top:0;height:100vh;transition:padding .2s ease}.app-sidebar.is-collapsed{padding:24px 12px}.app-brand{display:flex;align-items:center;gap:.75rem}.app-brand-copy{min-width:0}.app-brand-mark{width:40px;height:40px;border-radius:10px;background:var(--dark-teal);color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;letter-spacing:.05em}.app-brand-name{font-size:.95rem;font-weight:700;color:var(--dark-teal)}.app-brand-tagline{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--pink-medium);font-weight:600}.app-nav{display:flex;flex-direction:column;gap:4px}.app-nav a{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .85rem;border-radius:10px;font-size:.9rem;font-weight:600;color:var(--dark-teal);opacity:.7;transition:all .15s}.app-nav a:hover{background:var(--pink-pale);opacity:1}.app-nav a.active{background:var(--dark-teal);color:var(--white);opacity:1}.app-nav-short{display:none;width:1rem;text-align:center;font-weight:700}.sidebar-toggle{margin-left:auto;width:28px;height:28px;border-radius:8px;border:1px solid var(--pink-soft-bg);background:var(--white);color:var(--dark-teal);font-size:.9rem;line-height:1}.sidebar-toggle:hover{background:var(--pink-pale)}.app-sidebar.is-collapsed .app-brand-copy,.app-sidebar.is-collapsed .app-nav-label{display:none}.app-sidebar.is-collapsed .app-nav-short{display:inline}.app-sidebar.is-collapsed .app-nav a{justify-content:center;padding:.6rem}.app-sidebar.is-collapsed .sidebar-signout-collapsed{justify-content:center!important;width:100%}.app-main{padding:32px 40px;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.page-head h1{font-size:1.75rem;font-weight:700;color:var(--dark-teal);line-height:1.2}.page-head-sub{font-size:.85rem;color:var(--gray-600);margin-top:.25rem}.section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--pink-medium)}.panel{background:var(--white);border:1px solid var(--pink-soft-bg);border-radius:16px;padding:1.75rem;box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.panel-head h2{font-size:1.15rem;font-weight:700;color:var(--dark-teal)}.btn{display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem;font-weight:700;padding:.6rem 1.2rem;border-radius:999px;border:2px solid transparent;transition:all .2s;white-space:nowrap}.btn--primary{background:var(--dark-teal);color:var(--white);border-color:var(--dark-teal)}.btn--primary:hover{background:var(--mid-teal);border-color:var(--mid-teal)}.btn--outline{background:transparent;color:var(--dark-teal);border-color:var(--pink-medium)}.btn--outline:hover{background:var(--pink-pale)}.btn--pink{background:var(--pink-medium);color:var(--white);border-color:var(--pink-medium)}.btn--pink:hover{background:#b56a88;border-color:#b56a88}.btn--ghost{background:transparent;color:var(--dark-teal);border-color:transparent;padding:.35rem .75rem}.btn--ghost:hover{background:var(--pink-pale)}.btn--danger{background:transparent;color:#c0392b;border-color:#f5c6cb}.btn--danger:hover{background:#fff0f0}.btn--sm{font-size:.75rem;padding:.4rem .9rem}.btn--block{width:100%;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1rem}.form-group.full{grid-column:1 / -1}.form-label{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--pink-medium);margin-bottom:.35rem}.form-input,.form-select,.form-textarea{width:100%;padding:.65rem .85rem;border:1px solid var(--pink-soft-bg);border-radius:10px;font-size:.9rem;color:var(--dark-teal);background:var(--white);transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--pink-medium);box-shadow:0 0 0 3px #c9779626}.form-textarea{min-height:90px;resize:vertical}.form-help{font-size:.75rem;color:var(--gray-600);margin-top:.35rem}.checkbox-row{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--dark-teal);cursor:pointer}.checkbox-row input{width:16px;height:16px;accent-color:var(--dark-teal)}.table-wrap{background:var(--white);border:1px solid var(--pink-soft-bg);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:collapse;font-size:.88rem}.table th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--pink-medium);padding:.9rem 1rem;border-bottom:1px solid var(--pink-soft-bg);background:var(--pink-pale)}.table td{padding:.9rem 1rem;border-bottom:1px solid var(--gray-100);color:var(--dark-teal);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--pink-pale)}.table .cell-actions{display:flex;gap:.35rem;justify-content:flex-end}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.82rem}.pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:700;padding:.25rem .7rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.pill--draft{background:var(--gray-100);color:var(--gray-600)}.pill--live,.pill--published{background:var(--light-teal);color:var(--dark-teal)}.pill--hidden{background:var(--gray-100);color:var(--gray-600)}.pill--visible{background:var(--pink-pale-deep);color:var(--pink-medium)}.pill--proposal{background:var(--gold);color:var(--dark-teal)}.pill--in_progress{background:var(--pink-pale-deep);color:var(--pink-medium)}.pill--live_invite{background:var(--dark-teal);color:var(--white)}.pill--completed{background:var(--light-teal-accent);color:var(--dark-teal)}.section-list{display:flex;flex-direction:column;gap:.5rem}.section-row{display:grid;grid-template-columns:24px 1fr auto auto auto;gap:1rem;align-items:center;padding:.85rem 1rem;background:var(--white);border:1px solid var(--pink-soft-bg);border-radius:12px;transition:border-color .15s,box-shadow .15s}.section-row:hover{border-color:var(--pink-medium);box-shadow:var(--shadow-sm)}.section-row.active{border-color:var(--dark-teal);background:var(--pink-pale)}.section-row.invisible{opacity:.55}.section-row-handle{color:var(--gray-400);font-size:1rem;cursor:grab}.section-row-title{font-weight:600;font-size:.92rem;color:var(--dark-teal)}.section-row-sub{font-size:.72rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:.06em}.toggle{position:relative;width:40px;height:22px;background:var(--pink-soft-bg);border-radius:12px;border:none;cursor:pointer;transition:background .2s;flex-shrink:0}.toggle[aria-checked=true]{background:var(--dark-teal)}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--white);border-radius:50%;transition:transform .2s}.toggle[aria-checked=true]:after{transform:translate(18px)}.list-editor{display:flex;flex-direction:column;gap:.5rem}.list-editor-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.list-editor-row--cost,.list-editor-row--step{grid-template-columns:2fr 1fr auto}.list-editor-row input{margin:0}.empty{padding:3rem 1rem;text-align:center;color:var(--gray-600);font-size:.9rem}.stack{display:flex;flex-direction:column;gap:1rem}.cluster{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.cluster--right{justify-content:flex-end}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.split{display:grid;grid-template-columns:.9fr 1.5fr;gap:1.5rem;align-items:start}.alert{padding:.85rem 1rem;border-radius:10px;font-size:.85rem;font-weight:500;margin-bottom:1rem}.alert--error{background:#fff0f0;color:#c0392b;border:1px solid #f5c6cb}.alert--success{background:#eafaf1;color:var(--dark-teal);border:1px solid var(--light-teal)}.alert--info{background:var(--pink-pale);color:var(--dark-teal);border:1px solid var(--pink-soft-bg)}.loader{display:inline-block;width:18px;height:18px;border:2px solid var(--pink-soft-bg);border-top-color:var(--pink-medium);border-radius:50%;animation:spin .8s linear infinite;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00464059;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:2rem}.modal{background:var(--white);border-radius:18px;padding:2rem;width:100%;max-width:520px;box-shadow:0 16px 48px #0046402e}.modal h2{font-size:1.2rem;font-weight:700;color:var(--dark-teal);margin-bottom:1rem}@media (max-width: 880px){.app-shell,.app-shell--sidebar-collapsed{grid-template-columns:1fr}.app-sidebar{position:static;height:auto;flex-direction:row;align-items:center;justify-content:space-between;padding:16px 20px}.app-sidebar.is-collapsed{padding:16px 20px}.app-sidebar.is-collapsed .app-brand-copy{display:block}.app-sidebar.is-collapsed .app-nav-label{display:inline}.app-sidebar.is-collapsed .app-nav-short{display:none}.app-sidebar.is-collapsed .app-nav a{justify-content:flex-start;padding:.6rem .85rem}.app-main{padding:20px}.form-row,.split,.grid-2{grid-template-columns:1fr}}
