[hidden]{display:none!important}
.browse-split{height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:18px}
.calendar-page main{width:min(1240px,calc(100% - 40px))}
.calendar-page .calendar-heading{flex-direction:column;align-items:flex-start;gap:12px}
.calendar-page .calendar-toolbar{align-self:stretch;justify-content:space-between}
.calendar-page .calendar-page-title{font-size:24px}
.calendar-page .photo-calendar{padding:20px;border-radius:24px}
.calendar-page .calendar-grid{gap:5px}
.calendar-page .calendar-day{padding:22px 2px 4px;border-radius:9px}
.calendar-page .calendar-marks{font-size:10px;gap:1px}.calendar-page .calendar-marks .crown-icon{width:14px;height:14px}
.calendar-page .calendar-day[aria-pressed=true]{border-color:#bd8098;box-shadow:inset 0 0 0 1px #bd8098;background:#fff3f8}
.look-preview{min-height:0;display:flex;flex-direction:column;position:relative;overflow:hidden;border:1px solid #fff;border-radius:120px 120px 24px 24px;background:radial-gradient(ellipse at 50% 38%,#fffaf2,#eee2e8 65%,#e6e4f0);box-shadow:0 16px 48px #69445510;padding:30px 26px 22px}
.preview-top{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#997783;letter-spacing:.12em;flex-wrap:wrap;padding:12px 15px}
.preview-art{flex:1;min-height:0;display:flex;justify-content:center;position:relative}
.preview-art>img{height:100%;width:100%;object-fit:contain;filter:drop-shadow(0 10px 14px #70455618)}
.preview-caption{text-align:center;flex-shrink:0;padding-top:10px}
.preview-caption h2{font-size:20px;margin:6px 0;letter-spacing:.04em}
.preview-caption p{font-size:12px;color:#987b87;margin:0;max-height:65px;overflow:auto;white-space:pre-wrap}
.preview-caption .day-marks{justify-content:center}
#preview-pages{display:flex;justify-content:center;gap:8px;margin-top:8px}#preview-pages:empty{display:none}#preview-pages button{border:1px solid #cdb8c1;border-radius:50%;width:27px;height:27px;background:white;color:#997783}#preview-pages button[aria-pressed=true]{background:#a64d71;color:white}
.quiet-art{width:100%;height:100%;position:relative;display:grid;place-items:center;color:#b794a4}
.quiet-art svg{height:80%;width:85%;position:absolute;z-index:1}.quiet-orbit{height:70%;aspect-ratio:.7;border:1px solid #cdb5bf99;border-radius:50% 50% 45% 45%;background:radial-gradient(ellipse,#fffdf8aa,transparent 75%);transform:rotate(-14deg)}
.quiet-art>span{position:absolute;top:20%;right:20%;font-size:23px;color:#bb9c74}
.admin-page{background:linear-gradient(130deg,#f8eef1,#f9f8f6 60%,#f0edf5);height:100dvh}
.admin-page main{width:calc(100% - 40px);max-width:1440px;height:100%;padding:18px 0;display:flex;flex-direction:column;gap:8px}
.admin-page main>a{font-size:12px;color:#997783;width:max-content}
.admin-page h1{font-size:24px;line-height:1.3;letter-spacing:0;margin:0}
.admin-page h3{font-size:14px;margin:0}
.admin-page #message{font-size:12px;margin:0;color:#a64d71;max-height:38px;overflow:auto}.admin-page #message:empty{display:none}
.admin-page #editor{flex:1;min-height:0}.admin-page #fields{margin:0;border:0;padding:0;height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;min-width:0}
.admin-left,.admin-right{background:#ffffffab;border:1px solid white;border-radius:22px;padding:18px;min-height:0;min-width:0}
.admin-left{display:flex;flex-direction:column;gap:10px}
.admin-page .admin-month-calendar{max-width:none;width:100%;flex:1;min-height:0;margin:0;display:flex;flex-direction:column}
.admin-page #admin-grid{flex:1;min-height:0;grid-template-rows:repeat(var(--week-count,6),minmax(0,1fr))}
.admin-page .admin-month-calendar .calendar-day{height:100%;aspect-ratio:auto;padding:22px 2px 4px}
.admin-page .admin-month-calendar .calendar-day img{height:100%;max-height:none}
.admin-page #selected-date{margin:0;color:#a64d71;font-size:13px}
.admin-right{display:flex;flex-direction:column;gap:9px}
.admin-page label{display:block;font-size:12px;color:#776571;margin:0;min-width:0}
.admin-page input,.admin-page select,.admin-page textarea{display:block;width:100%;font:inherit;padding:8px 10px;border:1px solid #dfd2d8;border-radius:9px;background:#fff;color:#41313b;box-sizing:border-box}
.admin-page textarea{height:49px;resize:none}
.option-row{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px;align-items:end}
.moment-dropdown{position:relative;font-size:12px;min-width:0}
.moment-dropdown summary{padding:8px;border:1px solid #dfd2d8;border-radius:9px;background:white;cursor:pointer;white-space:nowrap}
.moment-dropdown .mark-options{position:absolute;top:100%;right:0;width:270px;padding:12px;background:#fff;box-shadow:0 8px 32px #79596933;border:1px solid #e6dce0;border-radius:12px;z-index:30}
.moment-dropdown .mark-choice{font-size:12px;padding:6px}
.admin-page #library{flex:1;min-height:100px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));grid-auto-rows:142px;align-content:start;gap:8px;padding:3px;scrollbar-width:thin}
.admin-page #library label{border:1px solid #eadfe3;border-radius:12px;background:white;padding:6px;font-size:11px;line-height:1.3;position:relative;overflow:hidden}
.admin-page #library input{position:absolute;width:14px;top:6px;left:6px;margin:0;z-index:1;accent-color:#a64d71}
.admin-page #library img{height:102px;width:100%;object-fit:contain}
.admin-page #library span{display:block;margin-top:4px}
.upload-options{font-size:12px;color:#997783}.upload-options summary{cursor:pointer;padding:5px 0}.upload-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:5px}
.admin-page #save{min-height:40px;width:100%;font-size:13px;flex-shrink:0}
.admin-page #login{max-width:340px;width:100%;margin:60px auto;padding:25px;background:white;border-radius:20px}.admin-page #login .button{margin-top:20px}
.admin-page fieldset:disabled{opacity:.6}
@media(min-width:700px) and (min-height:600px){.calendar-page .browse-split .photo-calendar{height:100%}}
@media(max-width:900px){.browse-split{grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr);gap:12px}.calendar-page main{width:calc(100% - 24px)}.calendar-page .photo-calendar{padding:12px}.calendar-page .calendar-page-title{font-size:20px}.look-preview{padding:22px 14px 16px}.preview-top{padding:6px;font-size:9px}.preview-caption h2{font-size:17px}.admin-page main{width:calc(100% - 24px)}.admin-page #fields{gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.admin-left,.admin-right{padding:12px}.option-row{grid-template-columns:1fr 1fr}.moment-dropdown{grid-column:1/-1}.admin-page #library{grid-auto-rows:130px;grid-template-columns:repeat(auto-fill,minmax(74px,1fr))}.admin-page #library img{height:90px}}
@media(max-width:699px),(max-height:599px){.browse-split{height:auto;grid-template-columns:1fr}.look-preview{height:520px;border-radius:90px 90px 22px 22px}.admin-page{height:auto}.admin-page main{height:auto}.admin-page #fields{display:flex;flex-direction:column}.admin-page #admin-grid{flex:none;grid-auto-rows:70px}.admin-page #library{flex:none;height:300px}.admin-page .admin-month-calendar .calendar-day{height:70px}.admin-page #editor{flex:none}.admin-page .admin-right{min-height:540px}}

@media(min-width:901px) and (min-height:600px){.browse-split{grid-template-columns:minmax(0,.85fr) minmax(300px,1fr)}}
@media(max-width:699px),(max-height:599px){.browse-split .look-preview{display:none}.calendar-page .browse-split{display:block}.calendar-page .calendar-heading{align-items:center}}

.admin-page .option-row{grid-template-columns:1fr 1fr}
.admin-page .moment-dropdown{grid-column:auto}
.admin-page .moment-dropdown .mark-options{width:min(340px,calc(100vw - 48px));max-height:340px;overflow:auto}
.admin-page .moment-dropdown .crown-icon{width:18px;height:18px}
