:root{--g:#173b25;--g2:#265f3b;--lime:#a6ce39;--bg:#f3f5f2;--card:#fff;--text:#152019;--muted:#68736b;--line:#dbe2dc;--red:#b42318}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.shell{max-width:1100px;margin:auto;min-height:100vh}.top{position:sticky;top:0;z-index:20;background:var(--g);color:#fff;padding:10px 14px;display:flex;gap:12px;align-items:center}.logo{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:10px}.brand h1{font-size:17px;margin:0}.brand p{font-size:12px;margin:3px 0 0;color:#dbe8dd}.top .right{margin-left:auto}.tabs{position:sticky;top:78px;z-index:19;background:#fff;padding:8px;display:flex;gap:6px;overflow:auto;border-bottom:1px solid var(--line)}.tabs button{border:0;border-radius:999px;padding:9px 12px;white-space:nowrap;font-weight:800;background:#edf1ed}.tabs .on{background:var(--lime)}main{padding:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:15px;margin-bottom:13px;box-shadow:0 7px 24px rgba(20,55,31,.08)}.hero{background:linear-gradient(135deg,var(--g),var(--g2));color:#fff}.muted{font-size:13px;color:var(--muted)}h2{margin:0 0 10px;font-size:20px}label{display:block;font-size:11px;font-weight:900;text-transform:uppercase;color:var(--muted);margin:0 0 5px}input,select,textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff}textarea{min-height:90px}.grid{display:grid;gap:10px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.btn{border:0;border-radius:9px;padding:10px 13px;font-weight:900;background:var(--g);color:#fff}.lime{background:var(--lime);color:#152019}.grey{background:#e8ece8;color:#152019}.danger{background:var(--red)}.notice,.ok,.err{padding:11px;border-radius:10px;margin:9px 0;font-size:13px}.notice{background:#fff7d3;border:1px solid #ead36b}.ok{background:#e9f6e8;border:1px solid #9dd398}.err{background:#fff0ee;border:1px solid #e5a39d}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{background:#eff5ee;border-radius:11px;padding:10px}.stat strong{display:block;font-size:21px}.stat span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}.table{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left}th{font-size:10px;text-transform:uppercase;color:var(--muted)}.lead{background:#f0f8dc;font-weight:900}.pill{display:inline-block;background:#edf1ed;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:900}.scoregrid{display:grid;grid-template-columns:50px repeat(4,minmax(64px,1fr));gap:5px;min-width:600px;align-items:center}.scoregrid input{text-align:center;padding:8px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.photo{overflow:hidden;border-radius:10px;background:#edf1ed}.photo img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.photo div{padding:7px;font-size:11px}.msg{padding:9px 11px;border-radius:10px;background:#edf2ed;margin:7px 0}.msg.me{background:#ebf6d7}.msg p{margin:4px 0}.login{max-width:520px;margin:30px auto;text-align:center}.login .logo{width:150px;height:150px}@media(max-width:720px){.two,.three,.stats{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}}

/* Mobile-first scoring update */
.mobile-score-shell{max-width:620px;margin-left:auto;margin-right:auto}
.hole-progress{text-align:center;font-size:12px;font-weight:900;text-transform:uppercase;color:var(--muted);margin-top:6px}
.hole-title{text-align:center;font-size:30px;font-weight:950;margin:4px 0 14px}
.hole-title span{display:block;font-size:14px;color:var(--muted);margin-top:3px}
.hole-nav{display:flex;gap:7px;overflow-x:auto;padding:4px 1px 10px;scrollbar-width:thin}
.hole-nav button{flex:0 0 42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#eef2ee;font-weight:900}
.hole-nav button.done{background:#dff0bf;border-color:#a6ce39}
.hole-nav button.active{background:var(--green);color:#fff;border-color:var(--green)}
.mobile-score-list{display:flex;flex-direction:column;gap:10px}
.player-score-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff}
.player-score-main{display:flex;align-items:center;justify-content:space-between;gap:12px}
.player-score-main strong{font-size:17px}
.score-meta{font-size:12px;color:var(--muted);margin-top:4px}
.stepper{display:grid;grid-template-columns:44px 58px 44px;gap:5px;align-items:center}
.stepbtn{height:46px;border:0;border-radius:10px;background:#e8ece8;font-size:28px;font-weight:900;color:var(--green)}
.stepbtn.plus{background:var(--lime)}
.mobilegross{height:46px;text-align:center;font-size:22px;font-weight:900;padding:6px}
.mobile-score-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.score-nav-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.score-management-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.score-management-row .btn{width:100%;min-width:0;padding:12px 6px;font-size:15px;line-height:1.1}
.mobile-score-actions .wide{grid-column:1/-1;padding:14px;font-size:16px}
@media(max-width:620px){
  body{background:#f3f5f2}
  .shell{width:100%;max-width:none}
  .top{padding:8px 10px}
  .top .logo{width:48px;height:48px}
  .brand h1{font-size:15px}
  .tabs{top:64px;padding:7px 8px}
  .tabs button{padding:9px 11px;font-size:13px}
  main{padding:9px}
  .card{padding:12px;border-radius:13px}
  .mobile-score-shell{max-width:none}
  .player-score-main{align-items:flex-start}
  .stepper{grid-template-columns:42px 54px 42px}
  .stepbtn,.mobilegross{height:44px}
}
@media(min-width:900px){
  .mobile-score-shell{max-width:680px}
}

/* Reliability, contrast and mobile photo picker fixes */
.hero .stat strong{color:var(--text)}
.hero .stat span{color:var(--muted)}
.hole-nav button.active{background:var(--g);color:#fff;border-color:var(--g)}
.stepbtn{color:var(--g)}
.btn:disabled{opacity:.6;cursor:not-allowed}
.photo-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.photo-picker{width:100%;min-height:92px;border:2px dashed var(--line);border-radius:14px;background:#f8faf8;display:flex;align-items:center;gap:13px;padding:16px;text-align:left;color:var(--text);margin-bottom:12px}
.photo-picker-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--lime);font-size:30px;font-weight:800;line-height:1}
.photo-picker strong{display:block;font-size:18px}
.photo-picker small{display:block;color:var(--muted);margin-top:3px;font-size:12px}
.photo-preview{margin-bottom:12px}
.photo-preview img{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:12px;background:#edf1ed;margin-bottom:8px}
.photo-upload-btn{width:100%;margin-top:10px;padding:13px}
.hidden{display:none!important}
.leader-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.leader-head h2{margin:0}
.mobile-score-actions .danger{background:var(--red);color:#fff}


/* Combined admin control centre */
.admin-badge{display:inline-block;background:var(--lime);color:var(--text);border-radius:999px;padding:5px 9px;font-size:11px;font-weight:950;letter-spacing:.08em;margin-bottom:7px}
.admin-hero{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(135deg,var(--g),var(--g2));color:#fff}
.admin-hero h2{margin-bottom:3px}.admin-hero p{margin:0;color:#dbe8dd}
.admin-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;border:2px solid var(--lime)}
.admin-strip b{display:block}.admin-strip span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.admin-strip select{max-width:230px}
.warn-pill{display:inline-block;background:#fff0ee;color:var(--red);border:1px solid #e5a39d;padding:3px 7px;border-radius:999px;font-size:11px;font-weight:900}
.mini-danger{display:block;margin-top:7px;border:0;border-radius:7px;padding:6px 9px;background:#fff0ee;color:var(--red);font-size:11px;font-weight:900}
@media(max-width:620px){.admin-hero,.admin-strip{align-items:stretch;flex-direction:column}.admin-strip select{max-width:none}.admin-hero .btn{width:100%}}

/* Update 1: player wipe scoring */
.score-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.wipebtn{height:42px;border:1px solid #d6a6a1;border-radius:10px;background:#fff5f4;color:var(--red);font-weight:900;padding:0 12px}
.wipebtn.on{background:var(--red);color:#fff;border-color:var(--red)}
.player-score-card.wiped{border-color:#d6a6a1;background:#fffafa}
@media(max-width:620px){.score-controls{width:100%;justify-content:space-between}.wipebtn{flex:1;min-width:86px}}
.round-confirm-card{margin-top:16px;padding:16px;border:1px solid #d6d6d6;border-radius:14px;background:#f7f7f7}.round-confirm-card.finalised{background:#e8f5e9;border-color:#a5d6a7}.round-confirm-card h3{margin:0 0 6px}.round-confirm-card p{margin:0 0 12px}.final-pill{display:inline-block;padding:4px 9px;border-radius:999px;background:#dff3e2;color:#176b2c;font-weight:800;font-size:12px}.cb-mark{display:inline-block;margin-left:5px;padding:2px 5px;border-radius:5px;background:#111;color:#fff;font-size:10px;font-weight:800;vertical-align:middle}.points-cell{white-space:nowrap}.round-final-status{margin-bottom:12px}
.suspense-banner{background:linear-gradient(135deg,#111,#2a2a2a);color:#fff;border-left:5px solid #b7e532;padding:16px;border-radius:14px;margin:0 0 14px;line-height:1.45}.suspense-banner b{color:#d9ff62}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #e5e5e5}.setting-row:first-of-type{border-top:0}.setting-row span{color:#666;font-size:.9rem}.adminUnfinalise{margin-top:6px}

/* Master correction update: compact hole grid, scoring context and points badges */
.hole-nav{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:6px;overflow:visible;padding:4px 0 12px}
.hole-nav button{width:100%;min-width:0;height:38px;border-radius:10px;font-size:12px;padding:0}
.player-score-info{min-width:0}
.score-controls{display:flex;flex-direction:column;align-items:stretch;gap:7px;flex:0 0 auto}
.score-result-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.wipebtn{height:38px;min-width:0;width:100%;padding:0 8px}
.points-badge{height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:950;color:#fff;white-space:nowrap}
.points-badge.low{background:#1976d2}.points-badge.two{background:#111}.points-badge.high{background:#c0392b}.points-badge.pending{background:#7b8580}
@media(max-width:620px){
  .hole-nav{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
  .hole-nav button{height:38px}
  .player-score-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}
  .score-controls{width:auto;justify-content:initial}
  .score-meta{font-size:11px;line-height:1.35}
  .wipebtn{flex:none;min-width:0}
}

/* Master correction 2: compact Front 9 / Back 9 navigation and round reset */
.hole-nav-wrap{display:flex;flex-direction:column;gap:9px;margin:2px 0 12px}
.hole-nav-section{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:8px}
.hole-nav-label{font-size:12px;font-weight:900;color:var(--muted);white-space:nowrap}
.hole-nav{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;padding:0;overflow:visible}
.hole-nav button{height:36px;border-radius:9px;font-size:11px;padding:0}
.danger-zone{border:2px solid #c0392b;background:#fffafa}
.danger-zone h2{color:#9f2f24}
@media(max-width:620px){
  .hole-nav-section{grid-template-columns:52px minmax(0,1fr);gap:5px}
  .hole-nav-label{font-size:10px}
  .hole-nav{grid-template-columns:repeat(9,minmax(0,1fr));gap:3px}
  .hole-nav button{height:32px;border-radius:8px;font-size:9px;letter-spacing:-.3px}
}

.mobile-score-actions .tee-request{background:#183f2a;color:#fff}

/* Master Correction 8: Admin course setup */
.course-setup-card{border:2px solid #cbd7ce}
.course-top-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:12px}
.course-actions{display:flex;gap:8px;margin-top:12px}.compact-help{margin-top:8px}
.tee-editor-list{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.tee-editor{border:1px solid var(--line);border-radius:12px;background:#f8faf8;overflow:hidden}
.tee-editor summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;padding:14px;list-style:none}.tee-editor summary::-webkit-details-marker{display:none}.tee-editor summary span{color:var(--muted);font-size:12px;text-align:right}
.tee-editor-body{padding:0 14px 14px}.tee-main-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:8px}
.hole-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px}.hole-edit-head,.hole-edit-row{display:grid;grid-template-columns:44px 1fr 1fr;gap:5px;align-items:center}.hole-edit-head{grid-column:1/-1;font-size:11px;font-weight:900;color:var(--muted)}.hole-edit-head span:first-child{grid-column:1}.hole-edit-row{padding:6px;border:1px solid var(--line);border-radius:9px;background:#fff}.hole-edit-row b{text-align:center}.hole-edit-row input{padding:7px;text-align:center}
.tee-editor-actions{display:flex;gap:8px;margin-top:12px}
@media(max-width:720px){.course-top-grid{grid-template-columns:1fr}.course-top-grid .btn{width:100%}.course-actions{display:grid;grid-template-columns:1fr 1fr}.tee-main-grid{grid-template-columns:1fr 1fr}.hole-editor{grid-template-columns:1fr 1fr}.tee-editor summary{flex-direction:column}.tee-editor summary span{text-align:left}.tee-editor-actions .btn{flex:1}}
/* Correction 10: gender-specific course and tee editor */
.tee-editor summary>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tee-gender-pill{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e7f2d0;color:#36520f;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.tee-identity-grid{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin-bottom:12px}
.gender-course-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gender-course-block{border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px}
.gender-course-block.gender-disabled{background:#f4f5f4}
.gender-course-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid var(--line)}
.gender-course-title>div{display:flex;flex-direction:column}.gender-course-title b{font-size:17px}.gender-course-title span{font-size:11px;color:var(--muted)}
.gender-available{display:flex!important;align-items:center;gap:6px;font-size:12px!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap}.gender-available input{width:18px;height:18px;margin:0}
.gender-rating-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gender-course-block .hole-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.gender-course-block .hole-edit-head{display:grid;grid-template-columns:44px 1fr 1fr;gap:5px;grid-column:1/-1;text-align:center}
.gender-course-block .hole-edit-head span{grid-column:auto!important}
.gender-course-block .hole-edit-row{grid-template-columns:44px 1fr 1fr}
@media(max-width:900px){.gender-course-grid{grid-template-columns:1fr}.gender-course-block .hole-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.tee-identity-grid,.gender-rating-grid{grid-template-columns:1fr 1fr}.gender-course-title{align-items:flex-start;flex-direction:column}.gender-course-block .hole-editor{grid-template-columns:1fr 1fr}.gender-course-block{padding:10px}.gender-course-block .hole-edit-row{grid-template-columns:38px 1fr 1fr}.gender-course-block .hole-edit-head{grid-template-columns:38px 1fr 1fr}}

/* Correction 11: independent course library and round assignment */
.course-library-select{display:grid;grid-template-columns:minmax(260px,620px);margin-top:12px}
.course-assignment-card{margin-top:16px}
.assignment-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:12px}
.gender-index-warning{margin-bottom:12px;border-color:#e5b94f;background:#fff7d6;color:#634b00}
.gender-course-block .hole-edit-head,.gender-course-block .hole-edit-row{grid-template-columns:52px minmax(72px,1fr) minmax(72px,1fr)}
.gender-course-block .hole-edit-head span{text-align:center}
.gender-course-block .hole-edit-head span:first-child{text-align:left;padding-left:8px}
@media(max-width:760px){.assignment-grid{grid-template-columns:1fr}.assignment-grid .btn{width:100%}}

.unverified-block{border:2px solid #d59a00!important;background:#fff8df!important}.unverified-block .gender-course-title span{color:#8a5b00;font-weight:800}.unverified-row input{background:#fff1c2;border-color:#d59a00}.unverified-note{background:#fff3cd;border:1px solid #e0b43c;padding:10px;border-radius:10px;color:#684b00;font-weight:700}

/* Master Correction 13: portrait mobile course editor */
.gender-course-grid,.gender-course-block,.gender-rating-grid,.hole-editor,.hole-edit-row,.hole-edit-head{min-width:0}
.gender-course-block input,.gender-course-block select{min-width:0;max-width:100%}
@media(max-width:620px){
  main{overflow-x:hidden}
  .course-setup-card{padding:10px}
  .tee-editor-body{padding:0 8px 10px}
  .tee-identity-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px}
  .gender-course-block{width:100%;max-width:100%;padding:9px;overflow:hidden}
  .gender-rating-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px}
  .gender-rating-grid label{font-size:10px;white-space:normal}
  .gender-course-block .hole-editor{grid-template-columns:minmax(0,1fr);gap:6px;width:100%}
  .gender-course-block .hole-edit-head,
  .gender-course-block .hole-edit-row{grid-template-columns:42px minmax(0,1fr) minmax(0,1fr);gap:5px;width:100%}
  .gender-course-block .hole-edit-head span:first-child{padding-left:5px}
  .gender-course-block .hole-edit-row{padding:5px}
  .gender-course-block .hole-edit-row input{padding:8px 4px;font-size:16px}
}
@media(max-width:390px){
  .gender-rating-grid{grid-template-columns:1fr}
  .tee-identity-grid{grid-template-columns:1fr}
}

.scorer-tee-list{display:grid;gap:10px;margin:14px 0}.scorer-tee-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(220px,1.2fr);gap:12px;align-items:center;padding:12px;border:1px solid #d9e0dc;border-radius:14px;background:#f8faf9}.scorer-tee-row>div{display:flex;flex-direction:column;gap:3px}.scorer-tee-row span{font-size:.82rem;color:#65716b}.scorer-tee-row select{width:100%;min-width:0}@media(max-width:620px){.scorer-tee-row{grid-template-columns:1fr}.scorer-tee-setup .wide{width:100%}}
.photo-preview video{display:block;width:100%;max-height:360px;border-radius:12px;background:#111;margin-bottom:8px}
.gallery .photo video{display:block;width:100%;max-height:420px;object-fit:contain;background:#111;border-radius:12px}

/* Correction 20: separate photo and video pickers so iPhone shows video library files */
.media-picker-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.media-picker-row .photo-picker{height:100%;margin:0}
@media(max-width:600px){.media-picker-row{grid-template-columns:1fr}.media-picker-row .photo-picker{min-height:84px}}

.private-app-badge{display:inline-block;margin:8px 0 4px;padding:5px 9px;border-radius:999px;background:#eaf4d2;color:#24431f;font-size:11px;font-weight:900;letter-spacing:.06em}
.login-intro{margin:0 0 14px;color:var(--muted)}
.security-note{text-align:left;background:#eef6ec;border:1px solid #b9d3b5;border-radius:11px;padding:12px;margin:0 0 15px}
.security-note b{display:block;margin-bottom:4px}
.security-note span{display:block;color:#425147;font-size:13px;line-height:1.4}
.privacy-line{font-size:12px;color:var(--muted);line-height:1.4;margin:12px 0 0}

.social-generator h3{margin-top:22px}
.social-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.social-media-choice{display:block;border:2px solid transparent;border-radius:12px;padding:6px;background:#f3f5f3;cursor:pointer}
.social-media-choice.selected{border-color:#79a719;background:#eff8da}
.social-media-choice input{position:absolute;opacity:0;pointer-events:none}
.social-thumb{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:9px;background:#111}
.social-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.social-media-choice>span{display:block;font-size:12px;padding:6px 2px 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.social-video-badge{position:absolute;left:6px;bottom:6px;background:rgba(0,0,0,.72);color:#fff;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900}
.social-selection-bar{display:flex;justify-content:space-between;align-items:center;margin:12px 0}
.social-order{display:grid;gap:7px;margin-bottom:14px}
.social-order-item{display:grid;grid-template-columns:32px 70px 1fr auto auto;gap:8px;align-items:center;padding:8px;border:1px solid #dfe5df;border-radius:10px}
.social-order-item span{font-weight:900}.social-order-item em{font-style:normal;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.story-preview-strip{display:flex;gap:12px;overflow-x:auto;padding:8px 0 16px;scroll-snap-type:x mandatory}
.story-preview-slide{position:relative;flex:0 0 240px;aspect-ratio:9/16;border-radius:16px;overflow:hidden;background:#102116;color:#fff;padding:22px;scroll-snap-align:start;box-shadow:0 8px 24px rgba(0,0,0,.16)}
.story-preview-slide small{color:#d8ff74;font-weight:900;letter-spacing:.08em}.story-preview-slide h2{font-size:26px;line-height:1.05;margin:12px 0}.story-preview-slide p{line-height:1.35}
.story-preview-slide.media-slide{padding:0;background:#000}.story-preview-slide.media-slide img,.story-preview-slide.media-slide video{width:100%;height:100%;object-fit:cover}
.story-media-caption{position:absolute;left:0;right:0;bottom:0;padding:35px 14px 14px;background:linear-gradient(transparent,rgba(0,0,0,.82));font-weight:800}
.story-number{position:absolute;z-index:2;right:10px;top:10px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#d8ff74;color:#102116;font-weight:900}
.result-slide{display:flex;flex-direction:column}.story-result-list{display:grid;gap:16px;margin-top:14px}.story-result-list div{border-top:1px solid rgba(255,255,255,.2);padding-top:10px}.story-result-list b,.story-result-list strong{display:block}.story-result-list strong{color:#d8ff74;font-size:22px;margin-top:4px}
.title-slide,.end-slide{display:flex;align-items:center}
@media(max-width:600px){.social-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-order-item{grid-template-columns:28px 55px 1fr auto auto}.story-preview-slide{flex-basis:210px}}

.social-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 14px}
.social-mode-toggle .btn{width:100%}

.story-export-screen{margin-top:16px}
.story-export-head,.story-export-progress,.story-export-nav{display:flex;justify-content:space-between;align-items:center;gap:12px}
.story-export-preview{width:min(100%,360px);aspect-ratio:9/16;margin:14px auto;background:#111;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.story-export-preview img,.story-export-preview video{width:100%;height:100%;object-fit:contain;background:#000}
.story-export-list{display:grid;gap:7px;margin:16px 0}
.story-export-list-item{display:grid;grid-template-columns:42px 1fr auto;align-items:center;text-align:left;gap:10px;width:100%;border:1px solid #dfe5df;background:#fff;border-radius:10px;padding:10px;cursor:pointer}
.story-export-list-item.active{border-color:#79a719;background:#f1f8df}
.story-export-list-item.saved em{color:#39720d;font-weight:800}
.story-export-list-item span{font-weight:900}.story-export-list-item em{font-style:normal;color:var(--muted);font-size:12px}
.story-export-nav .btn{flex:1}

.social-format-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.social-format-toggle .btn{width:100%}
.social-reel-settings{padding:12px;border:1px solid #dfe5df;border-radius:12px;background:#f6f8f6;margin-bottom:14px}
.social-reel-settings label{font-weight:800}.social-reel-settings select{margin-top:6px}
.social-smart-tools{display:grid;gap:8px;margin:12px 0;padding:12px;border-radius:12px;background:#f1f8df}
.social-caption-box{margin-top:20px;padding-top:12px;border-top:1px solid #dfe5df}
.social-caption-box textarea{width:100%;resize:vertical}
.reel-timeline{display:flex;gap:8px;overflow-x:auto;padding:10px 0}
.reel-chip{flex:0 0 auto;background:#102116;color:#fff;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:900}

.director-dashboard{background:linear-gradient(145deg,#102116,#1e4a2d);color:#fff;border:0}
.director-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.director-head h2{margin:7px 0 4px;color:#fff}.director-head p{margin:0;color:#c8d5cc}
.director-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.director-tile{appearance:none;text-align:left;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.08);color:#fff;border-radius:14px;padding:15px;min-height:122px;cursor:pointer}
button.director-tile:hover{background:rgba(255,255,255,.13)}
.director-tile span{display:block;color:#d8ff74;font-size:11px;font-weight:900;letter-spacing:.06em}
.director-tile strong{display:block;font-size:26px;margin:10px 0 5px;line-height:1.05}
.director-tile em{display:block;color:#c8d5cc;font-style:normal;font-size:13px}
.director-tile i{display:block;height:7px;background:rgba(255,255,255,.14);border-radius:99px;margin-top:13px;overflow:hidden}
.director-tile i b{display:block;height:100%;background:#b7ef39;border-radius:99px}
.director-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.director-stats div{text-align:center;background:rgba(0,0,0,.16);border-radius:12px;padding:10px}.director-stats b{display:block;font-size:22px;color:#d8ff74}.director-stats span{font-size:12px;color:#c8d5cc}
.director-actions{display:flex;flex-wrap:wrap;gap:8px}.director-actions .lime{font-size:16px;padding-left:20px;padding-right:20px}
.director-queue{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px}.director-queue>b{margin-right:4px}.director-queue span{background:rgba(255,255,255,.1);padding:6px 9px;border-radius:999px;font-size:12px}.director-queue span.done{background:#d8ff74;color:#18331e;font-weight:800}
@media(max-width:760px){.director-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.director-head{align-items:center}.director-actions .btn{flex:1 1 46%}}
@media(max-width:430px){.director-grid{grid-template-columns:1fr 1fr}.director-tile{min-height:112px;padding:12px}.director-tile strong{font-size:21px}.director-stats{grid-template-columns:repeat(4,1fr);gap:5px}.director-stats div{padding:8px 3px}.director-stats b{font-size:19px}.director-actions .btn{flex:1 1 100%}}

#socialPreviewSection{margin-top:22px;padding-top:18px;border-top:3px solid #a6d82f;scroll-margin-top:150px}

.social-brand-assets{margin:18px 0;padding:16px;border:1px solid #dfe5df;border-radius:14px;background:#f7f9f7}
.brand-asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.brand-asset-card{display:grid;gap:9px}
.brand-asset-preview{position:relative;width:min(100%,220px);aspect-ratio:9/16;background:#142119;border-radius:12px;overflow:hidden;display:grid;place-items:center;color:#d8ff74;text-align:center;font-size:11px;font-weight:900}
.brand-asset-preview img{width:100%;height:100%;object-fit:cover;display:block}
.brand-asset-preview span{display:none;padding:16px}
#socialPreviewSection{margin-top:18px;padding-top:16px;border-top:3px solid #a6d82f;scroll-margin-top:140px}
@media(max-width:600px){.brand-asset-grid{grid-template-columns:1fr}.brand-asset-preview{width:180px}}

.reel-visual-preview{display:flex;gap:12px;overflow-x:auto;padding:12px 2px 18px;scroll-snap-type:x mandatory}
.reel-preview-card{position:relative;flex:0 0 170px;aspect-ratio:9/16;border-radius:15px;overflow:hidden;background:#15251a;color:#fff;scroll-snap-align:start;box-shadow:0 7px 18px rgba(0,0,0,.16)}
.reel-preview-card img{width:100%;height:100%;object-fit:cover}
.reel-preview-card>span{position:absolute;z-index:2;top:8px;left:8px;background:#a6d82f;color:#122018;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900}
.reel-preview-card>b{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:28px 10px 10px;background:linear-gradient(transparent,rgba(0,0,0,.88));font-size:13px}
.reel-preview-card>em{position:absolute;z-index:3;left:10px;right:10px;bottom:33px;font-style:normal;font-size:10px;color:#e8eee9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reel-preview-card.missing:after{content:"Upload this slide above";position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:18px;color:#d8ff74;font-weight:900;background:#153e25}
.reel-preview-card.result{display:grid;place-items:center;text-align:center;background:linear-gradient(145deg,#123f27,#07150d)}
.reel-preview-card.result div{padding:20px}.reel-preview-card.result strong{display:block;color:#d8ff74;font-size:18px}.reel-preview-card.result small{display:block;margin-top:8px}
.reel-preview-summary{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.reel-preview-summary>*{background:#eef3ee;border-radius:999px;padding:6px 10px;font-size:12px}

.brand-library-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.brand-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.brand-slot-card{border:2px solid transparent;border-radius:12px;padding:7px;background:#fff}
.brand-slot-card.selected{border-color:#79a719;background:#f2f9df}
.brand-slot-select{border:0;background:transparent;padding:0;width:100%;text-align:left;cursor:pointer}
.brand-slot-select>span{font-size:10px;font-weight:900;color:#577050}
.brand-slot-select>b{display:block;font-size:11px;margin-top:5px}
.brand-slot-preview{aspect-ratio:9/16;background:#173722;border-radius:8px;overflow:hidden;display:grid;place-items:center;color:#d8ff74}
.brand-slot-preview img{width:100%;height:100%;object-fit:cover}.brand-slot-preview em{display:none;font-size:9px;font-style:normal;text-align:center}
.brand-slot-actions{display:grid;gap:5px;margin-top:6px}.brand-slot-actions .btn{font-size:10px;padding:7px 4px}.btn.red{background:#8e2e2e;color:#fff}
@media(max-width:760px){.brand-library-grid{grid-template-columns:1fr}.brand-slot-grid{grid-template-columns:repeat(3,1fr)}}

.brand-story-slide{position:relative;background:#102116}
.brand-story-slide img{width:100%;height:100%;object-fit:cover;display:block}
.brand-missing-message{display:none;position:absolute;inset:0;place-items:center;text-align:center;padding:18px;color:#d8ff74;font-weight:900;background:#153e25}
.brand-story-slide.missing-brand .brand-missing-message{display:grid}
.brand-story-slide.missing-brand img{display:none}
