@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#eae5dc;background:#111211;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}.top{min-height:84px;border-bottom:1px solid #34332f;display:flex;align-items:center;justify-content:space-between;padding:20px max(5vw,24px);gap:15px}.wordmark{font-family:'Playfair Display',serif;font-size:20px;letter-spacing:.08em}.wordmark small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:.33em;color:#b5a58d;margin-top:7px}.topright{display:flex;align-items:center;gap:20px;color:#b9b3aa;font-size:13px}.shell{max-width:1160px;margin:0 auto;padding:45px 24px 90px;min-height:70vh}.shell.narrow{max-width:650px}.eyebrow{font-size:10px!important;letter-spacing:.25em;color:#c5aa84!important;font-weight:700}h1,h2,h3{font-family:'Playfair Display',serif;font-weight:400}h1{font-size:clamp(42px,6vw,79px);line-height:1.12;margin:14px 0 22px}h1 em{color:#bda889;font-weight:400}h2{font-size:36px;margin:10px 0 22px}h3{font-size:25px;margin:0 0 16px}p{line-height:1.75;color:#a8a6a0}.auth{display:grid;grid-template-columns:1fr 420px;align-items:center;gap:9%;padding-top:80px}.panel{border:1px solid #403d38;background:#1c1d1b;padding:32px;margin:24px 0}.panel p{margin-bottom:0}.field{display:flex;flex-direction:column;gap:9px;margin:18px 0}.field span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#c3bcb0}.field input,.field select,.field textarea{width:100%;background:#111211;border:1px solid #504b44;color:#f3eee6;padding:13px 14px;border-radius:2px;min-height:48px}.field input:focus,.field textarea:focus{outline:1px solid #bca07a}.primary{background:#bda585;border:1px solid #bda585;color:#161513;padding:14px 22px;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700;min-height:46px}.ghost,.link{border:0;background:transparent;color:#d2bea1}.link{text-decoration:underline;padding:0}.switch{font-size:12px}.onboard{max-width:620px;margin:40px auto}.hero{padding:40px 0 30px;border-bottom:1px solid #34332f}.hero h1{font-size:clamp(42px,5vw,65px)}.tabs{display:flex;gap:22px;border-bottom:1px solid #34332f;overflow-x:auto}.tabs button{border:0;background:transparent;color:#a8a6a0;padding:22px 5px;font-size:12px;letter-spacing:.08em;white-space:nowrap}.tabs button.active{color:#e8ddc9;border-bottom:2px solid #bda585}.content{padding:34px 0}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0}.tiles article{border:1px solid #403d38;padding:27px;min-height:195px}.tiles span{display:block;font-size:10px;letter-spacing:.15em;color:#bda585}.tiles strong{display:block;font-family:'Playfair Display',serif;font-size:54px;margin:18px 0 5px;font-weight:400}.tiles strong.smallstrong{font-size:27px}.tiles p{font-size:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.clientlist{list-style:none;padding:0}.clientlist li{padding:15px 0;border-bottom:1px solid #403d38;display:flex;justify-content:space-between;gap:15px}.clientlist span,.muted{color:#aaa59b;font-size:13px}.preview{padding:42px;margin-top:24px}.preview h2{font-size:36px}.preview p{color:inherit;opacity:.8}.preview small{letter-spacing:.16em;text-transform:uppercase}.alert,.notice{padding:14px 18px;display:flex;justify-content:space-between;gap:10px;margin:10px 0;background:#4d2929;color:#fff}.notice{background:#243d34}.alert button,.notice button{border:0;background:none;color:inherit}footer{padding:30px 5vw;border-top:1px solid #34332f;font-size:10px;letter-spacing:.17em;color:#a9a197;display:flex;justify-content:space-between;gap:20px}@media(max-width:780px){.auth{grid-template-columns:1fr;padding-top:20px;gap:12px}.tiles{grid-template-columns:1fr}.two{grid-template-columns:1fr;gap:0}.panel{padding:22px}.topright span{display:none}.shell{padding-top:24px}.clientlist li{flex-direction:column;gap:4px}footer{flex-direction:column}}

.secondary{background:transparent;border:1px solid #796b58;color:#e3d0b4;padding:11px 16px;font-size:12px;min-height:42px}.secondary:hover{background:#2b2924}.section-head{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.section-head h3{margin-bottom:0}.project-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.project-stats>div{border:1px solid #403d38;padding:20px}.project-stats strong{display:block;font:36px 'Playfair Display',serif}.project-stats span{color:#bda585;text-transform:uppercase;letter-spacing:.1em;font-size:10px}.project-list{margin-top:20px}.project-item{border-top:1px solid #403d38;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}.project-item h4{font:26px 'Playfair Display',serif;margin:5px 0}.project-item p{margin:5px 0}.filter-label{color:#bdb4a6;font-size:12px}.filter-label select{background:#111211;color:#eae5dc;border:1px solid #504b44;padding:10px;margin-left:8px}.project-item .secondary{flex-shrink:0}@media(max-width:780px){.project-stats{grid-template-columns:1fr}.project-item{align-items:flex-start;flex-direction:column}}
.billing-current{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.billing-current h3{margin:6px 0 0}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.plans article{border:1px solid #403d38;padding:28px;display:flex;flex-direction:column;gap:6px}.plans article.current{border-color:#bda585;background:#1c1d1b}.plans span{font-size:10px;letter-spacing:.15em;color:#bda585}.plans strong{font:400 48px 'Playfair Display',serif;margin:14px 0 0}.plans strong small{font:12px 'DM Sans',sans-serif;color:#aaa59b;margin-left:6px}.plans p{font-size:13px;flex-grow:1}.plans button{margin-top:10px}@media(max-width:780px){.plans{grid-template-columns:1fr}}

.subscription-alert{border:1px solid #bda585;background:#26231f;padding:18px 22px;margin-top:25px;display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:#eae5dc}.subscription-alert strong{font-family:'Playfair Display',serif;font-size:20px}.subscription-alert .secondary{margin-left:auto}
/* Phase 2.2: real studio dashboard */
.dashboard-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;flex-wrap:wrap}.dashboard-heading h2{margin:8px 0}.dashboard-heading p{margin:0}.dashboard-actions{display:flex;gap:10px;flex-wrap:wrap}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:30px 0}.dashboard-metrics article{border:1px solid #45413a;background:#1b1c1a;padding:23px;display:flex;flex-direction:column;gap:12px}.dashboard-metrics span{color:#bca483;font-size:10px;letter-spacing:.13em}.dashboard-metrics strong{font:normal 48px 'Playfair Display',serif}.dashboard-metrics small{color:#b0a99e}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:18px;align-items:start}.dashboard-main,.dashboard-side{min-width:0}.dash-panel{margin:0 0 18px;padding:25px}.dash-panel h3{margin:6px 0 0}.dash-items{margin-top:20px}.dash-item{display:flex;align-items:center;gap:13px;padding:16px 0;border-top:1px solid #393832;min-width:0}.dash-date,.dash-avatar{flex:0 0 49px;min-height:49px;background:#2d2b27;border:1px solid #4a4238;display:flex;flex-direction:column;align-items:center;justify-content:center}.dash-date strong{font:25px 'Playfair Display',serif}.dash-date small{font-size:10px;text-transform:uppercase;color:#c4ab88}.dash-avatar{font:23px 'Playfair Display',serif;color:#d4b88e}.dash-item-body{flex:1;min-width:0}.dash-item-body strong{display:block;font-size:13px;overflow-wrap:anywhere}.dash-item-body small{display:block;color:#b3aba0;margin-top:6px;line-height:1.5}.dash-status{border:1px solid #74634f;color:#c9b08e;font-size:10px;padding:6px 8px;white-space:nowrap}.dash-text-button,.dash-delete{border:0;background:transparent;color:#d6ba93;cursor:pointer;font-size:12px;white-space:nowrap}.dash-delete{font-size:21px;padding:3px 7px}.dash-empty{padding:20px 0}.dash-search{display:flex;flex-direction:column;gap:8px;margin-top:22px;color:#c4b6a4;font-size:11px}.dash-search input,.dash-task-form input,.dash-task-form select{width:100%;background:#111211;color:#eee6db;border:1px solid #544b40;padding:12px;min-width:0}.dash-task-count{font-size:11px;color:#cbb28d}.dash-task-form{margin:20px 0}.dash-task-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.dash-task-form button{width:100%}.dash-task{display:flex;align-items:start;gap:10px;padding:13px 0;border-top:1px solid #393832}.dash-task input{accent-color:#bda585;margin-top:5px}.dash-task>div{flex:1;min-width:0}.dash-task strong{font-size:12px;display:block;overflow-wrap:anywhere}.dash-task small{display:block;color:#ada69c;margin-top:6px;font-size:11px;line-height:1.5}.dash-task-done{opacity:.55;text-decoration:line-through}.dash-detail{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #393832;padding:13px 0;font-size:12px}.dash-detail span{color:#b3aba0}.dash-detail strong{text-align:right}.dash-panel>.secondary{margin-top:18px}@media(max-width:940px){.dashboard-columns{grid-template-columns:1fr}.dashboard-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-metrics article{padding:16px}.dashboard-metrics strong{font-size:35px}.dash-panel{padding:17px}.dash-item{flex-wrap:wrap}.dash-status{display:none}.dashboard-actions{width:100%}.dashboard-actions button{flex:1}.dash-task-fields{grid-template-columns:1fr}}

/* Phase 2.3 — premium studio workspace and responsive left navigation */
.shell.shell-desk{max-width:none;padding:0;min-height:100vh}
.desk-layout{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:100vh;background:#111211}
.desk-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:33px 19px 22px;background:#191a18;border-right:1px solid #37352f;overflow-y:auto;z-index:20}
.sidebar-brand{padding:4px 13px 35px;border-bottom:1px solid #38352e;margin-bottom:25px;display:flex;flex-direction:column;gap:8px}
.sidebar-kicker{font-size:9px;color:#d2b894;letter-spacing:.2em;font-weight:700}
.sidebar-brand strong{font:normal 25px 'Playfair Display',serif;letter-spacing:.04em;color:#f0e7d9}
.sidebar-brand strong i{font-weight:400;color:#c4a784}
.sidebar-studio{font-size:11px;color:#a49d92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-section-label{padding:0 13px;margin:0 0 11px;color:#867f74;letter-spacing:.19em;font-size:9px;font-weight:700}
.sidebar-bottom-label{margin-top:33px}
.sidebar-nav{display:flex;flex-direction:column;gap:5px}
.sidebar-link{width:100%;display:flex;align-items:center;gap:13px;min-height:45px;text-align:left;border:1px solid transparent;border-radius:5px;padding:9px 12px;background:transparent;color:#b7b0a4;font-size:12px;letter-spacing:.01em;transition:background .15s,color .15s}
.sidebar-link:hover:not(:disabled){background:#292822;color:#f3e6d3}
.sidebar-link.selected{background:#302d27;color:#f0d8b8;border-color:#4d4335}
.sidebar-link:disabled{opacity:.38;cursor:not-allowed}
.sidebar-icon{font:22px 'Playfair Display',serif;width:23px;text-align:center;color:#c4a784;line-height:1}
.sidebar-selected-mark{margin-left:auto;font-size:21px;color:#c4a784}
.sidebar-spacer{flex:1;min-height:28px}
.sidebar-account{display:flex;align-items:center;gap:11px;padding:16px 8px 13px;border-top:1px solid #38352e}
.sidebar-monogram{width:38px;height:38px;border-radius:50%;background:#39342c;color:#e6d0ae;display:grid;place-items:center;font:21px 'Playfair Display',serif;flex-shrink:0}
.sidebar-account>div:last-child{min-width:0}.sidebar-account strong,.sidebar-account small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account strong{font-size:12px;color:#eee4d5}.sidebar-account small{font-size:10px;color:#a49d92;margin-top:5px}
.sidebar-signout{padding:12px 10px;border:0;background:transparent;color:#bba88d;text-align:left;font-size:11px;display:flex;justify-content:space-between}
.desk-main{min-width:0;padding:0 clamp(24px,4.5vw,74px) 80px;max-width:1550px;width:100%;margin:0 auto}
.desk-hero{padding:54px 0 32px}.desk-hero h1{font-size:clamp(37px,4vw,57px);margin:8px 0 9px}.desk-hero p:last-child{margin:0}.desk-main .content{padding-top:25px}
.desk-main .dashboard-heading h2{font-size:clamp(27px,3vw,37px)}
.desk-main .dashboard-metrics{margin-top:26px}
.desk-mobilebar{display:none}
@media(max-width:1000px){.desk-layout{grid-template-columns:218px minmax(0,1fr)}.desk-sidebar{padding-left:12px;padding-right:12px}.desk-main{padding-left:25px;padding-right:25px}.dashboard-columns{grid-template-columns:1fr}}
@media(max-width:700px){.desk-layout{display:block}.desk-sidebar{position:fixed;top:57px;bottom:0;left:0;width:min(310px,86vw);height:calc(100vh - 57px);transform:translateX(-110%);transition:transform .2s ease;box-shadow:10px 10px 35px #0007}.desk-sidebar.sidebar-open{transform:translateX(0)}.desk-main{padding:0 17px 65px}.desk-mobilebar{display:flex;position:sticky;top:0;z-index:30;align-items:center;justify-content:space-between;min-height:57px;margin:0 -17px;padding:0 18px;background:#191a18;border-bottom:1px solid #39362f;font-size:10px;letter-spacing:.14em;color:#c6b092}.desk-menu-toggle{border:0;background:none;color:#e7d8c2;font-size:18px;display:flex;gap:9px;align-items:center}.desk-menu-toggle span{font-size:10px;letter-spacing:.15em}.desk-hero{padding:32px 0 22px}.desk-hero h1{font-size:38px}.dashboard-heading{align-items:flex-start}}
/* Phase 2.4: The Vault Designer */
.vault-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:26px}.vault-heading h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(28px,3vw,43px);margin:5px 0}.vault-heading h2 em{color:#c7a57c}.vault-editor-layout{display:grid;grid-template-columns:minmax(280px,370px) minmax(0,1fr);gap:24px;align-items:start}.vault-controls{background:#211e1b;border:1px solid #4b4036;border-radius:10px;overflow:hidden}.vault-tabs{display:grid;grid-template-columns:1fr 1fr}.vault-tabs button{padding:16px 8px;background:#171513;color:#a99c8e;border:0;border-bottom:1px solid #51463a;cursor:pointer}.vault-tabs button.selected{color:#f4e9d9;background:#302922;border-bottom:2px solid #c7a57c}.vault-control-group{padding:22px;border-bottom:1px solid #453b32}.vault-control-group h3{font:400 20px Georgia,serif;margin:0 0 16px}.vault-control-group .field{margin-bottom:12px}.vault-theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.vault-theme-options button{border:1px solid #5c4d3d;border-radius:6px;background:transparent;color:#f3e9d9;cursor:pointer;padding:6px;min-width:0}.vault-theme-options button.chosen{outline:2px solid #c7a57c}.vault-theme-options button span{display:grid;place-items:center;height:52px;font-size:22px}.vault-theme-options button small{display:block;font-size:10px;padding:7px 0;line-height:1.4}.vault-colors{display:flex;gap:10px;justify-content:space-between;margin-top:18px}.vault-colors label{font-size:11px;display:flex;align-items:center;gap:5px}.vault-colors input{width:32px;height:32px;padding:0;border:0;background:transparent;cursor:pointer}.vault-check{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #39332e;font-size:13px;cursor:pointer}.vault-check input{accent-color:#c7a57c;width:17px;height:17px}.vault-save{margin:18px 5%;width:90%}.vault-preview-column{min-width:0;position:sticky;top:18px}.vault-preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:11px;letter-spacing:1px;color:#c7a57c}.vault-device-buttons{display:flex;gap:3px;background:#29231e;border-radius:7px;padding:4px}.vault-device-buttons button{background:none;border:0;border-radius:5px;color:#b8aa9b;padding:7px 10px;cursor:pointer;text-transform:capitalize;font-size:11px}.vault-device-buttons button.selected{background:#c7a57c;color:#171411}.vault-preview{width:100%;min-height:560px;max-height:720px;overflow:auto;border:1px solid #75614b;border-radius:7px;box-shadow:0 15px 40px #0003;margin:0 auto;transition:max-width .2s ease}.vault-device-tablet{max-width:650px}.vault-device-mobile{max-width:360px}.vault-preview-header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:18px 22px;font:10px Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}.vault-preview-art{height:190px;background:linear-gradient(125deg,#494037,#211e1b 60%,#544334);display:grid;place-items:center;text-align:center;font:11px Georgia,serif;letter-spacing:2px;color:#e8d4bb}.vault-preview-image{height:220px;background-size:cover;background-position:center}.vault-preview-intro{text-align:center;padding:40px 24px 26px}.vault-preview-intro span{font:10px Arial,sans-serif;letter-spacing:2px}.vault-preview-intro h2{font:normal clamp(25px,3vw,45px) Georgia,serif;margin:14px 0}.vault-preview-intro p{font:15px/1.7 Georgia,serif;max-width:520px;margin:auto;white-space:pre-line}.vault-preview-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 26px 30px}.vault-preview-tiles>div{border:1px solid;padding:23px 10px;display:flex;flex-direction:column;gap:9px;align-items:center;text-align:center}.vault-preview-tiles strong{font:normal 14px Georgia,serif}.vault-preview-footer{text-align:center;font:11px Georgia,serif;padding:25px;opacity:.75}.vault-preview-note{text-align:center;font-size:12px}.vault-client-item{display:flex;flex-direction:column;text-align:left;width:100%;padding:12px;margin:7px 0;border:1px solid #55483b;border-radius:5px;background:#2b251f;color:#f2e8d8;cursor:pointer}.vault-client-item.selected{border-color:#c7a57c}.vault-client-item small{color:#a99c8e;margin-top:5px}@media(max-width:1050px){.vault-editor-layout{grid-template-columns:1fr}.vault-preview-column{position:static}}@media(max-width:600px){.vault-heading{align-items:flex-start;flex-direction:column}.vault-preview-toolbar{flex-wrap:wrap}.vault-preview-tiles{padding:12px;gap:7px}.vault-preview-tiles>div{padding:15px 5px}}
