.beauty-calendar{--bg:#24170e;--paper:#eadcc212;--line:#eadcc22e;--ink:#f4eadb;--muted:#cdbea3;--copper:#e3a86f;--parch:#eadcc2;--hair:#c4874a;--skin:#b8716d;--remove:#ae6440;--nail:#a1808a;--body:#7e9b90;--henna:#c65f44;--med:#9a8c76;--avoid:#ad9377;background:var(--bg);color:var(--ink);color-scheme:dark;font-size:16px;line-height:1.5}.beauty-calendar [data-enhanced-only]{display:none}.beauty-calendar[data-enhanced] [data-enhanced-only]{display:flex}.beauty-calendar .calendar-wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:clamp(16px,3vw,48px)}.beauty-calendar .calendar-hero{background:radial-gradient(ellipse at 80% 0, #e8aa6426, transparent 65%), linear-gradient(#1a1009, var(--bg));position:relative}.beauty-calendar .calendar-hero:before{content:"";pointer-events:none;opacity:.3;background-image:radial-gradient(circle,#eadcc2 1px,#0000 1px),radial-gradient(circle,#eadcc2 .7px,#0000 .8px);background-position:31px 18px,0 43px;background-size:117px 127px,83px 97px;position:absolute;inset:0;mask-image:linear-gradient(#000,#0000)}.beauty-calendar .calendar-hero .calendar-wrap{justify-content:space-between;align-items:start;gap:28px;padding-block:32px;display:flex;position:relative}.beauty-calendar .calendar-heading{min-width:0;max-width:900px}.beauty-calendar .eyebrow{color:var(--copper);letter-spacing:.19em;text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:600;line-height:1.6}.beauty-calendar h1{font:500 clamp(34px, 3.7vw, 52px)/1.14 var(--font-serif);letter-spacing:-.025em;text-wrap:balance;margin:0}.beauty-calendar h1 span{display:block}.beauty-calendar h1 span+span{color:var(--copper);margin-top:4px}.beauty-calendar .lead{color:var(--muted);max-width:70ch;margin:18px 0 0;font-size:15px;line-height:1.7}.beauty-calendar button{cursor:pointer}.beauty-calendar :is(button,select,a,[tabindex]):focus-visible{outline:2px solid var(--copper);outline-offset:4px}.beauty-calendar .filters button[aria-pressed=true]{background:var(--parch);border-color:var(--parch);color:#2b1d12}.beauty-calendar .calendar-toolbar{align-items:center;gap:20px;margin-bottom:16px}.beauty-calendar .day-picker{color:var(--muted);align-items:center;gap:14px;font-size:13px;display:flex}.beauty-calendar select{color:var(--ink);border:1px solid var(--line);font:inherit;cursor:pointer;background:#352416;border-radius:8px;min-height:44px;padding:10px 34px 10px 12px}.beauty-calendar .day-help{color:var(--muted);font-size:12px}.beauty-calendar .calendar-overview{margin-bottom:26px}.beauty-calendar .month-panel,.beauty-calendar .calendar-desktop{display:none}.beauty-calendar[data-enhanced] .calendar-desktop{display:block}.beauty-calendar[data-enhanced] .calendar-practices{display:none}.beauty-calendar .today-card{border:1px solid var(--line);background:linear-gradient(120deg,#eadcc21a,#eadcc208);border-radius:18px;grid-template-columns:230px minmax(0,1fr) minmax(0,.8fr);align-items:start;gap:24px;min-width:0;padding:24px;display:grid}.beauty-calendar .tc-date{align-items:center;gap:14px;display:flex}.beauty-calendar .tc-date svg{flex-shrink:0}.beauty-calendar .big{font:500 31px/1.2 var(--font-serif)}.beauty-calendar .sm{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.6}.beauty-calendar .tc-col h3{color:var(--copper);letter-spacing:.13em;text-transform:uppercase;margin:2px 0 12px;font-size:11px;font-weight:700}.beauty-calendar .tc-col ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.beauty-calendar .tc-col li{background:#eadcc217;border-radius:16px;align-items:center;gap:7px;padding:6px 10px;font-size:12px;line-height:1.5;display:flex}.beauty-calendar .tc-col li.x{border:1px dashed var(--avoid);color:var(--muted);background:0 0}.beauty-calendar :is(.tc-col li,.nm,.filters button) i{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.beauty-calendar .none{color:var(--muted);margin:0;font-size:13px}.beauty-calendar .calmtag{color:var(--copper);border:1px dashed var(--copper);letter-spacing:.1em;border-radius:99px;margin-top:8px;padding:5px 8px;font-size:10px;font-weight:700;display:inline-block}.beauty-calendar .filters{flex-wrap:wrap;gap:8px;margin-bottom:20px}.beauty-calendar .filters button{border:1px solid var(--line);border-radius:99px;align-items:center;gap:8px;min-height:44px;padding:8px 15px;font-size:13px;display:flex}.beauty-calendar .filters button:hover{border-color:var(--copper)}.beauty-calendar .keys{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 22px;margin-bottom:12px;font-size:12px;display:flex}.beauty-calendar .keys>span{align-items:center;gap:8px;display:flex}.beauty-calendar .k{border-radius:4px;flex-shrink:0;width:16px;height:16px;display:inline-block}.beauty-calendar .k.best{background:var(--copper)}.beauty-calendar :is(.k.avoid,.c.x){border:1.5px dashed var(--avoid);position:relative}.beauty-calendar :is(.k.avoid,.c.x):after{content:"";inset-inline:3px;background:var(--avoid);height:1.5px;position:absolute;top:50%;transform:rotate(-45deg)}.beauty-calendar .k.calm{border:1.5px dashed var(--copper)}.beauty-calendar .wane-key{border:1px solid var(--line);background:#00000040}.beauty-calendar .hint{color:var(--muted);margin:0 0 10px;font-size:12px}.beauty-calendar .tablewrap{border:1px solid var(--line);background:var(--paper);border-radius:14px;max-width:100%;position:relative}.beauty-calendar table{table-layout:fixed;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%}.beauty-calendar :is(th,td){padding:0}.beauty-calendar thead th{color:var(--muted);border-bottom:1px solid var(--line);vertical-align:middle;background:#2e1d11;font-size:11px;font-weight:500}.beauty-calendar thead th.wane{background:#26180d}.beauty-calendar .namecol{text-align:left;border-right:1px solid var(--line);overflow-wrap:anywhere;background:#2a1a0f;border-bottom:1px solid #eadcc20f;width:26%;padding:14px;font-weight:400}.beauty-calendar thead .namecol{color:var(--copper);letter-spacing:.1em;text-transform:uppercase;background:#2e1d11;font-size:11px;font-weight:600}.beauty-calendar .nm{align-items:baseline;gap:8px;font-size:13px;font-weight:600;line-height:1.4;display:flex}.beauty-calendar .why{color:var(--muted);margin-top:5px;font-size:11px;line-height:1.5}.beauty-calendar .grp :is(th,td){border-top:1px solid var(--line);color:var(--copper);letter-spacing:.15em;text-transform:uppercase;padding:16px 14px 8px;font-size:10px;font-weight:700}.beauty-calendar td.d{text-align:center;border-bottom:1px solid #eadcc20f;height:52px}.beauty-calendar td.d.wane{background:#00000024}.beauty-calendar td.d.calm{box-shadow:inset 1px 0 #e3a86f59,inset -1px 0 #e3a86f59}.beauty-calendar td.d.today{box-shadow:inset 0 0 0 1.5px var(--copper)}.beauty-calendar .c{border-radius:5px;width:20px;height:20px;margin-inline:auto;display:block}.beauty-calendar .best-col{border-left:1px solid var(--line);width:19%;color:var(--parch);overflow-wrap:anywhere;border-bottom:1px solid #eadcc20f;padding:12px;font-size:12px;line-height:1.6}.beauty-calendar thead th:last-child{text-align:left;padding:12px}.beauty-calendar button.dh{border-radius:5px;flex-direction:column;align-items:center;gap:3px;width:100%;min-height:82px;padding:12px 0;display:flex}.beauty-calendar .dh .dn{color:var(--ink);margin-top:2px;font-size:14px;font-weight:700}.beauty-calendar th.today .dn{color:var(--copper)}.beauty-calendar thead th.sel{background:#e3a86f38}.beauty-calendar td.d.sel{background:#e3a86f1a}.beauty-calendar .dh:focus-visible{outline-offset:-3px}.beauty-calendar .calendar-week{justify-content:space-between;align-items:center;gap:16px;margin:30px 0 18px;display:flex}.beauty-calendar .calendar-week h2{font:500 25px/1.2 var(--font-serif)}.beauty-calendar .calendar-week button{border:1px solid var(--line);border-radius:50%;width:46px;height:46px;font-size:22px}.beauty-calendar .calendar-week button:hover:enabled{background:var(--paper);border-color:var(--copper)}.beauty-calendar .calendar-week button:disabled{opacity:.3;cursor:default}.beauty-calendar .month-panel{border:1px solid var(--line);background:var(--paper);border-radius:18px;min-width:0;padding:18px 12px 12px}.beauty-calendar .month-heading{justify-content:space-between;align-items:center;gap:8px;padding:0 4px 18px;display:flex}.beauty-calendar .month-heading h2{font:500 23px/1.2 var(--font-serif)}.beauty-calendar .month-heading>span{color:var(--muted);text-align:right;font-size:11px}.beauty-calendar .month-weekdays,.beauty-calendar .month-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.beauty-calendar .month-weekdays{text-align:center;color:var(--muted);margin-bottom:6px;font-size:11px}.beauty-calendar .month-weekdays abbr{text-decoration:none}.beauty-calendar .month-day{border:1px solid #0000;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:49px;padding:6px 0;font-size:14px;font-weight:600;display:flex}.beauty-calendar .month-day:hover{background:#eadcc214}.beauty-calendar .month-day[aria-current=date]{border-color:var(--copper)}.beauty-calendar .month-day[aria-pressed=true]{background:var(--parch);border-color:var(--parch);color:#2b1d12}.beauty-calendar .month-day[aria-pressed=true] svg{background:#5b4632;border-radius:50%}.beauty-calendar .month-day.calm{border-style:dashed;border-color:#e3a86f73}.beauty-calendar .practice-group+.practice-group{margin-top:28px}.beauty-calendar .practice-group>h3{color:var(--copper);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:600}.beauty-calendar .practice-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.beauty-calendar .practice-card{border:1px solid var(--line);background:var(--paper);border-radius:14px;min-width:0;padding:18px;position:relative}.beauty-calendar .practice-heading h4{font-size:16px;font-weight:600;line-height:1.45}.beauty-calendar .practice-heading h4 i{border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.beauty-calendar .practice-heading .why{font-size:12px}.beauty-calendar .practice-status{color:var(--muted);margin-top:12px;font-size:12px;line-height:1.6}.beauty-calendar .practice-status.good{color:var(--parch)}.beauty-calendar .practice-status.avoid{color:#f1c2a2}.beauty-calendar .practice-days{border-top:1px solid var(--line);gap:10px;margin-top:14px;padding-top:14px;display:grid}.beauty-calendar .practice-days>div{grid-template-columns:96px minmax(0,1fr);gap:8px;display:grid}.beauty-calendar .day-label{color:var(--muted);font-size:12px}.beauty-calendar .day-values{color:var(--ink);overflow-wrap:anywhere;font-size:14px;line-height:1.5}.beauty-calendar .notes{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-block:24px 32px;display:grid}.beauty-calendar .note{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:20px}.beauty-calendar .note h2{color:var(--copper);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:700}.beauty-calendar .note p{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.8}.beauty-calendar .calendar-foot{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px 24px;padding-block:20px 32px;font-size:12px;display:flex}.beauty-calendar .handles{color:var(--copper);flex-wrap:wrap;gap:16px;display:flex}.beauty-calendar .handles a:hover{text-decoration:underline}.beauty-calendar .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1023px){.beauty-calendar[data-enhanced] .calendar-desktop{display:none}.beauty-calendar[data-enhanced] .calendar-practices,.beauty-calendar[data-enhanced] .month-panel{display:block}.beauty-calendar[data-enhanced] .calendar-overview{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.beauty-calendar .today-card{grid-template-columns:minmax(0,1fr);gap:20px}.beauty-calendar .tc-date{grid-column:1/-1}.beauty-calendar .notes{grid-template-columns:minmax(0,1fr);gap:12px}.beauty-calendar .practice-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.beauty-calendar .calendar-hero .calendar-wrap{padding-block:32px 24px;display:block}.beauty-calendar h1{font-size:clamp(30px,7.2vw,44px)}.beauty-calendar .eyebrow{letter-spacing:.13em;font-size:10px}.beauty-calendar .lead{margin-top:12px;font-size:14px;line-height:1.6}.beauty-calendar .calendar-toolbar{justify-content:space-between;gap:10px}.beauty-calendar .day-picker{gap:10px;font-size:12px}.beauty-calendar .day-help{display:none}.beauty-calendar[data-enhanced] .calendar-overview{grid-template-columns:minmax(0,1fr)}.beauty-calendar .today-card{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px 16px}.beauty-calendar .tc-col li{font-size:13px}.beauty-calendar .filters{gap:6px}.beauty-calendar .filters button{padding-inline:12px;font-size:12px}.beauty-calendar .keys{gap:10px 16px;font-size:11px}.beauty-calendar .practice-cards{grid-template-columns:minmax(0,1fr)}}
