.app{display:grid;grid-template-columns:1fr;border-radius:var(--r-lg);overflow:hidden;background:var(--ui-bg);box-shadow:var(--shadow-sheet);min-height:100%}.day .app,.porcelain .app{box-shadow:var(--shadow-day);border:1px solid rgba(17,18,20,.07)}.app.has-rail{grid-template-columns:196px minmax(0,1fr)}.app-rail{background:var(--ui-nav);color:var(--ui-nav-text);padding:16px 12px;font-size:12.5px}.app-logo{display:flex;align-items:center;gap:9px;color:#fff;font-family:var(--serif);font-size:17px;margin:2px 6px 18px}.app-rail li{list-style:none;padding:7px 10px;border-radius:7px;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-rail li.on{background:#c9d8ff24;color:#fff}.app-rail li.grp{margin-top:12px;padding-bottom:4px;font-size:11px;color:#7f8aa3;background:none}.app-main{display:flex;flex-direction:column;min-width:0}.app-top{display:flex;align-items:center;gap:9px;height:44px;padding:0 16px;background:#fff;border-bottom:1px solid var(--ui-line);font-size:12.5px;color:var(--ui-mute)}.app-top b{color:var(--ui-ink);font-weight:600;white-space:nowrap}.app-top .crumb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-top .crumb:before{content:"/";margin-right:9px;color:#b7bcc8}.app-user{margin-left:auto}.app-body{padding:18px;flex:1;min-width:0;position:relative;display:flex;flex-direction:column}.app-body>.board{align-items:start}.v-title{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:14px}.v-title h4{font:600 16px/1.2 var(--sans);color:var(--ui-ink);letter-spacing:-.01em}.v-title span{font-size:12px;color:var(--ui-mute)}.v-greet small{display:block;font-size:12px;color:var(--ui-mute)}.v-greet h4{font:600 20px/1.2 var(--sans);color:var(--ui-ink);margin-top:3px;letter-spacing:-.01em}.v-greet p{font-size:12.5px;color:var(--ui-mute);margin-top:3px}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px;padding:10px;border-radius:12px;background:#e6e9f1;border-top:3px solid #2b47b0;overflow:hidden}.b-col{background:#f4f5f8;border-radius:9px;padding:8px;display:flex;flex-direction:column;gap:7px;min-width:0}.b-col h5{display:flex;justify-content:space-between;gap:6px;font:600 11.5px/1.3 var(--sans);color:#262c45;padding:2px 2px 4px}.b-card{background:#fff;border-radius:7px;padding:8px 9px;box-shadow:0 1px 1px #10131b12;font-size:11.5px;color:var(--ui-ink)}.b-card .tags{display:flex;gap:4px;margin-bottom:5px;flex-wrap:wrap}.b-card .tags span{font-size:9.5px;font-weight:600;padding:2px 6px;border-radius:999px}.t-sql{background:#e4f4ea;color:#1d7440}.t-mql{background:#fcf0d6;color:#8a5a00}.t-src{background:#eceffd;color:#3446c4}.rows{background:#fff;border:1px solid var(--ui-line);border-radius:10px;overflow:hidden}.rows .r{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid var(--ui-line);font-size:12.5px}.rows .r:first-child{border-top:0}.rows .r .grow{flex:1;min-width:0}.rows .r small{display:block;font-size:11.5px;color:var(--ui-mute)}.rows .head{font-size:11.5px;color:var(--ui-mute);background:#fafbfc}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tile{background:#fff;border:1px solid var(--ui-line);border-radius:10px;padding:12px 14px;font-size:11.5px;color:var(--ui-mute)}.tile b{display:block;margin:5px 0 1px;font:600 20px/1.1 var(--sans);color:var(--ui-ink);font-variant-numeric:tabular-nums}.tile b.warn{color:#9a6200}.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;background:#fff;border:1px solid var(--ui-line);border-radius:10px;padding:12px}.step{display:flex;gap:8px;align-items:flex-start;font-size:11.5px;font-weight:600;color:var(--ui-ink)}.step i{flex:none;width:18px;height:18px;border-radius:50%;border:1.5px solid #c9cdd8;display:grid;place-items:center}.step.done i{background:var(--ui-accent);border-color:var(--ui-accent)}.step.done i:after{content:"";width:7px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}.step.now i{border-color:var(--ui-accent);box-shadow:inset 0 0 0 4px #fff,inset 0 0 0 10px var(--ui-accent)}.step small{display:block;font-weight:400;color:var(--ui-mute);font-size:10.5px}.bubble{border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5;color:var(--ui-ink-2)}.bubble small{display:block;font-size:11px;color:var(--ui-mute);margin-bottom:3px}.bubble.ours{background:var(--ui-accent-soft)}.bubble.theirs{background:#fff7ea;border:1px solid #f3dfba}.bubble.ai{background:#fff;border:1px solid var(--ui-line)}.phone{width:270px;max-width:100%;aspect-ratio:9 / 18.6;border-radius:38px;padding:10px;background:#0b0f1a;box-shadow:0 0 0 1px #ffffff14 inset,var(--shadow-sheet)}.phone-screen{width:100%;height:100%;border-radius:29px;overflow:hidden;background:var(--ui-bg);display:flex;flex-direction:column;font-size:12px;color:var(--ui-ink)}.phone-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 18px 8px;background:#fff;border-bottom:1px solid var(--ui-line);font-weight:600;font-size:13px}@media(max-width:700px){.app.has-rail{grid-template-columns:minmax(0,1fr)}.app-rail{display:none}.app-body{padding:14px}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:1fr}}
