.libraryPage{min-height:100vh;background:#f5f7fa;color:#17202a;padding:28px 34px;font-family:Inter,system-ui,-apple-system,sans-serif}.libraryTop{display:flex;align-items:center;gap:22px;margin-bottom:20px}.libraryTop>div:nth-child(2){flex:1}.libraryTop span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#6f7a83}.libraryTop h1{margin:4px 0;font-size:28px}.libraryTop p{margin:0;color:#77818a}.libActions,.detailButtons{display:flex;gap:8px;flex-wrap:wrap}.libBtn,.libPrimary,.libDanger,.libBack,.libModalHead button{border:1px solid #d8dfe4;background:#fff;border-radius:8px;padding:10px 13px;display:inline-flex;align-items:center;gap:7px;cursor:pointer;font:inherit;font-weight:700}.libPrimary{background:#15232d;color:#fff;border-color:#15232d}.libDanger{color:#b42318;border-color:#efc7c3}.libBack{background:transparent}.libNotice{background:#eaf6ee;border:1px solid #c4e6cf;color:#23643a;padding:11px 14px;border-radius:9px;margin-bottom:16px}.libTools{display:grid;grid-template-columns:1fr 180px 180px;gap:10px;margin-bottom:18px}.libTools select,.libSearch{background:#fff;border:1px solid #d7dee3;border-radius:9px}.libTools select{padding:10px}.libSearch{display:flex;align-items:center;padding:0 11px}.libSearch input{width:100%;border:0;outline:0;padding:11px;font:inherit}.libGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.libCard{position:relative;background:#fff;border:1px solid #e1e6e9;border-radius:11px;padding:16px 62px 16px 16px;cursor:pointer;transition:.15s}.libCard:hover{transform:translateY(-1px);box-shadow:0 7px 22px #17202a0d}.libCard span:not(.foodSymbol),.libCard p,.libCard small{font-size:12px;color:#727d85}.libCard h3{font-size:15px;margin:7px 0}.libCard p{margin-bottom:5px}.cardFoodSymbols{position:absolute;top:14px;right:14px;display:flex;gap:5px;align-items:center}.foodTags{display:flex;gap:7px;align-items:center;margin-bottom:10px}.foodSymbol{width:21px;height:21px;border:2px solid currentColor;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;background:#fff;flex:0 0 auto}.foodSymbol i{display:block;width:11px;height:11px;border-radius:50%;background:currentColor}.foodVEG{color:#159447}.foodNONVEG{color:#d52b2b}.foodEGG{color:#e1ad01}.libEmpty{grid-column:1/-1;text-align:center;color:#7d8790;padding:50px;display:grid;justify-items:center;gap:8px}.libOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0d151db8;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px}.libModal{background:#fff;width:min(720px,100%);max-height:92vh;overflow:auto;border-radius:14px}.libModalHead{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #edf0f2;position:sticky;top:0;background:#fff;z-index:2}.libModalHead h3{margin:0}.libModalHead button{padding:8px}.recipeDetail,.recipeForm,.importPreview{padding:20px}.detailMeta,.tagText{font-size:12px;color:#727d85}.recipeDetail h4{margin:18px 0 7px}.recipeDetail pre{white-space:pre-wrap;font:13px/1.55 Inter,system-ui,sans-serif;background:#f7f9fa;padding:12px;border-radius:8px}.detailButtons{margin-top:20px}.recipeForm{display:grid;gap:14px}.recipeForm label{display:grid;gap:6px;font-size:12px;font-weight:800}.recipeForm input,.recipeForm textarea{border:1px solid #d7dee3;border-radius:8px;padding:10px;font:inherit;resize:vertical}.recipeForm label small{font-weight:500;color:#77818a}.form2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.foodField{border:1px solid #d7dee3;border-radius:9px;padding:12px}.foodField legend{font-size:12px;font-weight:800;padding:0 5px}.foodChecks{display:flex;gap:10px;flex-wrap:wrap}.foodCheck{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:center;gap:7px!important;border:1px solid #e3e7ea;border-radius:8px;padding:8px 10px;font-weight:700!important}.foodCheck input{margin:0}.saveRecipe{justify-content:center}.importStats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.importStats div{background:#f7f9fa;border-radius:9px;padding:14px}.importStats strong,.importStats span{display:block}.importStats strong{font-size:25px}.importStats span{font-size:12px;color:#77818a}.importPreview>p{font-size:13px;color:#66727b;margin:14px 0}.previewNames{max-height:230px;overflow:auto;border:1px solid #edf0f2;border-radius:8px;padding:10px;margin-bottom:15px}.previewNames span{display:block;font-size:12px;padding:4px}@media(max-width:900px){.libraryPage{padding:18px 12px}.libraryTop{align-items:flex-start;flex-wrap:wrap}.libActions{width:100%}.libTools{grid-template-columns:1fr}.libGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.libGrid,.form2{grid-template-columns:1fr}.libraryTop h1{font-size:24px}}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:#f5f7fa;color:#17202a}.app{display:grid;grid-template-columns:230px 1fr;min-height:100vh}aside{background:#101820;color:#fff;padding:24px 16px;display:flex;flex-direction:column}.logo{display:flex;gap:11px;align-items:center;font-weight:800;letter-spacing:.08em}.logo>span,.brandMark{background:#fff;color:#101820;border-radius:10px;padding:10px;font-weight:900}.logo small{display:block;color:#8f9aa4;font-size:10px;margin-top:3px}nav{margin-top:34px;display:grid;gap:6px}nav button,.sideBottom button{border:0;background:transparent;color:#aeb7bf;padding:11px;border-radius:9px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer}nav button.active,nav button:hover,.sideBottom button:hover{background:#202c35;color:#fff}.sideBottom{margin-top:auto}.user{border-top:1px solid #29343d;padding:18px 10px 8px}.user b,.user span{display:block}.user span{font-size:12px;color:#84909a;text-transform:capitalize;margin-top:3px}main{padding:28px 34px;min-width:0}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}h1,h2,h3,p{margin-top:0}header h1{font-size:26px;margin-bottom:4px}header p,.panelHead p,.muted{color:#77818a}.primary,.ghost,.action,.icon{border:0;border-radius:8px;padding:10px 13px;cursor:pointer;display:inline-flex;align-items:center;gap:7px}.primary{background:#15232d;color:#fff;font-weight:700}.primary.small{padding:9px 12px}.ghost{background:#fff;border:1px solid #dde3e8;color:#33414b}.icon{background:#f2f4f6}.notice{background:#eaf6ee;border:1px solid #c4e6cf;color:#23643a;padding:11px 14px;border-radius:9px;margin-bottom:16px;cursor:pointer}.dashIntro{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e1e6ea;padding:13px 16px;border-radius:10px;margin-bottom:12px}.dashIntro b{font-size:12px;letter-spacing:.1em}.dashIntro span{color:#6f7a83;font-size:13px}.statusCards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.statusCard{background:#fff;border:1px solid #e2e6e9;border-left:6px solid #9aa4ad;padding:16px;border-radius:10px;min-height:112px}.statusCard span,.statusCard small{display:block}.statusCard span{font-size:13px;font-weight:700}.statusCard strong{font-size:32px;display:block;margin:8px 0 2px}.statusCard small{color:#77818a}.statusCard.red{border-left-color:#d9534f;background:#fff9f8}.statusCard.yellow{border-left-color:#e2ad32;background:#fffdf5}.statusCard.green{border-left-color:#38a169;background:#f7fcf8}.statusCard.urgent{border-left-color:#b42318;background:#fff3f2}.statusCard.urgent strong{color:#b42318}.sectionLabel{font-size:11px;font-weight:900;letter-spacing:.13em;color:#6e7880;margin:6px 2px 10px}.panel,.specialPanel{background:#fff;border:1px solid #e0e5e9;border-radius:12px;margin:18px 0;overflow:hidden}.panelHead,.specialHead{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 12px}.panelHead h2,.specialHead h2{font-size:18px;margin-bottom:3px}.panelHead p,.specialHead p{font-size:13px;margin-bottom:0}.specialPanel{border:1px solid #f0c2bd;background:snow}.specialHead>div{display:flex;gap:12px;align-items:flex-start}.specialHead svg{color:#b42318}.specialCount{background:#b42318;color:#fff;padding:6px 9px;border-radius:999px;font-size:12px;font-weight:800}.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;background:#f8fafb;color:#69747d;font-size:11px;text-transform:uppercase;letter-spacing:.04em}th,td{padding:12px 14px;border-top:1px solid #edf0f2;vertical-align:middle}td b,td small{display:block}td small{color:#7a858e;margin-top:3px}.urgentRow{background:#fff9f8}.priority{font-size:11px;font-weight:800;padding:5px 8px;border-radius:999px;background:#eef1f3}.priority.urgent{background:#fde8e6;color:#b42318}.badge{font-size:11px;font-weight:800;padding:5px 8px;border-radius:999px}.badge.pending,.badge.needs_attention{background:#fde8e6;color:#a52a21}.badge.in_progress{background:#fff0c9;color:#8a6200}.badge.done{background:#dff4e5;color:#23733d}.actions{display:flex;gap:6px;align-items:center;white-space:nowrap}.action{padding:7px 9px;background:#eef2f4}.action.done{background:#dff4e5;color:#246c39}.action:disabled{opacity:.42;cursor:not-allowed}.complete{color:#23733d;font-weight:700}.profileStrip{display:flex;gap:8px;overflow:auto;padding:4px 20px 14px}.profileStrip button{min-width:135px;background:#f7f9fa;border:1px solid #e0e5e8;border-radius:10px;padding:11px;text-align:left;cursor:pointer}.profileStrip button b,.profileStrip button small{display:block}.profileStrip button small{color:#77818a;margin-top:4px}.profileStrip button.chosen{background:#172832;color:#fff;border-color:#172832}.profileStrip button.chosen small{color:#c4cdd3}.teamFilters{padding:0 20px 14px;display:flex;gap:10px}.teamFilters label,.quickForm label{display:grid;gap:6px;font-size:12px;font-weight:700}select,input,textarea{font:inherit;border:1px solid #d7dee3;border-radius:8px;padding:10px;background:#fff}.teamFilters select{margin-left:8px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0d151db8;display:flex;align-items:center;justify-content:center;padding:20px;z-index:20}.modal{background:#fff;width:min(600px,100%);max-height:90vh;overflow:auto;border-radius:14px;padding-bottom:18px}.modalHead{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #edf0f2}.modalHead h3{margin:0}.quickForm{padding:18px 20px;display:grid;gap:15px}.fieldLabel{font-size:12px;font-weight:700;display:block;margin-bottom:7px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chips button{border:1px solid #d8dfe4;background:#fff;padding:9px 12px;border-radius:8px;cursor:pointer}.chips button.selected{background:#172832;color:#fff;border-color:#172832}.chips .urgentChip.selected{background:#b42318;border-color:#b42318}.assignBig{justify-content:center;padding:13px}.addedList{margin:0 20px;padding:13px;background:#f7f9fa;border-radius:9px;font-size:12px}.addedList div{padding-top:6px;color:#52606a}.attendanceSummary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.attendanceSummary>div{background:#fff;border:1px solid #e1e6e9;border-radius:10px;padding:15px}.attendanceSummary strong,.attendanceSummary span{display:block}.attendanceSummary strong{font-size:25px}.attendanceSummary span{font-size:12px;color:#77818a}.attendanceSummary .green{border-left:5px solid #38a169}.attendanceSummary .red{border-left:5px solid #d9534f}.attendanceStatus{font-weight:800}.attendanceStatus.online{color:#27844a}.attendanceStatus.absent{color:#b42318}.dateNav{display:flex;align-items:center;gap:8px;margin-bottom:13px}.dateNav b{min-width:180px;text-align:center}.sessionList{padding:0 20px}.sessionRow{display:grid;grid-template-columns:1fr repeat(3,1fr);gap:12px;padding:13px 0;border-bottom:1px solid #edf0f2}.sessionRow span,.sessionRow strong{display:block;font-size:12px}.search{margin:0 20px 16px;display:flex;align-items:center;gap:8px;border:1px solid #dbe1e5;padding:0 10px;border-radius:8px}.search input{border:0;outline:0;width:100%}.recipeGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 20px 20px}.recipe{border:1px solid #e1e6e9;border-radius:10px;padding:15px}.recipe h3{font-size:15px;margin:6px 0}.recipe p,.eyebrow{font-size:12px;color:#727d85}.workoutText{white-space:pre-wrap;max-height:250px;overflow:auto;font:12px/1.5 ui-monospace,monospace;background:#f7f9fa;padding:9px;border-radius:7px}.empty{text-align:center;color:#7d8790;padding:28px}.login,.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#101820}.loginCard{background:#fff;width:min(390px,90vw);padding:30px;border-radius:14px}.loginCard form{display:grid;gap:14px}.loginCard label{display:grid;gap:6px;font-size:13px}.brandMark{display:inline-block;background:#101820;color:#fff;margin-bottom:15px}.error{color:#b42318;font-size:12px}@media(max-width:850px){.app{display:block}aside{min-height:auto;padding:13px}aside .logo{margin-bottom:8px}nav{margin:0;display:flex;overflow:auto}nav button{white-space:nowrap}.sideBottom{display:flex;align-items:center}.user{display:none}main{padding:18px 12px}.statusCards,.attendanceSummary{grid-template-columns:repeat(2,1fr)}.recipeGrid{grid-template-columns:1fr}.dashIntro{display:block}.dashIntro span{display:block;margin-top:4px}.sessionRow{grid-template-columns:1fr 1fr}.panelHead{align-items:flex-start}.profileStrip button{min-width:120px}}
