/* Approved JPEG is displayed through CSS crop windows; original file is untouched. */
html[data-luxury]{--bg:#fcf8f3;--card:#fffdf9;--text:#442735;--muted:#78616b;--pink:#68334b;--soft:#f1e2e5;--border:#e7d9d4;--cream:#f7eee1;--shadow:0 7px 24px #532a3907;--header-a:#f5e4e4;--header-b:#fcf8f3}
html[data-luxury][data-theme=dark]{--bg:#261d24;--card:#32252d;--text:#fae9ec;--muted:#d2b6c1;--pink:#efb8cf;--soft:#523440;--border:#62434d;--cream:#3d3030;--header-a:#49313b;--header-b:#261d24;color-scheme:dark}
body{background:#eee4df}html[data-luxury] .app{max-width:1060px;background:var(--bg)}
html[data-luxury] .hero{background:var(--bg);padding:22px 22px 20px;border-bottom:1px solid var(--border);position:relative}
html[data-luxury] .brand{font-family:Georgia,'Times New Roman',serif;font-size:25px;letter-spacing:5px;font-weight:400;gap:10px;min-height:44px}
html[data-luxury] .brand img{width:36px;height:36px;border-radius:50%}
html[data-luxury] .avatar-button{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:30px;min-height:44px;padding:7px 12px;font-size:12px}
html[data-luxury] .hero-meta{margin:23px 0 9px;font-size:11px;letter-spacing:.5px}
html[data-luxury] .quiet-badge{font-size:8px;letter-spacing:1.8px}
html[data-luxury] h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:36px;line-height:1.12;letter-spacing:-1.3px;max-width:360px}
html[data-luxury] .hero p{font-size:12px;line-height:1.65;max-width:240px;margin-top:12px}
html[data-luxury-home] .hero{min-height:275px;isolation:isolate;overflow:hidden;background:linear-gradient(100deg,var(--bg) 0%,var(--bg) 40%,#f8e9e7 100%)}
html[data-luxury-home] .hero:before{content:'';position:absolute;inset:76px -22px 0 48%;background-image:linear-gradient(90deg,#fcf8f3 0%,#fcf8f300 50%),url('./assets/approved-features.webp');background-size:100% 100%,486% 256%;background-position:0 0,0 0;opacity:.75;z-index:-1}
html[data-luxury-home] .hero h1{max-width:230px;font-size:37px}
html[data-luxury] .status-row{padding:9px 20px;font-size:10px;letter-spacing:.2px;border-bottom:1px solid var(--border);margin-bottom:16px}
html[data-luxury] #main{padding:0 16px 24px}
html[data-luxury] .card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:var(--shadow)}
html[data-luxury] .section-head h2,html[data-luxury] h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:22px;letter-spacing:-.5px;line-height:1.25}
html[data-luxury] .primary,html[data-luxury] .chip.active{background:#68334b;color:#fff9f2;border-color:#68334b}
html[data-luxury] .soft,html[data-luxury] .chip{border-radius:12px;min-height:44px}
html[data-luxury] input,html[data-luxury] textarea,html[data-luxury] select{accent-color:#68334b;font-size:16px}
html[data-luxury] .task-name strong,html[data-luxury] .record strong{font-size:14px}
html[data-luxury] .task-name small,html[data-luxury] .record small{font-size:12px}
html[data-luxury] .muted{font-size:12px}
html[data-luxury-home] .today-summary{display:grid;grid-template-columns:1fr auto;gap:0 14px;background:var(--card);padding:15px 18px;border-radius:16px;margin-bottom:27px;position:relative}
html[data-luxury-home] .today-summary>div{grid-column:1;grid-row:1;display:block}
html[data-luxury-home] .today-summary strong{font-size:14px;display:block}
html[data-luxury-home] .today-summary span{display:block;font-size:11px;margin-top:3px;color:var(--muted)}
html[data-luxury-home] .daily-percent{grid-column:2;grid-row:1;font-family:Georgia,serif;font-size:31px;font-weight:400;color:var(--pink)}
html[data-luxury-home] .today-summary progress{grid-column:1/-1;margin:12px 0 8px;height:4px}
html[data-luxury-home] .today-summary>small{grid-column:1/-1;font-size:10px;color:var(--muted)}
.collection-heading{margin:0 3px 18px}.luxury-eyebrow{font-size:9px;letter-spacing:2.5px;font-weight:600;color:var(--muted)}
.collection-heading h2{font:400 26px/1.15 Georgia,serif;letter-spacing:-.7px;margin:8px 0 0;color:var(--text)}
html[data-luxury-home] .home-studios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;margin-bottom:29px}
html[data-luxury-home] .luxury-feature{display:block;position:relative;width:100%;min-width:0;padding:0;border:1px solid var(--border);background:var(--card);border-radius:15px;overflow:hidden;text-align:left;color:var(--text);box-shadow:0 5px 16px #5d343307;transition:transform .2s,box-shadow .2s}
.feature-photo{display:block;background-image:url('./assets/approved-features.webp');background-repeat:no-repeat;aspect-ratio:1/1.12;width:100%;background-size:500% 256%}
.feature-photo[data-image=planner]{background-size:486.08% 256%;background-position:0 0}
.feature-photo[data-image=wellness]{background-size:531.49% 256%;background-position:26.14% 0}
.feature-photo[data-image=workout]{background-size:527.84% 256%;background-position:50.12% 0}
.feature-photo[data-image=period]{background-size:503.61% 256%;background-position:75.22% 0}
.feature-photo[data-image=skincare]{background-size:524.23% 256%;background-position:100% 0}
.feature-photo[data-image=money]{background-size:508.61% 256%;background-position:0 82.37%}
.feature-photo[data-image=shopping]{background-size:517.17% 256%;background-position:25.26% 82.37%}
.feature-photo[data-image=studio]{background-size:527.84% 256%;background-position:49.96% 82.37%}
.feature-photo[data-image=goals]{background-size:506.93% 256%;background-position:75.02% 82.37%}
.feature-photo[data-image=selfcare]{background-size:520.68% 256%;background-position:100% 82.37%}
.feature-caption{display:block;position:relative;padding:12px 12px 14px;min-height:98px;border-top:2px solid #d4b78f}
html[data-luxury-home] .feature-caption strong{font:400 19px/1.12 Georgia,serif;display:block;padding-right:9px;letter-spacing:-.4px;min-height:41px}
html[data-luxury-home] .feature-caption small{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:5px;max-width:120px}
.feature-arrow{position:absolute;right:10px;bottom:12px;font-size:15px;color:#94734e}
.chapter-image{height:142px;border-radius:16px;overflow:hidden;position:relative;margin:7px 0 20px;background:#f0e1df}
.chapter-image .feature-photo{position:absolute;width:48%;height:100%;right:0;aspect-ratio:auto}
.chapter-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--cream) 0%,var(--cream) 49%,transparent 78%)}
.chapter-caption{position:absolute;left:20px;top:50%;transform:translateY(-50%);font:400 28px/1.1 Georgia,serif;max-width:55%;z-index:1;color:var(--text)}
html[data-luxury] #nav{max-width:1060px;background:var(--card);border-top:1px solid var(--border);box-shadow:0 -5px 20px #58323b08;padding-top:7px}
html[data-luxury] #nav button{min-height:54px;border-radius:12px;color:var(--muted);font-size:10px}
html[data-luxury] #nav button.active{background:var(--soft);color:var(--pink)}
html[data-luxury] #nav svg{width:21px;height:21px}
html[data-luxury] dialog{background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:22px}
html[data-luxury] :is(button,a,input,select,summary):focus-visible{outline:2px solid var(--pink);outline-offset:3px}
@media(hover:hover){.luxury-feature:hover{transform:translateY(-3px);box-shadow:0 12px 26px #5d343318!important}}
@media(min-width:680px){html[data-luxury] .hero{padding:26px 36px}html[data-luxury-home] .hero{min-height:300px}html[data-luxury-home] .hero h1{max-width:440px;font-size:55px}html[data-luxury] #main{padding-inline:30px}html[data-luxury-home] .home-studios{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}html[data-luxury-home] .feature-caption{padding-inline:11px}.collection-heading h2{font-size:32px}html[data-luxury-home] .hero p{max-width:400px;font-size:14px}html[data-luxury-home] .hero:before{inset:70px -20px 0 59%}}
@media(max-width:350px){html[data-luxury] #main{padding-inline:12px}html[data-luxury] .hero{padding-inline:16px}html[data-luxury-home] .hero h1{font-size:33px;max-width:200px}.collection-heading h2{font-size:24px}html[data-luxury-home] .feature-caption strong{font-size:18px}html[data-luxury-home] .feature-caption small{font-size:10px;max-width:100px}.feature-caption{padding-inline:10px}}
@media(prefers-reduced-motion:reduce){html[data-luxury] *,html[data-luxury] *:before,html[data-luxury] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Complete visual system. Local presentation layer; no business logic or schema edits. */
html[data-complete-luxury]{--lux-wine:#612c43;--lux-rose:#e8c7cf;--lux-gold:#b19062;--ui-radius:22px;--ui-body:15px;--ui-title:24px;--shadow:0 10px 32px #5a2d3f08}
html[data-complete-luxury] body{background:var(--bg);font-size:15px;line-height:1.65}
html[data-complete-luxury] :is(button,a,input,select,textarea,summary){-webkit-tap-highlight-color:transparent}
html[data-complete-luxury] .app{padding-bottom:calc(100px + env(safe-area-inset-bottom));max-width:1060px}
html[data-complete-luxury]:not([data-luxury-home]) .hero{padding:18px 22px;border-bottom:0;background:var(--bg);min-height:80px}
html[data-complete-luxury] .hero:after{display:none}
html[data-complete-luxury]:not([data-luxury-home]) .hero :is(.hero-meta,#hero-title,#hero-subtitle){display:none}
html[data-complete-luxury] .hero .brand{font-size:25px;letter-spacing:5px}
html[data-complete-luxury] .hero .brand img{width:34px;height:34px;outline:1px solid #b1906233;outline-offset:4px}
html[data-complete-luxury] #avatar-button{background:var(--card);box-shadow:0 4px 12px #59283a05}
html[data-complete-luxury] .status-row{font-size:11px;margin:0 22px 14px;padding:0 0 11px;border-bottom:1px solid var(--border);color:var(--muted)}
html[data-complete-luxury] #main{padding:0 16px 25px}
html[data-complete-luxury] .screen-back{font-size:12px;margin:0 0 9px;color:var(--pink);min-height:44px;padding:7px 4px;background:transparent;border:0}
html[data-complete-luxury] .chapter-image{height:215px;isolation:isolate;background:var(--cream);border:1px solid var(--border);border-radius:22px;margin:0 0 24px;position:relative;overflow:hidden;box-shadow:var(--shadow)}
html[data-complete-luxury] .chapter-image:after{display:none}
html[data-complete-luxury] .chapter-image .chapter-photo{position:absolute;inset:0 0 0 auto;width:52%;height:100%;aspect-ratio:auto;mask-image:linear-gradient(90deg,transparent,black 38%)}
.chapter-copy{position:absolute;left:22px;top:32px;z-index:1;max-width:67%}
.chapter-eyebrow{display:block;color:var(--pink);font:600 9px/1.5 Manrope,sans-serif;letter-spacing:2.1px;max-width:180px}
.chapter-copy h2{font:400 33px/1.08 Georgia,'Times New Roman',serif;letter-spacing:-1px;color:var(--text);margin:16px 0;max-width:220px;text-wrap:balance}
.chapter-number{position:absolute;left:23px;bottom:17px;font:italic 19px Georgia,serif;letter-spacing:1px;color:#98794f}
html[data-complete-luxury] .section-tabs{padding:5px;background:var(--soft);border:1px solid var(--border);border-radius:17px;gap:4px;margin-bottom:19px;box-shadow:inset 0 1px 2px #63334804}
html[data-complete-luxury] .section-tabs .chip{font-size:12px;line-height:1.4;min-height:46px;white-space:normal;border-radius:12px;letter-spacing:0;padding:9px 10px}
html[data-complete-luxury] .section-tabs .chip.active{background:var(--card);color:var(--pink);box-shadow:0 3px 9px #632e4210;font-weight:750}
html[data-complete-luxury] .chips:not(.section-tabs){display:flex;flex-wrap:wrap;overflow:visible;gap:7px;margin-bottom:18px;padding-bottom:0}
html[data-complete-luxury] .chips:not(.section-tabs) .chip{border:1px solid var(--border);background:var(--card);min-height:44px;font-size:12px;padding:10px 16px;border-radius:30px;flex:none;white-space:normal}
html[data-complete-luxury] .chips:not(.section-tabs) .chip.active{background:var(--lux-wine);border-color:var(--lux-wine);color:#fff7ef}
html[data-complete-luxury] .card{border:1px solid var(--border);border-radius:22px;background:var(--card);padding:20px 18px;margin-bottom:17px;box-shadow:var(--shadow);position:relative}
html[data-complete-luxury] .section-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;border-bottom:1px solid var(--border);padding-bottom:14px}
html[data-complete-luxury] .section-head h2{font:400 24px/1.15 Georgia,serif;letter-spacing:-.5px;min-width:0}
html[data-complete-luxury] .section-head>button{font-size:12px;min-height:44px;padding:10px 12px}
html[data-complete-luxury] h3{font:400 21px/1.3 Georgia,serif;letter-spacing:-.3px;margin:20px 0 12px}
html[data-complete-luxury] :is(.primary,.soft,.danger,.file-button,.external,.auth-outline){min-height:46px;padding:12px 16px;line-height:1.4;border-radius:13px;font-size:13px;font-weight:650;letter-spacing:0;white-space:normal;text-align:center;touch-action:manipulation}
html[data-complete-luxury] .primary{background:var(--lux-wine);color:#fff8f0;border:1px solid var(--lux-wine);box-shadow:0 5px 14px #612c4314}
html[data-complete-luxury] .soft{background:var(--card);border:1px solid var(--border);color:var(--pink)}
html[data-complete-luxury] .danger{background:var(--card);color:#933c4c;border:1px solid #af75804d}
html[data-complete-luxury] .button-stack{gap:10px;margin-block:18px 5px}
html[data-complete-luxury] .button-row{gap:8px;margin:14px 0;align-items:center}
html[data-complete-luxury] :is(button,a):focus-visible{outline:2px solid var(--pink);outline-offset:4px}
html[data-complete-luxury] :is(button,a):active{filter:brightness(.97)}
html[data-complete-luxury] :is(.muted,small,.empty,.center,.form-error,.instructions li){font-size:13px;line-height:1.7}
html[data-complete-luxury] .eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:650}
html[data-complete-luxury] form{display:grid;gap:18px;min-width:0}
html[data-complete-luxury] label:not(.task):not(.switch):not(.file-button):not(.location-choice){font:650 12px/1.5 Manrope,sans-serif;letter-spacing:.1px;color:var(--muted);display:grid;gap:8px;min-width:0}
html[data-complete-luxury] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);padding:12px 13px;min-height:49px;min-width:0;max-width:100%;font-size:16px;line-height:1.5;box-shadow:inset 0 2px 3px #68334903}
html[data-complete-luxury] textarea{line-height:1.8;min-height:110px;resize:vertical}
html[data-complete-luxury] :is(input,textarea,select):focus-visible{outline:2px solid var(--pink);outline-offset:3px;background:var(--card)}
html[data-complete-luxury] :is(input,textarea):user-invalid{border-color:#a64a5c}
html[data-complete-luxury] fieldset{min-width:0;border:1px solid var(--border);border-radius:15px;background:var(--card);padding:14px 13px 12px;margin:0}
html[data-complete-luxury] legend{font-size:12px;font-weight:700;letter-spacing:.1px;padding:0 7px;color:var(--pink)}
html[data-complete-luxury] .switch{font-size:14px;min-height:46px;line-height:1.55;gap:12px;color:var(--text);align-items:center}
html[data-complete-luxury] :is(input[type=checkbox],input[type=radio]){accent-color:var(--lux-wine);width:21px;height:21px;min-width:21px;min-height:21px;flex:0 0 21px;margin:0;cursor:pointer}
html[data-complete-luxury] .form-grid{gap:16px 12px}
html[data-complete-luxury] .form-error:not(:empty),html[data-complete-luxury] .auth-error:not(:empty){background:#f9e8e8;color:#8b3046;padding:12px 14px;border:1px solid #e4bfc7;border-radius:12px;font-size:13px;line-height:1.6}
html[data-complete-luxury] .form-error:empty,html[data-complete-luxury] .auth-error:empty{display:none}
html[data-complete-luxury] .empty{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:25px 15px;background:var(--bg);border:1px dashed var(--border);border-radius:17px;color:var(--muted);margin:14px 0}
html[data-complete-luxury] .empty-image{width:88px;height:88px;border-radius:50%;aspect-ratio:1;border:5px solid var(--card);box-shadow:0 0 0 1px var(--border)}
html[data-complete-luxury] :is(.feature-fold,.optional-settings,.compact-help,.fitness-guide,.grocery-item-details,.task-notes,.bulk-row-details,.workout-safety){border:1px solid var(--border);background:var(--bg);border-radius:13px;padding:0 13px;margin:12px 0;font-size:13px;overflow-wrap:anywhere}
html[data-complete-luxury] :is(.feature-fold,.optional-settings,.compact-help,.fitness-guide,.grocery-item-details,.task-notes,.bulk-row-details,.workout-safety)>summary{min-height:46px;padding:13px 0;font-size:13px;font-weight:650;color:var(--pink);line-height:1.55;cursor:pointer}
html[data-complete-luxury] details[open]>summary{margin-bottom:8px}
html[data-complete-luxury] details[open]{padding-bottom:13px}
html[data-complete-luxury] .record{min-height:72px;border:1px solid var(--border);border-radius:14px;padding:14px 12px;background:var(--card);gap:12px;margin:9px 0;color:var(--text)}
html[data-complete-luxury] .record strong{font-size:15px;font-weight:650;line-height:1.5}
html[data-complete-luxury] .record small{font-size:12px;line-height:1.65;margin-top:5px;color:var(--muted)}
html[data-complete-luxury] .record-mark{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:50%;background:var(--soft);color:var(--pink);font-size:13px}
html[data-complete-luxury] .record>span:last-child{color:var(--lux-gold)}
html[data-complete-luxury] .task{padding:15px 0;gap:11px;border-color:var(--border);align-items:center}
html[data-complete-luxury] .task-name strong{font-size:15px;line-height:1.4;font-weight:650}
html[data-complete-luxury] .task-name small{font-size:12px;line-height:1.65;margin-top:7px}
html[data-complete-luxury] .dots{margin-right:0;margin-left:0;border:1px solid var(--border);border-radius:50%;width:44px;height:44px;background:var(--card)}
html[data-complete-luxury] .task-notes{margin:0 0 10px 32px;background:var(--bg);border-style:dashed}
html[data-complete-luxury] .task-tools{gap:6px;display:flex;flex-wrap:wrap}
html[data-complete-luxury] .task-tools button{font-size:12px;padding-inline:12px}
html[data-complete-luxury] .calendar-toolbar{border:1px solid var(--border);background:var(--bg);border-radius:15px;padding:9px;gap:7px;margin:0 0 17px}
html[data-complete-luxury] .calendar-toolbar>.soft{background:var(--card);width:44px;min-width:44px;min-height:44px;padding:0;font-size:23px}
html[data-complete-luxury] .date-select>span{font:400 18px Georgia,serif;color:var(--text)}
html[data-complete-luxury] .calendar-toolbar :is(input[type=month],input[type=date]){font-size:13px;min-height:44px;padding:8px;max-width:175px}
html[data-complete-luxury] .calendar{gap:3px}
html[data-complete-luxury] .calendar>span{font-size:11px;letter-spacing:.5px;padding:8px 0 13px}
html[data-complete-luxury] .calendar .day{min-height:44px;height:44px;border-radius:50%;font-size:13px;padding:8px 0;color:var(--text)}
html[data-complete-luxury] .calendar .day.selected{background:var(--lux-wine);color:#fff8f0;outline:none;box-shadow:0 4px 10px #612c431c}
html[data-complete-luxury] .day i{background:var(--lux-gold)}
html[data-complete-luxury] .calendar .logged-period{background:#e8bdca;color:#612c43;outline:0}
html[data-complete-luxury] .calendar .predicted-period{background:var(--bg);outline:1px dashed #b5768b;outline-offset:-3px}
html[data-complete-luxury] .destination-grid:not(.home-studios){gap:12px}
html[data-complete-luxury] .destination-grid:not(.home-studios) .destination{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;overflow:hidden;background:var(--bg);border:1px solid var(--border);padding:0 0 16px;border-radius:16px;gap:3px}
html[data-complete-luxury] .destination-image{height:105px;aspect-ratio:auto;border-bottom:1px solid var(--border);margin-bottom:9px}
html[data-complete-luxury] .destination-grid:not(.home-studios) .destination :is(strong,small){margin-inline:13px}
html[data-complete-luxury] .destination-grid:not(.home-studios) .destination strong{font:400 20px/1.2 Georgia,serif}
html[data-complete-luxury] .notebook-grid{gap:13px}
html[data-complete-luxury] .notebook-card{border:1px solid var(--border);border-radius:17px;background:linear-gradient(145deg,var(--cream),var(--card));padding:17px;box-shadow:none}
html[data-complete-luxury] .notebook-title{font:400 23px Georgia,serif;color:var(--text)}
html[data-complete-luxury] .notebook-preview{line-height:1.9;font-size:14px;color:var(--muted)}
html[data-complete-luxury] .notebook-save-status{border:1px solid var(--border);border-radius:10px;background:var(--soft);padding:10px 12px;font-size:12px;color:var(--pink)}
html[data-complete-luxury] #note-editor textarea{font:400 18px/1.9 Georgia,serif;min-height:240px;background:var(--card)}
html[data-complete-luxury] #note-editor [name=noteTitle]{font:400 26px Georgia,serif;min-height:60px}
html[data-complete-luxury] .comeback-card{padding:20px 16px;background:linear-gradient(130deg,var(--cream),var(--card));border:1px solid var(--border);border-radius:18px;margin:15px 0}
html[data-complete-luxury] .comeback-card h3{font-size:25px}
html[data-complete-luxury] .gentle-strip{border:1px solid var(--border);background:var(--soft);padding:16px;border-radius:17px;font-size:14px}
html[data-complete-luxury] .location-options{border:0;background:transparent;padding:0;gap:12px}
html[data-complete-luxury] .location-card{min-height:155px;border:1px solid var(--border);border-radius:18px;background:var(--bg);padding:20px 10px;box-shadow:none}
html[data-complete-luxury] .location-card strong{font:400 27px Georgia,serif}
html[data-complete-luxury] .location-card svg{width:35px;height:35px;color:var(--pink)}
html[data-complete-luxury] .location-choice input:checked+.location-card{background:var(--soft);border:2px solid var(--pink);box-shadow:0 5px 16px #612c4310}
html[data-complete-luxury] .programme-grid{gap:12px}
html[data-complete-luxury] .programme-grid button{border:1px solid var(--border);border-radius:17px;background:var(--cream);padding:20px;min-height:140px;box-shadow:none;position:relative;overflow:hidden}
html[data-complete-luxury] .programme-grid strong{font:400 24px Georgia,serif;position:relative}
html[data-complete-luxury] .programme-grid button>span{color:var(--lux-gold);font-size:24px}
html[data-complete-luxury] .timer{font:400 72px/1.2 Georgia,serif;letter-spacing:-3px;color:var(--pink);padding:20px 0 6px;text-align:center}
html[data-complete-luxury] .fitness-move{border:1px solid var(--border);border-radius:17px;background:var(--bg);padding:15px;margin:16px 0}
html[data-complete-luxury] .fitness-set{background:var(--card);border-radius:12px;border:1px solid var(--border);padding:10px;margin:9px 0;gap:8px}
html[data-complete-luxury] .fitness-guide{background:var(--card)}
html[data-complete-luxury] .metric>span{font-size:10px;letter-spacing:1px;line-height:1.5}
html[data-complete-luxury] .metric strong{font:400 34px/1.2 Georgia,serif;color:var(--pink);letter-spacing:-1px}
html[data-complete-luxury] .metrics{gap:18px;background:var(--cream);padding:18px 15px;border-radius:17px;margin:18px 0}
html[data-complete-luxury] .comparison{gap:13px;align-items:start}
html[data-complete-luxury] .comparison h3{font:400 20px Georgia,serif;margin:10px 0}
html[data-complete-luxury] .photo-frame{border:1px solid var(--border);border-radius:17px;overflow:hidden;background:var(--soft)}
html[data-complete-luxury] .photo-record{padding:14px;border:1px solid var(--border);border-radius:17px;margin-bottom:15px;background:var(--bg)}
html[data-complete-luxury] .cycle-dashboard{background:linear-gradient(130deg,var(--soft),var(--cream));border:1px solid var(--border);border-radius:18px;padding:20px 15px;gap:16px}
html[data-complete-luxury] .cycle-dashboard strong{font:400 42px/1.2 Georgia,serif;color:var(--pink)}
html[data-complete-luxury] .cycle-dashboard .phase-label{font-size:26px;line-height:1.2}
html[data-complete-luxury] .countdown{border-left:2px solid var(--lux-gold);padding:12px 15px;background:var(--bg);font:400 21px/1.3 Georgia,serif}
html[data-complete-luxury] .money-overview-lines{background:transparent;padding:0}
html[data-complete-luxury] .money-overview-lines>div,html[data-complete-luxury] .money-balances>div{padding:17px;border:1px solid var(--border);background:var(--bg);border-radius:15px;margin-bottom:10px}
html[data-complete-luxury] .money-overview-lines strong,html[data-complete-luxury] .money-balances strong{font:400 30px/1.3 Georgia,serif;color:var(--pink)}
html[data-complete-luxury] .planner-overview .metrics>div:first-child{background:var(--cream)}
html[data-complete-luxury] .compact-expense{border:1px solid var(--border);background:var(--bg);border-radius:14px;margin:9px 0;padding:13px 10px}
html[data-complete-luxury] .monthly-expense-amount{font:400 24px Georgia,serif;color:var(--pink)}
html[data-complete-luxury] .compact-expense summary strong:not(.monthly-expense-amount){font-size:14px;font-weight:650}
html[data-complete-luxury] .chart-label{font-size:14px;line-height:1.5;margin-top:22px}
html[data-complete-luxury] progress{height:5px;border-radius:10px;background:var(--soft)}
html[data-complete-luxury] progress::-webkit-progress-value{background:var(--pink);border-radius:10px}
html[data-complete-luxury] .grocery-utility{padding:14px;background:var(--cream);border:1px solid var(--border);border-radius:14px;gap:8px;margin-bottom:18px}
html[data-complete-luxury] .grocery-utility>button{font-size:12px;min-height:44px}
html[data-complete-luxury] .grocery-totals{gap:10px;margin:20px 0;grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-complete-luxury] .grocery-totals>div{background:var(--bg);padding:13px 12px;border:1px solid var(--border);border-radius:14px;min-width:0}
html[data-complete-luxury] .grocery-totals dt{font-size:11px;line-height:1.5}
html[data-complete-luxury] .grocery-totals dd{font:400 25px/1.25 Georgia,serif;color:var(--pink);margin:7px 0 0;overflow-wrap:anywhere}
html[data-complete-luxury] .grocery-stock-row{border:1px solid var(--border);border-radius:15px;background:var(--bg);padding:15px 13px;margin:12px 0;gap:12px}
html[data-complete-luxury] .grocery-stock-row strong{font-size:15px}
html[data-complete-luxury] .grocery-shopping-row{border:1px solid var(--border);border-radius:16px;background:var(--bg);padding:16px 13px;margin:12px 0}
html[data-complete-luxury] .grocery-shopping-row .switch{margin:0}
html[data-complete-luxury] .grocery-shopping-row .switch strong{font-size:15px}
html[data-complete-luxury] .grocery-item-details{margin:12px 0 0 32px;background:var(--card)}
html[data-complete-luxury] .avatar{width:80px;height:80px;border:1px solid var(--border);border-radius:50%;background:var(--soft);display:grid;place-items:center;margin:12px auto 20px;font-size:37px}
html[data-complete-luxury] .avatar-options{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding-bottom:18px;border-bottom:1px solid var(--border)}
html[data-complete-luxury] .avatar-options button{width:44px;height:44px;min-width:44px;border:1px solid var(--border);border-radius:50%;background:var(--bg);font-size:23px}
html[data-complete-luxury] .auth-account-email{font:400 23px Georgia,serif;line-height:1.4}
html[data-complete-luxury] .account-sync{border:1px solid var(--border);border-radius:13px;background:var(--soft);font-size:12px;padding:14px}
html[data-complete-luxury] #preferences fieldset{display:grid;gap:5px}
html[data-complete-luxury] .notification-status{display:grid;grid-template-columns:1fr 1fr;gap:10px}
html[data-complete-luxury] .notification-status>div{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:13px;display:block}
html[data-complete-luxury] .notification-status dt{font-size:11px;color:var(--muted)}
html[data-complete-luxury] .notification-status dd{font-size:14px;font-weight:650;margin:7px 0 0;color:var(--pink)}
html[data-complete-luxury] .help-answer{font:400 17px/1.9 Georgia,serif;color:var(--text);padding:6px 0 22px;white-space:pre-line}
html[data-complete-luxury] .support-chat{padding:12px 0;max-height:480px}
html[data-complete-luxury] .chat-bubble{border:1px solid var(--border);border-radius:18px 18px 18px 5px;padding:18px 15px;margin:14px 0;background:var(--cream);font-size:14px;line-height:1.8;max-width:100%}
html[data-complete-luxury] .chat-bubble.user{background:var(--soft);border-radius:18px 18px 5px 18px;margin-left:25px}
html[data-complete-luxury] .chat-bubble strong{font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--pink)}
html[data-complete-luxury] .chat-bubble p{font-size:14px;line-height:1.8}
html[data-complete-luxury] .support-row{border:1px solid var(--border);border-radius:14px;padding:15px;background:var(--bg);margin:10px 0}
html[data-complete-luxury] #help-results .record{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
html[data-complete-luxury] #help-results .record small{color:var(--muted);font-size:11px;letter-spacing:.3px}
html[data-complete-luxury] dialog{background:var(--card);border:1px solid var(--border);border-radius:24px;width:calc(100% - 20px);max-width:620px;max-height:calc(100dvh - 28px);padding:0;box-shadow:0 30px 100px #35152335}
html[data-complete-luxury] dialog::backdrop{background:#321a2a80;backdrop-filter:blur(7px)}
html[data-complete-luxury] #dialog-content{padding:0 20px 24px;overflow-x:hidden}
html[data-complete-luxury] .dialog-visual{display:flex;align-items:center;gap:15px;margin:0 -20px 0;padding:17px 20px;background:var(--cream);border-bottom:1px solid var(--border);min-height:97px}
html[data-complete-luxury] .dialog-visual .feature-photo{height:64px;width:64px;flex:0 0 64px;aspect-ratio:1;border-radius:50%;border:4px solid var(--card);box-shadow:0 0 0 1px var(--border)}
html[data-complete-luxury] .dialog-visual>span:last-child{font-size:9px;font-weight:650;letter-spacing:2px;color:var(--pink)}
html[data-complete-luxury] .dialog-head{position:relative;background:var(--card);padding:20px 0 17px;border-bottom:1px solid var(--border);margin-bottom:20px;gap:12px;align-items:start}
html[data-complete-luxury] .dialog-head h2{font:400 29px/1.15 Georgia,serif;letter-spacing:-.8px;flex:1;margin:4px 0}
html[data-complete-luxury] .dialog-head>button{width:44px;height:44px;min-width:44px;flex:0 0 44px;min-height:44px;background:var(--bg);border:1px solid var(--border);color:var(--pink);border-radius:50%;font-size:16px}
html[data-complete-luxury] .luxury-detail{border:1px solid var(--border);border-radius:13px;padding:16px;background:var(--bg);margin:12px 0}
html[data-complete-luxury] .luxury-detail p{font-size:15px;line-height:1.8;white-space:pre-line;margin:9px 0 0}
html[data-complete-luxury] .save-bar{padding:14px 0 0;background:var(--card);border-top:1px solid var(--border)}
html[data-complete-luxury] .save-bar>button{width:100%}
html[data-complete-luxury] .bulk-row{border:1px solid var(--border);border-radius:17px;background:var(--bg);padding:16px;margin:14px 0}
html[data-complete-luxury] .bulk-row.has-errors{border-color:#b56678}
html[data-complete-luxury] #bulk-preview [data-bulk-summary]{border:1px solid var(--border);background:var(--soft);padding:15px;border-radius:13px;font-size:13px}
html[data-complete-luxury] #toast{background:var(--lux-wine);color:#fff7ee;border:1px solid #b58a66;border-radius:14px;padding:15px 18px;box-shadow:0 8px 28px #35152322;font-size:13px;line-height:1.6}
html[data-complete-luxury] #app-update{background:var(--card);border:1px solid var(--border);border-radius:17px;box-shadow:0 10px 30px #35152322;color:var(--text)}
html[data-complete-luxury] #nav{border-top:1px solid var(--border);background:var(--card);box-shadow:0 -5px 25px #612c4309;max-width:1060px;padding:8px 7px max(8px,env(safe-area-inset-bottom));gap:4px}
html[data-complete-luxury] #nav button{min-height:58px;font-size:11px;border-radius:15px;padding:7px 0;gap:6px;color:var(--muted)}
html[data-complete-luxury] #nav button.active{background:var(--soft);color:var(--pink);box-shadow:inset 0 0 0 1px #ba8c9d33}
html[data-complete-luxury] #nav svg{width:22px;height:22px;stroke-width:1.4}
html[data-complete-luxury] #auth-root{background:var(--bg);min-height:100dvh}
html[data-complete-luxury] .auth-shell{max-width:580px;margin:auto;background:var(--bg);padding:24px 20px 35px;color:var(--text)}
html[data-complete-luxury] .auth-shell>.brand{font:400 28px Georgia,serif;letter-spacing:5px;justify-content:center;gap:12px;margin:8px 0 27px}
html[data-complete-luxury] .auth-shell>.brand img{width:36px;height:36px;border-radius:50%;outline:1px solid var(--border);outline-offset:4px}
html[data-complete-luxury] .auth-editorial{height:190px;border-radius:23px 23px 0 0;position:relative;overflow:hidden;background:var(--soft);border:1px solid var(--border);border-bottom:0}
html[data-complete-luxury] .auth-editorial .feature-photo{width:100%;height:100%;aspect-ratio:auto;background-size:520.68% 285%;background-position:100% 78%;opacity:.95}
html[data-complete-luxury] .auth-editorial:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#381a2c99)}
html[data-complete-luxury] .auth-editorial>span:last-child{position:absolute;bottom:22px;left:23px;font-size:10px;letter-spacing:3px;color:#fff8f1;z-index:1}
html[data-complete-luxury] .auth-card{border:1px solid var(--border);border-top:2px solid var(--lux-gold);border-radius:0 0 23px 23px;background:var(--card);padding:25px 23px;gap:18px;box-shadow:0 12px 40px #612c4308}
html[data-complete-luxury] .auth-card h1{font:400 37px/1.1 Georgia,serif;letter-spacing:-1px;color:var(--text);margin:0}
html[data-complete-luxury] .auth-card .eyebrow{font-size:10px;letter-spacing:2px;color:var(--pink)}
html[data-complete-luxury] .auth-intro{font-size:14px;line-height:1.8;color:var(--muted)}
html[data-complete-luxury] .auth-fine{font-size:12px;line-height:1.8;color:var(--muted);margin-top:20px}
html[data-complete-luxury] .auth-card .auth-fine{margin-top:0;text-align:left}
html[data-complete-luxury] .auth-card label{color:var(--muted)!important}
html[data-complete-luxury] .auth-card input{background:var(--bg);color:var(--text)}
html[data-complete-luxury] :is(.auth-back,.auth-text){min-height:44px;font-size:13px;color:var(--pink);line-height:1.5}
html[data-complete-luxury] .auth-outline{background:var(--card);border:1px solid var(--pink);color:var(--pink)}
html[data-complete-luxury] :is(.auth-setup,.auth-notice){font-size:12px;line-height:1.7;background:var(--soft);border:1px solid var(--border);border-radius:13px;color:var(--pink);padding:14px}
html[data-complete-luxury] .auth-flower{display:none}
html[data-complete-luxury][data-auth-loading] .auth-editorial .feature-photo{animation:luxury-breathe 2s ease-in-out infinite alternate}
@keyframes luxury-breathe{to{opacity:.6}}
html[data-complete-luxury] .feature-arrow{font-family:Arial,sans-serif;line-height:1}
html[data-complete-luxury][data-theme=dark]{--lux-wine:#e9b4c8;--lux-rose:#674050;--lux-gold:#d0ad7f;--shadow:0 10px 30px #0002}
html[data-complete-luxury][data-theme=dark] .primary{color:#33202b}
html[data-complete-luxury][data-theme=dark] .chips:not(.section-tabs) .chip.active{color:#33202b}
html[data-complete-luxury][data-theme=dark] .form-error:not(:empty){background:#4b2e3b;color:#ffc4d0;border-color:#855366}
@media(min-width:680px){html[data-complete-luxury] #main{padding-inline:30px}html[data-complete-luxury] .chapter-image{height:250px}.chapter-copy{left:32px;top:45px;max-width:55%}.chapter-copy h2{font-size:46px;max-width:440px}.chapter-number{left:32px;font-size:24px}html[data-complete-luxury] .card{padding:24px}html[data-complete-luxury] .notification-status{grid-template-columns:repeat(3,1fr)}html[data-complete-luxury] .auth-shell{padding-top:35px}html[data-complete-luxury] .auth-editorial{height:220px}html[data-complete-luxury] .auth-card{padding:33px}html[data-complete-luxury] .auth-card h1{font-size:44px}}
@media(max-width:350px){html[data-complete-luxury] #main{padding-inline:12px}html[data-complete-luxury] .hero{padding-inline:17px}html[data-complete-luxury] .status-row{margin-inline:17px}html[data-complete-luxury] .card{padding:17px 14px}.chapter-copy{left:18px;max-width:70%}.chapter-copy h2{font-size:30px;max-width:205px}.chapter-eyebrow{font-size:8px;letter-spacing:1.5px}html[data-complete-luxury] #dialog-content{padding-inline:16px}.dialog-visual{margin-inline:-16px!important}html[data-complete-luxury] .dialog-head h2{font-size:26px}html[data-complete-luxury] .section-tabs .chip{font-size:11px;padding-inline:8px}html[data-complete-luxury] .grocery-totals dd{font-size:22px}html[data-complete-luxury] .cycle-dashboard{grid-template-columns:1fr}html[data-complete-luxury] .form-grid{grid-template-columns:1fr}html[data-complete-luxury] .auth-shell{padding-inline:14px}html[data-complete-luxury] .auth-card{padding:23px 19px}html[data-complete-luxury] .auth-card h1{font-size:33px}}
@media(prefers-reduced-motion:reduce){html[data-complete-luxury] *,html[data-complete-luxury] *:before,html[data-complete-luxury] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* WCAG corrections within the approved palette; layout and typography stay unchanged. */
html[data-complete-luxury] .task-name .done{opacity:1;color:var(--muted)}
html[data-complete-luxury] .calendar .day.outside{opacity:1;color:var(--muted)}
html[data-complete-luxury] .chapter-number{color:#80633e}
html[data-complete-luxury][data-theme=dark] .danger{color:#f0b3c1}
html[data-complete-luxury][data-theme=dark] .chapter-number{color:var(--lux-gold)}
/* Keep the original page heading available to assistive technology under the approved chapter layout. */
html[data-complete-luxury]:not([data-luxury-home]) .hero #hero-title{display:block;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Homepage only. Original feature assets, routes, task controls and navigation remain intact. */
html[data-luxury-home] .hero{min-height:0;padding:14px 20px 16px}
html[data-luxury-home] .hero h1{font-size:27px;font-weight:700;line-height:1.12;letter-spacing:-.7px;max-width:100%;margin:12px 0 0}
html[data-luxury-home] .hero #hero-subtitle{display:block;max-width:240px;font-size:12px;line-height:1.5;margin:8px 0 0;color:var(--muted)}
html[data-luxury-home] .hero:before{inset:58px -22px 0 52%;opacity:.65;background-size:100% 100%,486% auto}
html[data-luxury-home] .status-row{padding-block:6px;margin-bottom:9px}
html[data-luxury-home] .today-summary{padding:12px 16px;margin-bottom:12px;gap:0 10px}
html[data-luxury-home] .today-summary>div{align-self:center}
html[data-luxury-home] .today-summary strong{font:700 17px/1.3 Georgia,serif}
html[data-luxury-home] .daily-percent{font-size:27px;line-height:1.2;align-self:center}
html[data-luxury-home] .today-summary progress{margin:8px 0 6px}
html[data-luxury-home] #main>.card:not(.today-summary){padding:14px;margin-block:0 12px}
html[data-luxury-home] .section-head{gap:8px;padding-bottom:8px;margin-bottom:4px}
html[data-luxury-home] .section-head h2{font-size:22px;font-weight:700}
html[data-luxury-home] .section-head>button{padding:8px 10px;min-height:44px;flex-shrink:0}
html[data-luxury-home] .task{padding-block:10px;gap:9px}
html[data-luxury-home] .task-name small{margin-top:3px}
html[data-luxury-home] .task-name strong{font:700 16px/1.35 Georgia,serif}
html[data-luxury-home] .home-action-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px}
html[data-luxury-home] .home-action-row button{margin:0;min-height:44px}
html[data-luxury-home] .collection-heading{margin:0 2px 10px}
html[data-luxury-home] .collection-heading h2{font-size:23px;margin-top:5px}
html[data-luxury-home] .home-feature-directory{margin:12px 0 0;border:1px solid var(--border);border-radius:18px;background:var(--card);overflow:hidden}
html[data-luxury-home] .home-feature-directory>summary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 16px;list-style:none;cursor:pointer;color:var(--pink);background:var(--soft);font:700 18px/1.3 Georgia,serif}
html[data-luxury-home] .home-feature-directory>summary::-webkit-details-marker{display:none}
html[data-luxury-home] .home-feature-directory>summary:after{content:'+';font:20px/1 Georgia,serif}
html[data-luxury-home] .home-feature-directory[open]>summary:after{content:'−'}
html[data-luxury-home] .home-feature-directory nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:10px;border-top:1px solid var(--border)}
html[data-luxury-home] .home-feature-directory nav button{min-width:0;min-height:48px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);font-size:12px;line-height:1.4;text-align:left}
html[data-luxury-home] .home-feature-directory :is(summary,button):focus-visible{outline:2px solid var(--pink);outline-offset:-4px}
html[data-luxury-home] .home-routine-more{padding:0 10px 10px}
html[data-luxury-home] .home-weekly-summary{display:block;padding:0 12px 12px;color:var(--muted);font-size:11px}
html[data-luxury-home] .home-studios{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:8px}
html[data-luxury-home] .luxury-feature{border-radius:13px}
html[data-luxury-home] .home-studios .feature-photo{height:clamp(94px,27vw,118px);aspect-ratio:auto;background-size:var(--home-photo-width) auto}
html[data-luxury-home] .feature-photo[data-image=planner]{--home-photo-width:486.08%}
html[data-luxury-home] .feature-photo[data-image=wellness]{--home-photo-width:531.49%}
html[data-luxury-home] .feature-photo[data-image=workout]{--home-photo-width:527.84%}
html[data-luxury-home] .feature-photo[data-image=period]{--home-photo-width:503.61%}
html[data-luxury-home] .feature-photo[data-image=skincare]{--home-photo-width:524.23%}
html[data-luxury-home] .feature-photo[data-image=money]{--home-photo-width:508.61%;background-position-y:62%}
html[data-luxury-home] .feature-photo[data-image=shopping]{--home-photo-width:517.17%;background-position-y:62%}
html[data-luxury-home] .feature-photo[data-image=studio]{--home-photo-width:527.84%;background-position-y:62%}
html[data-luxury-home] .feature-photo[data-image=goals]{--home-photo-width:506.93%;background-position-y:62%}
html[data-luxury-home] .feature-photo[data-image=selfcare]{--home-photo-width:520.68%;background-position-y:62%}
html[data-luxury-home] .feature-caption{padding:9px 10px;min-height:48px}
html[data-luxury-home] .feature-caption strong{font-size:16px;font-weight:700;line-height:1.15;letter-spacing:-.2px;min-height:0;padding-right:12px}
html[data-luxury-home] .feature-caption small{display:none}
html[data-luxury-home] .feature-arrow{right:11px;bottom:12px;width:8px;height:8px;font-size:0;border-top:1px solid currentColor;border-right:1px solid currentColor}
html[data-luxury-home] .feature-arrow:after{content:'';position:absolute;right:0;top:0;width:10px;border-top:1px solid currentColor;transform:rotate(-45deg);transform-origin:right center}
@media(max-width:350px){html[data-luxury-home] .hero{padding-inline:16px}html[data-luxury-home] .hero h1{font-size:25px}html[data-luxury-home] .feature-caption strong{font-size:15px}}
@media(min-width:680px){html[data-luxury-home] .hero{padding-inline:30px}html[data-luxury-home] .hero h1{max-width:480px;font-size:36px}html[data-luxury-home] .home-studios .feature-photo{height:140px}html[data-luxury-home] .home-studios{gap:14px}}
