:root{--plum:#4a1832;--plum-soft:#8a5f72;--blush:#ffe3ea;--line:#e7c9d3;--cream:#fff1e4;--paper:#fffdf9;--red:#cf3352;--green:#2d6b2a;--green-soft:#d7f0d2;--amber:#7a5a00;--amber-soft:#fff0c2}*{box-sizing:border-box}body{background:var(--cream);min-height:100vh;color:var(--plum);margin:0;font:15px/1.45 Nunito,sans-serif}a{color:inherit}#top{background:var(--paper);border-bottom:3px solid var(--line);z-index:2;align-items:center;gap:24px;padding:12px 24px;display:flex;position:sticky;top:0}#brand{font:600 22px Fredoka,sans-serif;text-decoration:none}#brand span{color:var(--plum-soft);font-weight:500}#nav{flex:1;gap:4px;display:flex}#nav a{border-radius:999px;padding:6px 14px;font-weight:800;text-decoration:none}#nav{flex-wrap:wrap;gap:4px;display:flex}#nav a.active{background:var(--plum);color:#fff}#realm-pick{width:auto;margin-left:auto;padding:4px 10px;font-size:13px}#account{color:var(--plum-soft);white-space:nowrap;flex-shrink:0;align-items:center;gap:12px;font-size:13px;display:flex}#main{max-width:1100px;margin:0 auto;padding:24px}h1{margin:0 0 16px;font:600 28px Fredoka,sans-serif}h2{margin:24px 0 10px;font:600 20px Fredoka,sans-serif}h3{margin:16px 0 8px;font:600 16px Fredoka,sans-serif}p.hint{color:var(--plum-soft);margin:4px 0 12px;font-size:13px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spread{justify-content:space-between}button,.button{background:var(--plum);color:#fff;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;height:36px;padding:0 16px;font:800 14px Nunito,sans-serif;text-decoration:none;display:inline-flex}button.secondary,.button.secondary{background:var(--blush);color:var(--plum)}button.danger{background:var(--red)}button:disabled{opacity:.5;cursor:default}.card{background:var(--paper);border:3px solid var(--line);border-radius:18px;margin-bottom:14px;padding:16px 18px}.cards{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.card h3{margin:0 0 6px}.card .meta{color:var(--plum-soft);font-size:13px}.pill{background:var(--plum);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:1px 9px;font-size:11px;font-weight:800;display:inline-block}.pill.soft{background:var(--blush);color:var(--plum)}.pill.green{background:var(--green-soft);color:var(--green)}.pill.amber{background:var(--amber-soft);color:var(--amber)}.pill.red{color:var(--red);background:#fde0e4}table{border-collapse:collapse;background:var(--paper);border:3px solid var(--line);border-radius:14px;width:100%;overflow:hidden}th,td{text-align:left;vertical-align:top;border-bottom:2px solid #f3e1e7;padding:8px 12px;font-size:14px}th{text-transform:uppercase;letter-spacing:.05em;color:var(--plum-soft);font-size:12px}tr.clickable{cursor:pointer}tr.clickable:hover{background:var(--blush)}form.editor{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px 24px;display:grid}form.editor fieldset{border:3px solid var(--line);background:var(--paper);border-radius:14px;margin:0;padding:10px 14px 14px}form.editor legend{padding:0 6px;font:600 15px Fredoka,sans-serif}label.field{flex-direction:column;gap:4px;margin-bottom:8px;font-size:13px;font-weight:800;display:flex}label.inline{align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:800;display:flex}input[type=text],input[type=number],select,textarea{border:3px solid var(--line);width:100%;color:var(--plum);background:var(--paper);border-radius:10px;padding:6px 10px;font:700 14px Nunito,sans-serif}input[type=number]{width:90px}textarea{resize:vertical;min-height:80px}input:focus,select:focus,textarea:focus{border-color:var(--plum);outline:none}.grid-2{grid-template-columns:1fr 1fr;gap:4px 12px;display:grid}.dist{grid-template-columns:1fr 90px 90px;align-items:center;gap:4px 8px;font-size:13px;display:grid}.dist .head{text-transform:uppercase;color:var(--plum-soft);font-size:11px}.log{color:#f6e7ee;white-space:pre-wrap;background:#2b1020;border-radius:14px;max-height:420px;padding:12px 14px;font:12.5px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-y:auto}.log .k{color:#f0a6bd}.log .say{color:#ffd98a}.log .thought{color:#b7c7ff;font-style:italic}.log .report,.log .churn{color:#ff9aa8;font-weight:700}.log .mood{color:#a6e3b8}.thread{flex-direction:column;gap:8px;display:flex}.bubble{background:var(--paper);border:2px solid var(--line);border-radius:14px;max-width:70%;padding:8px 12px}.bubble.mine{background:var(--blush);align-self:flex-end}.bubble.system{color:var(--plum-soft);background:0 0;border:0;align-self:center;font-size:13px}.bubble .who{color:var(--plum-soft);font-size:11px;font-weight:800}.bubble img{border-radius:10px;max-width:100%;margin-top:6px;display:block}.composer{gap:8px;margin-top:12px;display:flex}.composer textarea{min-height:44px}.error{color:var(--red);font-weight:800}.signin{text-align:center;max-width:420px;margin:80px auto}.empty{color:var(--plum-soft);text-align:center;padding:24px}.chart-card{padding:10px 12px}.chart{width:100%;height:auto;display:block}.chart .grid{stroke:var(--line);stroke-width:1px}.chart .axis{fill:var(--plum-soft);font:700 12px Nunito,sans-serif}.chart .line{fill:none;stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.chart .line.dotted{stroke-width:2px;stroke-dasharray:2 5}.legend{color:var(--plum-soft);flex-wrap:wrap;gap:14px;margin-top:-4px;font-size:13px;display:flex}.legend-item{align-items:center;gap:6px;display:inline-flex}.log.small{max-height:140px;margin-top:8px;font-size:12px}.log .error{color:var(--red)}.legend-item i{border-radius:2px;width:14px;height:4px;display:inline-block}.kv{grid-template-columns:max-content 1fr;gap:4px 14px;font-size:14px;display:grid}.kv dt{color:var(--plum-soft);font-weight:800}.kv dd{margin:0}.machine h2{color:var(--plum);font-family:inherit;font-size:15px;font-weight:700}
