:root{font-family:IBM Plex Sans,Segoe UI,sans-serif;color:#0f172a;--accent: #0f766e;--bg-1: #f8fafc;--bg-2: #e2e8f0;--panel: #ffffff;--panel-soft: #f8fafc;--text-strong: #0f172a;--text-muted: #334155;--line: #cbd5e1;--shadow-soft: 0 10px 30px rgba(2, 6, 23, .08);--shadow-lift: 0 18px 48px rgba(2, 6, 23, .14);background:linear-gradient(180deg,var(--bg-1) 0%,var(--bg-2) 100%)}*{box-sizing:border-box}body{margin:0;color:var(--text-strong)}.app-layout{min-height:100vh;display:grid;grid-template-columns:250px 1fr;gap:1rem;padding:1rem;background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 35%),radial-gradient(circle at 85% 10%,rgba(30,64,175,.08),transparent 30%),radial-gradient(circle at 50% 90%,rgba(14,116,144,.08),transparent 30%),linear-gradient(180deg,#f8fafc,#e2e8f0)}.focus-mode{grid-template-columns:1fr}.workspace-main{display:grid;gap:1rem;max-width:1240px}.workspace-topbar{display:none;align-items:center;gap:.65rem;padding:.4rem .2rem}.workspace-label{letter-spacing:.02em}.menu-toggle{background:#0f172a;border-radius:10px;padding:.45rem}.icon{width:16px;height:16px;flex:0 0 16px}.sidebar{background:linear-gradient(180deg,#111827,#0f172a);color:#e2e8f0;border-radius:14px;padding:1rem;display:grid;align-content:start;gap:.55rem;position:sticky;top:1rem;height:fit-content;box-shadow:var(--shadow-soft)}.sidebar h2{margin:0 0 .35rem;font-size:1rem}.sidebar-link{background:#1e293b;color:#e2e8f0;text-align:left;border-radius:10px;padding:.5rem .65rem;transition:transform .16s ease,background-color .16s ease;display:flex;align-items:center;gap:.45rem}.sidebar-link:hover{transform:translateY(-1px);background:#334155}.sidebar-link.active{background:var(--accent)}.focus-header{display:flex;justify-content:space-between;align-items:center;border:1px solid #cbd5e1;border-radius:12px;padding:.55rem .75rem;background:#f8fafc;box-shadow:var(--shadow-soft)}.focus-actions{display:flex;gap:.5rem}.focus-actions button{display:inline-flex;align-items:center;gap:.35rem}.settings-card{border:1px solid #cbd5e1;background:linear-gradient(180deg,#fff,#f8fafc)}.editor-card{min-height:70vh}.editor-split{display:grid;grid-template-columns:1fr 330px;gap:.85rem;align-items:start}.editor-split.collapsed{grid-template-columns:1fr}.editor-inspector{position:sticky;top:1rem;display:grid;gap:.8rem}.editor-main-column{min-width:0}.shell{min-height:100vh;display:grid;gap:1rem;padding:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.card{background:var(--panel);border-radius:16px;box-shadow:var(--shadow-soft);padding:1.25rem;border:1px solid rgba(203,213,225,.75);animation:card-in .32s ease both;transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.subtitle{color:var(--text-muted)}.header-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.badge{background:color-mix(in srgb,var(--accent) 16%,white);color:color-mix(in srgb,var(--accent) 72%,#0f172a);border-radius:999px;padding:.25rem .6rem;font-size:.8rem}.title-input{font-size:1.3rem;font-weight:700;border:0;border-bottom:2px solid #cbd5e1;border-radius:0;padding:.2rem 0;width:100%;max-width:460px}.editor-actions{display:flex;align-items:center;gap:.7rem;margin-bottom:.8rem}.save-message{color:var(--accent);font-weight:600}.share-link{display:inline-block;margin-bottom:.75rem;color:color-mix(in srgb,var(--accent) 74%,#1e3a8a);word-break:break-all}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;margin:0 0 .9rem}.analytics-grid div{border:1px solid #e2e8f0;border-radius:10px;padding:.55rem;display:grid;gap:.15rem}.analytics-grid span{color:#475569;font-size:.8rem}.analytics-grid strong{font-size:1.15rem}.form{display:grid;gap:.75rem}label{display:grid;gap:.25rem;font-size:.95rem}input,textarea,button{font:inherit}input,textarea{border:1px solid var(--line);border-radius:10px;padding:.55rem .65rem;background:#fff;transition:border-color .13s ease,box-shadow .13s ease}input:focus,textarea:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 62%,#94a3b8);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}textarea{min-height:90px}button{border:0;border-radius:12px;padding:.7rem .9rem;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 88%,#fff),var(--accent));color:#fff;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}button:hover{transform:translateY(-1px);box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 28%,transparent);filter:saturate(1.05)}.mode-switch{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.7rem}.mode-pill{background:#334155;color:#f8fafc;border-radius:999px;padding:.35rem .65rem}.mode-pill.active{background:var(--accent)}.template-launcher{display:grid;gap:.8rem}.compact{gap:.5rem}.compact-list{max-height:280px;overflow:auto}button:disabled{opacity:.6;cursor:not-allowed}.block-list{display:grid;gap:.75rem}.block-item{border:1px solid #cbd5e1;border-radius:12px;padding:.65rem;display:grid;gap:.55rem}.block-toolbar{display:flex;justify-content:space-between;gap:.5rem}.block-type{max-width:160px}.toolbar-buttons{display:flex;gap:.4rem}.toolbar-buttons button{background:#334155;padding:.35rem .55rem;border-radius:8px}.add-block{margin-top:1rem;border-top:1px solid #e2e8f0;padding-top:.9rem;display:grid;gap:.6rem}.quick-insert-row{display:flex;flex-wrap:wrap;gap:.4rem}.quick-insert-row button{background:#334155;padding:.35rem .55rem;border-radius:8px}.proposal-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.proposal-list li{border:1px solid #e2e8f0;border-radius:10px;padding:.6rem;display:grid;gap:.35rem;background:linear-gradient(180deg,#fff,#f8fafc);transition:border-color .14s ease,transform .14s ease}.proposal-list li:hover{border-color:color-mix(in srgb,var(--accent) 34%,#cbd5e1);transform:translateY(-1px)}.proposal-list button{background:#334155;padding:.35rem .55rem;border-radius:8px;justify-self:start}.public-sections{display:grid;gap:.75rem}.public-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 .85rem}.public-nav a{color:var(--accent);text-decoration:none;background:#ecfeff;border:1px solid #99f6e4;border-radius:999px;padding:.2rem .55rem;font-size:.85rem}.public-section{border:1px solid #e2e8f0;border-radius:10px;padding:.7rem}.public-section-hero{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-color:#cbd5e1}.public-section h3{margin:0 0 .35rem;text-transform:capitalize;letter-spacing:.02em}.public-section p{margin:0;color:#1e293b;line-height:1.6}.checkbox-row{display:flex;align-items:center;gap:.5rem}.template-vars{margin-top:.85rem}.template-preview{margin-top:.85rem;border-top:1px solid #e2e8f0;padding-top:.85rem}.template-actions{display:flex;flex-wrap:wrap;gap:.4rem}.template-actions button{background:#334155;padding:.35rem .55rem;border-radius:8px}.tag-row{color:var(--accent);font-size:.85rem}.timeline-card{border:1px solid #e2e8f0;border-radius:12px;padding:.75rem;margin-bottom:.8rem}.filter-row{display:flex;flex-wrap:wrap;gap:.35rem}.chip{background:#e2e8f0;color:#334155;padding:.25rem .5rem;border-radius:999px;font-size:.8rem}.chip-active{background:var(--accent);color:#fff}.timeline-list li{grid-template-columns:1fr auto;align-items:center}.dirty-badge,.clean-badge{padding:.2rem .45rem;border-radius:999px;font-size:.8rem}.dirty-badge{background:#fef3c7;color:#92400e}.clean-badge{background:#dcfce7;color:#166534}.signed-banner{border:1px solid color-mix(in srgb,var(--accent) 44%,#86efac);background:color-mix(in srgb,var(--accent) 10%,#f0fdf4);border-radius:10px;padding:.6rem;margin-bottom:.65rem;display:grid;gap:.2rem}.cta-link{display:inline-block;margin-bottom:.8rem;color:var(--accent);font-weight:600}.sticky-sign-card{position:sticky;top:1rem}@media(max-width:900px){.app-layout{grid-template-columns:1fr}.workspace-topbar{display:flex}.sidebar{position:fixed;z-index:40;top:.75rem;left:.75rem;right:.75rem;transform:translateY(-140%);opacity:0;pointer-events:none;transition:transform .18s ease,opacity .18s ease}.sidebar.open{transform:translateY(0);opacity:1;pointer-events:auto}.editor-split{grid-template-columns:1fr}.editor-inspector,.sticky-sign-card{position:static}}@keyframes card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
