/* Raisepin workspace: calm editing surfaces, ink navigation, coral actions. */
:root {
  --bg:#edf1f5; --bg-2:#f8fafc; --card:#fff; --card-2:#f0f4f7;
  --line:#dfe6ec; --line-2:#c5d0da; --text:#12283a; --muted:#627587;
  --accent:#d63849; --accent-2:#b7283c; --accent-soft:#fff0f1;
  --good:#247c66; --warn:#9b681c; --bad:#b72d43;
  --radius:18px; --shadow:none; --nav-bg:#142d40;
  color-scheme:light;
}
:root[data-theme=dark] {
  --bg:#142230; --bg-2:#192c3c; --card:#1c3041; --card-2:#263d50;
  --line:#344c60; --line-2:#4b657b; --text:#eef4f8; --muted:#b0c2d1;
  --accent:#ef5c6a; --accent-2:#ffa5ad; --accent-soft:#49313c;
  --good:#74d0b2; --warn:#e0b475; --bad:#ff9da9; --nav-bg:#102333;
  color-scheme:dark;
}
body {font-family:'Golos Text',sans-serif;font-size:14px;line-height:1.6}
h1,h2,h3,.brand,.stat b {font-family:Manrope,'Golos Text',sans-serif}
h1 {font-size:32px;letter-spacing:-1.15px;font-weight:800;line-height:1.2}
h2 {font-size:21px;letter-spacing:-.5px;font-weight:800}
h3 {font-size:16px;font-weight:800}
a {text-underline-offset:3px}
button,a,input,select,textarea,summary {touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible {outline:3px solid var(--accent);outline-offset:4px}
input,textarea,select {border-radius:10px;padding:12px 14px;background:var(--bg-2);font-size:14px;font-weight:400}
input::placeholder,textarea::placeholder {color:var(--muted);opacity:.85}
input:focus,textarea:focus,select:focus {box-shadow:0 0 0 3px var(--accent-soft)}
input[type=file] {font-size:12px;background:transparent;border:0;padding:8px 0;max-width:100%}
input[type=file]::file-selector-button {border:1px solid var(--line-2);border-radius:7px;padding:8px 12px;background:var(--card);color:var(--text);margin-right:10px;font:inherit;cursor:pointer}
.app {grid-template-columns:230px minmax(0,1fr)}
.side {background:var(--nav-bg);border:0;padding:28px 16px 20px;color:#dce7f0;gap:8px}
.side .brand {padding:0 10px 36px;color:#fff;text-decoration:none;gap:11px}
.brand-name {font-size:25px;letter-spacing:-1px;line-height:1.1}
.brand-name small {display:block;color:#9eb4c6;font:11px 'Golos Text',sans-serif;background:none;padding:7px 0 0;margin:0;letter-spacing:0}
.side .logo {height:39px;width:39px;border-radius:11px}
.nav-caption {font-size:11px;color:#99afc1;padding:0 12px 12px;margin:0}
.nav {display:grid;gap:6px}
.nav a {color:#b6c8d6;border-radius:9px;padding:12px 13px;font-size:13px;font-weight:500;gap:12px;position:relative}
.nav a:hover {color:#fff;background:#203e54}
.nav a.active {color:#fff;background:#2b4960}
.nav a.active::before {content:'';width:3px;height:20px;background:#ff7e87;position:absolute;left:-16px;top:14px;border-radius:0 3px 3px 0}
.nav a svg {width:19px;height:19px;opacity:.9}
.side .bottom {padding-top:26px;gap:15px}
.side .userbox {display:flex;align-items:center;gap:10px;padding:15px 2px 18px;border:0;border-bottom:1px solid #335066;border-radius:0;background:none;font-size:12px}
.avatar {display:grid;place-items:center;background:#365569;color:#fff;border-radius:12px;width:36px;height:36px;flex:none;font-weight:600}
.account-copy {min-width:0;line-height:1.6}
.account-copy div {color:#9eb4c6;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:146px}
.side .btn.ghost {border-color:#3e596e;background:none;color:#bdcdda;font-size:11px;flex:1;padding:8px}
.workspace {min-width:0}
.workspace-bar {min-height:78px;padding:18px clamp(20px,3vw,48px);display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);background:var(--card)}
.workspace-crumb {display:flex;align-items:center;gap:16px;font-size:12px;color:var(--muted)}
.workspace-crumb b {font-weight:500;color:var(--text)}
.main {padding:34px clamp(20px,3vw,48px) 70px;max-width:1560px;margin:auto}
.pagehead {margin-bottom:28px;align-items:center;gap:18px}
.pagehead p {font-size:13px;max-width:650px;line-height:1.8;margin-top:9px}
.pagehead .small {display:inline-block;margin-bottom:10px}
.card {padding:24px;border-color:var(--line);box-shadow:none}
.card .card {border-radius:12px;padding:16px;background:var(--bg-2)}
.grid {gap:20px}
.stack {gap:18px}
.btn {border-radius:9px;font-size:13px;padding:12px 19px;font-weight:600;box-shadow:none;min-height:43px}
.btn:hover {background:var(--accent-2);box-shadow:none}
:root[data-theme=dark] .btn:not(.ghost):not(.danger) {color:#102333;font-weight:700}
.btn.ghost {background:transparent;border-color:var(--line-2);color:var(--text)}
.btn.ghost:hover {background:var(--card-2)}
.btn.sm {min-height:34px;font-size:12px;border-radius:8px;padding:7px 11px}
.btn.danger {border:1px solid var(--line);background:transparent;font-size:12px}
.badge {font-weight:500;font-size:11px;padding:4px 10px;border-radius:7px}
.stat {padding:22px 24px;border-top:3px solid var(--line-2)}
.stat b {font-size:34px;font-weight:700;color:var(--text)}
.stat span {font-size:12px;font-weight:400}
.dashboard-start {display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 34px;background:var(--nav-bg);color:#fff;border-radius:18px;margin-bottom:24px}
.dashboard-start h2 {font-size:25px;letter-spacing:-.7px}.dashboard-start p {color:#bbcfdd;max-width:580px;font-size:13px;margin-top:10px;margin-bottom:0}.dashboard-start .btn{flex:none}
.metrics-strip {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--card);border:1px solid var(--line);border-radius:15px;padding:8px 0;margin-bottom:24px}
.metrics-strip .stat {border:0;border-right:1px solid var(--line);border-radius:0;background:none;padding:14px 24px}.metrics-strip .stat:last-child{border-right:0}.metrics-strip .stat b{font-size:27px}.metrics-strip .stat span{font-size:11px}
th {text-transform:none;letter-spacing:0;font-size:12px;font-weight:500}
td {font-size:13px}
.tablewrap {border-radius:14px}
.tabs {border-radius:10px;padding:4px;box-shadow:none}
.tabs button {font-weight:500;font-size:12px;border-radius:7px}
.tabs button.on {background:var(--text);color:var(--card)}
.steps {display:grid;grid-template-columns:repeat(var(--step-count,6),minmax(0,1fr));gap:0;border-bottom:1px solid var(--line);margin:0 0 26px;padding-bottom:0}
.style-choice.chosen {border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}
.style-choice:hover:not(:disabled) {border-color:var(--accent)}
.step {border:0;border-bottom:2px solid transparent;border-radius:0;background:none;box-shadow:none;min-width:0;padding:12px 5px 15px;font-size:11px;gap:7px;justify-content:center;font-weight:500}
.step i {background:var(--card);border:1px solid var(--line);width:23px;height:23px;flex:none;font-size:10px}
.step.on {border-color:var(--accent);box-shadow:none;color:var(--accent-2)}
.step.on i {border-color:var(--accent)}
.source-workbench {background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.workbench-head {padding:27px 30px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line)}
.workbench-head h2 {font-size:25px}
.workbench-head p {font-size:12px;margin:7px 0 0}
.source-columns {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.source-library,.source-brief {padding:28px 30px;align-content:start}
.source-library {border-right:1px solid var(--line);background:var(--bg-2)}
.source-library textarea {background:var(--card);min-height:76px}
.source-brief textarea {min-height:205px;line-height:1.9;background:var(--bg-2)}
.section-title {display:flex;align-items:center;gap:10px}
.section-title svg {width:19px;height:19px;color:var(--muted);flex:none}
.source-item {display:flex;align-items:center;gap:11px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--card);min-width:0}
.source-item>svg {width:17px;height:17px;color:var(--muted);flex:none}
.source-item b {display:block;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.source-item span {display:block;font-size:10px}
.source-list {gap:8px;max-height:220px;overflow:auto}
.prompt-chips {display:flex;gap:7px;flex-wrap:wrap}
.prompt-chip {font:11px 'Golos Text',sans-serif;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:var(--card);padding:7px 9px;cursor:pointer;min-height:32px}
.prompt-chip:hover {background:var(--accent-soft);border-color:var(--accent);color:var(--accent-2)}
.brief-footer {display:grid;gap:16px;justify-items:start}
.brief-footer .btn {padding:13px 22px}
.brief-footer p {max-width:350px;font-size:11px;line-height:1.7}
.file-field {border-top:1px solid var(--line);padding-top:17px}
.project-settings summary {font-size:13px;font-weight:600;cursor:pointer}
.editor-panel {border-top:3px solid var(--line-2);margin-top:9px}
.editor-panel>textarea {background:var(--bg-2);min-height:95px}
.editor-panel .card b {font-size:12px;color:var(--muted)}
.frame {padding:22px}
.variant {border-radius:9px}
.drop {border-width:1px;background:var(--bg-2);border-radius:12px}
.authpage {grid-template-columns:1.1fr 1fr;background:var(--bg)}
.authhero {background:var(--nav-bg);border:0;color:#fff;padding:clamp(30px,6vw,96px);position:relative;gap:30px;overflow:hidden}
.authhero h1 {font-size:clamp(36px,4.1vw,60px);line-height:1.13;letter-spacing:-2.6px;max-width:660px}
.authhero .brand {color:#fff;padding:0;margin-bottom:20px;font-size:25px}
.authhero .brand small {display:none}
.authhero .auth-intro {font-size:16px;color:#bbcfdd;max-width:470px;line-height:1.8}
.authhero li {font-size:13px;color:#cbdce8;line-height:1.6;align-items:flex-start}
.authhero li svg {color:#ff919c;width:17px;height:17px;margin-top:2px}
.authform {padding:40px}
.authform .card {padding:40px;border:0;background:transparent;max-width:440px}
.authform h2 {font-size:29px;margin-bottom:10px}
.authform .stack {gap:23px}
.authform .btn {min-height:48px}
.modal {border-radius:18px}
.empty {max-width:600px;margin:0 auto;padding:42px 16px;font-size:13px}
@media(min-width:1700px){.main{padding-top:44px}.source-library,.source-brief{padding:34px 38px}}
@media(max-width:1200px){.app{grid-template-columns:200px minmax(0,1fr)}.side{padding-left:12px;padding-right:12px}.source-library,.source-brief{padding:22px}.step{font-size:10px;gap:4px}.workspace-bar{min-height:70px}.brand-name{font-size:22px}}
@media(max-width:960px){
 .app{display:block}.side{position:fixed;bottom:0;top:auto;height:auto;background:var(--nav-bg);padding:5px 8px;z-index:50}
 .side .brand,.side .bottom,.nav-caption{display:none}.nav{display:flex;gap:2px;min-width:0}.nav a{padding:8px 2px;font-size:10px;gap:5px;border-radius:8px;min-width:0;width:0;flex:1 1 0}.nav a.active::before{display:none}
 .workspace-bar{padding:14px 20px}.main{padding:28px 20px 100px}.workspace-crumb{font-size:11px;gap:10px}
 .g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .source-columns{grid-template-columns:1fr 1fr}.source-library,.source-brief{padding:20px}.workbench-head{padding:24px}
 .steps{display:flex;overflow-x:auto;flex-wrap:nowrap}.step{white-space:nowrap;flex:0 0 auto;padding:12px 11px;font-size:11px}
 .authpage{grid-template-columns:1fr}.authhero{padding:40px}.authhero h1{max-width:600px}.authhero .brand{display:flex;margin-bottom:0}.authform{padding:22px}
}
@media(max-width:650px){
 h1{font-size:27px;letter-spacing:-.8px}h2{font-size:20px}.main{padding:24px 14px 100px}.workspace-bar{padding:12px 15px;min-height:66px}.workspace-crumb>span:first-child{display:none}.workspace-crumb>span:nth-child(2){display:none}
 .source-columns{grid-template-columns:1fr}.source-library{border-right:0;border-bottom:1px solid var(--line)}.workbench-head{padding:22px 20px;align-items:flex-start}.workbench-head h2{font-size:22px}.workbench-head .badge{flex:none}
 .source-library,.source-brief{padding:22px 20px}.source-brief textarea{min-height:160px}.source-workbench{border-radius:15px}.g2,.g3{grid-template-columns:1fr}.card{padding:20px}.stat{padding:18px}.stat b{font-size:28px}
 .pagehead{margin-bottom:22px}.pagehead .btn.danger{padding:7px 10px;min-height:33px}.brief-footer .btn{width:100%}.brief-footer{justify-items:stretch}.btn{white-space:normal;text-align:center}
 .dashboard-start{padding:24px;align-items:flex-start;flex-direction:column;gap:20px}.metrics-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-strip .stat:nth-child(2){border-right:0}.metrics-strip .stat{padding:16px 20px}
 .authhero{padding:30px 25px}.authhero h1{font-size:36px;letter-spacing:-1.5px}.authhero ul{display:none}.authform{padding:15px}.authform .card{padding:25px 10px}
 .editor-panel>.row input[type=file]{width:100%;min-width:0}.source-item .btn{padding:6px}.toasts{left:12px;right:12px;bottom:90px}.toast{max-width:100%}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
