.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dashboard{padding-top:34px}
.dashboard-create{max-width:640px;margin:0 auto 52px;padding:0}
.dashboard-create h1{font-size:30px;line-height:1.15;letter-spacing:-.9px;font-weight:750;text-align:center;margin:0 0 30px;color:#182a1f}
.dashboard-create form{margin:0}
.quick-drop{position:relative;display:flex;aspect-ratio:1/1;max-height:min(420px,50vh);width:100%;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1.5px dashed #a9b9a3;background:#fffefb;border-radius:22px;padding:24px;cursor:pointer;margin:0 0 16px;text-align:center;transition:background .15s,border-color .15s;box-shadow:0 12px 40px rgba(37,57,32,.05)}
.quick-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.quick-drop-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#eef3e6;color:#3f5a37;font-size:22px;margin-bottom:6px}
.quick-drop b{font-size:18px;font-weight:700;letter-spacing:-.3px;color:#1c2f24;max-width:100%;overflow-wrap:anywhere}
.quick-drop small{font-size:12px;font-weight:450;color:#7d897a}
.quick-drop.dragover,.quick-drop:hover{background:#f6f9f1;border-color:#5f7d55}
.quick-drop.has-file{border-style:solid;border-color:#5f7d55;background:#f3f8ec}
.quick-field{display:block;margin:0 0 12px}
.quick-field input{height:60px;width:100%;margin:0;padding:0 20px;border:1px solid #c9d3c4;border-radius:14px;background:#fffefb;font-size:15px;text-align:center;box-shadow:inset 0 1px 2px rgba(28,47,24,.03)}
.quick-field input::placeholder{color:#879282}
.quick-field input:focus{outline:2px solid #5f7d55;outline-offset:-1px}
.dashboard-create .button{width:100%;display:flex;justify-content:center;align-items:center;gap:12px;background:#243e2d;color:white;padding:17px 20px;font-size:16px;border-radius:14px}
.dashboard-create .button:disabled{opacity:.6}
.quick-options{margin:16px 0 0;font-size:11px;text-align:center}
.quick-options summary{cursor:pointer;color:#6d7d68;padding:5px 0;list-style:none}
.quick-options summary::before{content:"Advanced ";}
.quick-options>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px;text-align:left}
.quick-options label{display:grid;gap:7px;margin:0;font-size:11px;color:#526647}
.quick-options select{min-width:0;width:100%;padding:10px;border:1px solid #cbd4c7;border-radius:7px;background:#fffefb;color:#223522}
.quick-permission{font-size:10px;font-weight:450;line-height:1.6;color:#8c968c;margin:14px 0 0;text-align:center}
.quick-permission a{text-decoration:underline;color:inherit}
.dashboard-create #quick-status{min-height:18px;font-size:12px;text-align:center;margin:12px 0 0;color:#617051}
.dashboard-create #quick-status:empty{display:none}
.dashboard-create #quick-status.error{color:#a33427}

.dashboard-library{margin-top:0}
.library-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.library-heading h2{font-size:20px;letter-spacing:-.6px;margin:0}
.library-heading h2 span{display:inline-grid;place-items:center;font-size:10px;width:21px;height:21px;background:#e8eddf;border-radius:6px;color:#76836a;margin-left:6px;vertical-align:middle}
.project-search{display:flex!important;align-items:center;border:1px solid #e0e6d8;background:#fffefb;border-radius:8px;margin:0!important;gap:7px!important;padding:8px 12px}
.project-search span{font-size:22px;color:#85947b}
.project-search input{padding:0;background:none;border:0;border-radius:0;font-size:11px;width:175px;outline:none}
.project-filters{display:flex;gap:5px;overflow:auto;margin:20px 0}
.project-filters button{background:transparent;color:#849078;border-radius:7px;padding:8px 13px;font:550 11px system-ui;white-space:nowrap}
.project-filters button.active{background:#e8eedc;color:#536b37}
.dashboard-library.is-empty .project-search,.dashboard-library.is-empty .project-filters{display:none!important}
.dashboard .projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin:0}
.studio-project{display:block;text-decoration:none;background:#fffefb;border:1px solid #e1e6da;border-radius:13px;overflow:hidden;transition:box-shadow .15s,transform .15s;min-width:0}
.studio-project:hover{box-shadow:0 8px 24px rgba(36,57,33,.06);transform:translateY(-2px)}
.project-cover{height:164px;background:linear-gradient(135deg,#e4eadc,#c9d7ba);position:relative;overflow:hidden}
.project-cover img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.cover-placeholder{height:100%;display:grid;place-items:center;font-size:32px;color:#7e9370}
.cover-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;background:rgba(255,255,255,.93);border-radius:50%;width:34px;height:34px;font-size:11px;box-shadow:0 3px 15px rgba(0,0,0,.13)}
.cover-status{position:absolute;right:10px;top:10px;background:rgba(249,255,241,.93);border-radius:5px;padding:5px 7px;font-size:8px;font-weight:650;color:#526b37}
.cover-status.attention{background:#fff6e8;color:#a37b3b}.cover-status.processing{background:#edf3ff;color:#6981b7}
.cover-count{position:absolute;bottom:9px;right:9px;background:rgba(25,40,30,.71);color:white;padding:4px 6px;font-size:8px;border-radius:4px}
.project-info{padding:15px 15px 12px}.project-info h3{margin:0;font-size:13px;font-weight:650;line-height:1.5;letter-spacing:-.2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:39px}
.project-info p{font-size:9px;color:#87947c;margin:8px 0 14px}.project-info footer{border-top:1px solid #eff1ea;padding-top:11px;display:flex;justify-content:space-between;font-size:9px;color:#6c7d5e}
.dashboard .empty{grid-column:1/-1;padding:18px 0;border:0;background:transparent;text-align:left}
.dashboard .empty p{font-size:12px;color:#829275;margin:0}
.dashboard .claim{font-size:11px;color:#88947c;margin-top:30px}.dashboard .claim summary{font-weight:450}
.dashboard-skeleton{color:#7b8b72;padding:20px 0;font-size:12px}

@media(max-width:1250px){.dashboard .projects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
  .dashboard{padding-top:20px}
  .dashboard-create{margin-bottom:38px}
  .dashboard-create h1{font-size:24px;margin-bottom:20px}
  .quick-drop{max-height:300px;border-radius:16px}
  .quick-drop b{font-size:16px}
  .quick-field input{height:56px;font-size:14px;padding:0 15px}
  .quick-options>div{grid-template-columns:1fr}
  .library-heading{display:block}
  .project-search{margin-top:16px!important}.project-search input{width:100%}
  .dashboard .projects{gap:15px;grid-template-columns:1fr}.project-cover{height:205px}.project-info h3{min-height:0;font-size:15px}.project-info p,.project-info footer{font-size:11px}.cover-status,.cover-count{font-size:10px}
  .project-filters{gap:0}.project-filters button{padding:9px 11px}
}
@media(prefers-reduced-motion:reduce){.studio-project{transition:none}.studio-project:hover{transform:none}}

.dashboard-plan{max-width:860px;margin:0 auto 52px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;background:#1c2f24;color:#f4f0e8;border-radius:18px;padding:26px 30px}.plan-eyebrow{display:block;font-size:10px;letter-spacing:.14em;font-weight:750;color:#b9c7a8;margin-bottom:8px}.dashboard-plan h2{margin:0 0 6px;font-size:22px;letter-spacing:-.5px}.dashboard-plan p{margin:0;font-size:13px;line-height:1.55;color:#d9ddd0;max-width:520px}#plan-message:empty{display:none}#plan-message{margin-top:8px;color:#fffdf8;font-weight:650}.plan-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.plan-actions button{background:#e9f0d9;color:#1c2f24;border:0;border-radius:9px;padding:13px 20px;font:700 14px system-ui;cursor:pointer;white-space:nowrap}.plan-actions button:disabled{opacity:.55;cursor:wait}.plan-actions a{color:#d9ddd0;font-size:12px}@media(max-width:600px){.plan-actions{align-items:flex-start;width:100%}}

/* AI visuals: a switch under the input, remembered per browser */
.quick-visuals{position:relative;display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;margin:14px auto 0;padding:9px 16px 9px 10px;border:1px solid #dfe6d8;border-radius:999px;background:#fffefb;cursor:pointer;user-select:none;transition:border-color .2s,background .2s,box-shadow .25s}
.quick-visuals[hidden]{display:none}
.quick-visuals:hover{border-color:#c4d1bb}
.quick-visuals input{position:absolute;top:0;left:0;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.quick-switch{position:relative;flex:none;width:38px;height:22px;border-radius:999px;background:#dfe5da;transition:background .25s}
.quick-switch::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #14241f33;transition:transform .3s cubic-bezier(.2,.9,.25,1)}
.quick-visuals-text{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.quick-visuals b{font-size:13px;font-weight:700;color:#1c2f24}
.quick-visuals small{font-size:12px;color:#7d897a}
.quick-visuals:has(input:checked){border-color:#b9d36a;background:#f6fbe6;box-shadow:0 0 0 3px #d9fa6433}
.quick-visuals input:checked + .quick-switch{background:#182922}
.quick-visuals input:checked + .quick-switch::after{transform:translateX(16px);background:#d9fa64}
.quick-visuals input:focus-visible + .quick-switch{outline:3px solid #9ba93f;outline-offset:2px}
.quick-music{display:flex;align-items:center;gap:10px;width:max-content;max-width:100%;margin:14px auto 0;padding:6px 8px 6px 16px;border:1px solid #dfe6d8;border-radius:999px;background:#fffefb}
.quick-music[hidden]{display:none}
.quick-music label{font-size:13px;font-weight:700;color:#1c2f24;margin:0}
.quick-music select{min-width:0;max-width:62vw;padding:7px 10px;border:1px solid #cbd4c7;border-radius:999px;background:#fff;color:#223522;font-size:13px}
.quick-music-play{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:#182922;color:#d9fa64;cursor:pointer}
.quick-music-play[hidden]{display:none}
.quick-music-play.playing{background:#d9fa64;color:#182922}
.quick-music-play:focus-visible{outline:3px solid #9ba93f;outline-offset:2px}
