/* Bella UI: system typography, restrained glass, accessible native controls. */
:root{--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",ui-sans-serif,system-ui,sans-serif;--ui-glass:rgba(255,253,250,.88);--ui-border:rgba(105,75,64,.15);--ui-shadow:0 8px 32px rgba(53,32,41,.065),0 1px 2px rgba(53,32,41,.04);--ui-accent:#6b3049;--ui-radius:24px;color-scheme:light}
body{background:radial-gradient(ellipse at 0 8%,#f2e5e6 0,transparent 45%),radial-gradient(ellipse at 100% 70%,#e8e4f1 0,transparent 40%),#f8f6f3;font-family:var(--sans);letter-spacing:-.012em}
button,input,select,textarea{font-family:var(--sans)}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button:disabled{cursor:not-allowed}
.button{border-radius:999px;min-height:46px;letter-spacing:.065em;font-weight:600;transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease}
.button-copper{background:linear-gradient(155deg,#e2b297,#c58a70);color:#2e1d22;box-shadow:inset 0 1px 0 #ffffff70,0 5px 15px #49212b1a}
.button-outline{background:rgba(255,251,247,.64);border:1px solid #bca698;color:#4a2936;box-shadow:inset 0 1px 0 #fff9}
.hero .button-outline,.site-header .button-outline,.mybella-section .button-outline{background:rgba(255,255,255,.08);color:#fff3e8;border-color:#dac0b777}
.button-dark{background:#54263a;color:#fff9f2}
.site-header{background:rgba(29,22,28,.9);border-bottom:1px solid #ffffff24;box-shadow:0 8px 24px #23121c0a;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}
.site-header.scrolled{background:rgba(29,22,28,.94)}
.desktop-nav{gap:4px}.desktop-nav>a{padding:10px 14px;border-radius:99px;min-height:44px;display:inline-flex;align-items:center}.desktop-nav>a:hover{background:#ffffff12}
.calendar-header{margin:12px auto 0;width:calc(100% - 32px);max-width:1180px;border:1px solid #fff;border-radius:22px;background:var(--ui-glass);color:#412637;box-shadow:var(--ui-shadow);padding:12px 24px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.calendar-header a{font-weight:600;border-radius:14px;padding:4px 8px}.calendar-header a:first-child{font-size:26px;font-weight:400}
.calendar-page{padding-top:38px}.calendar-page h1{letter-spacing:-.055em}.calendar-page>.eyebrow{color:#723e53;letter-spacing:.16em}
.calendar-panel,.portfolio-card,.style-reference,.shop-product,.reference-picker,.agenda-visual{background:var(--ui-glass);border:1px solid var(--ui-border);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow)}
.calendar-panel{padding:28px}.calendar-panel h2{font-size:28px}.calendar-panel p{color:#5d4f55}
.calendar-filters{background:var(--ui-glass);padding:22px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow)}
.calendar-page input,.calendar-page select,.calendar-page textarea,.shop-toolbar input,.shop-toolbar select,.agenda-view-filters input,.agenda-view-filters select{border:1px solid #cdbfc5;border-radius:14px;background:#fffdfb;min-height:48px;padding:13px 14px;color:#30202b;font-weight:400;box-shadow:inset 0 1px 3px #39263105}
.calendar-page input[type=checkbox],.reference-picker input[type=checkbox]{min-height:24px;width:24px;accent-color:var(--ui-accent)}
select{cursor:pointer}input[type=search]{appearance:auto;-webkit-appearance:auto}
.booking-steps{padding:5px;gap:5px;border-radius:18px;border:1px solid #d9cdd2;background:#e9e3e5}
.booking-steps li{border:0;background:transparent;border-radius:13px;font-size:13px;letter-spacing:-.01em;padding:12px 8px;color:#685860}
.booking-steps li[aria-current=step]{background:#fffdfb;color:#54263a;box-shadow:0 2px 7px #35212b15;font-weight:650}
.booking-summary{background:#eae3eb;border:1px solid #ded2dd;color:#56384c;border-radius:16px}
.month-navigation h2{font:600 22px var(--sans);letter-spacing:-.035em}.month-navigation button{border:1px solid #e1d5dc;background:#f2e9ef;color:#64364d;transition:background .16s ease}
.weekdays{font-weight:600;color:#786b74}.month-days{gap:6px}.month-days button{background:#eee5ed;border:1px solid #e2d5e0;border-radius:14px;min-height:62px;color:#5f334d}.month-days button>span{font-size:16px;font-weight:650}.month-days button small{color:#68515e;font-size:9px}.month-days button:disabled{background:#f6f2f4;border-color:transparent;color:#91868d}.month-days button:disabled small{color:#a298a0}.month-days button[aria-pressed=true]{background:#66334e;color:#fffaf7;box-shadow:0 4px 12px #66334e26}.month-days button[aria-pressed=true] small{color:#fff3fa}
.time-options button{border-radius:16px;background:#f6eff4;border:1px solid #d7c4d1;color:#4d2a40;min-height:52px;font-size:14px}.time-options button[aria-pressed=true]{background:#66334e;color:#fffaf7;box-shadow:0 4px 12px #66334e20}
.catalog-tabs{margin:24px auto 16px;width:fit-content;max-width:calc(100% - 32px);padding:6px;gap:4px;border:1px solid #d6c9cf;border-radius:999px;background:#ece5e8;box-shadow:inset 0 1px 0 #fff}
.catalog-tabs button{min-height:46px;border:0;background:transparent;padding:12px 24px;border-radius:99px;font-size:13px;color:#66535f;letter-spacing:0}
.catalog-tabs button[aria-pressed=true]{background:#fffdfb;color:#5c2943;box-shadow:0 2px 8px #38202f15;font-weight:650}
.catalog-tabs+.button{display:flex;width:fit-content;max-width:calc(100% - 36px);margin:16px auto;white-space:normal;text-align:center}
.portfolio-card{overflow:hidden;transition:box-shadow .18s ease}.portfolio-copy h3{font:600 20px/1.25 var(--sans);letter-spacing:-.035em}.portfolio-copy{padding:20px}.portfolio-copy p,.portfolio-copy small{color:#65525d}.portfolio-copy .photo-save{border-radius:12px;border-color:#cab5c3;background:#faf4f8;box-shadow:none;color:#65304e}.portfolio-copy .photo-save[aria-pressed=true]{background:#63344d;color:#fff9f5}
.style-library{background:linear-gradient(150deg,#eee6ed,#f4eae2)}.style-reference h3{font:600 22px/1.3 var(--sans);letter-spacing:-.035em}.style-reference{padding:22px}.style-reference .eyebrow{color:#785d6d}.catalog-advanced{border-radius:18px;background:#ffffff9e;border-color:#d6c6d0}.catalog-intro{color:#6e5a66}
.inspiration-filters{gap:7px}.inspiration-filters .button{font-size:11px;letter-spacing:.035em;padding:11px 17px;background:#fffaf6;border-color:#dacbd3}.inspiration-filters .button[aria-pressed=true]{background:#66334e;border-color:#66334e;color:#fffaf6}
.photo-search input[type=search]{border-radius:15px;border-color:#cdbcc7;background:#fffdfb;min-height:48px}.photo-search input[type=checkbox]{accent-color:#66334e}.catalog-controls{padding:12px}.catalog-controls>span{font-size:13px;font-weight:600;color:#705262}
.modal{border:1px solid #fff;border-radius:28px;box-shadow:0 35px 100px #24121e42;background:#fcf9f6}.modal::backdrop{background:#21151f78;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.modal-close{min-width:44px;min-height:44px;background:#ede6e9;color:#4e3142;border-radius:50%}
.agenda-day{border-radius:17px;background:#fffdfb}.agenda-slot{border-radius:12px}.agenda-view-filters select,.agenda-view-filters input{font-size:14px}.reference-picker-grid label{border-radius:16px;background:#faf5f8}.reference-picker summary{font-weight:600}.my-reservation{border-color:#e0d3dc}
.bella-dock{display:none}
.calendar-page h1 em,.calendar-page h2 em,.style-library h2 em{color:#996076}
@media(hover:hover){.button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 6px 18px #49212b1c}.portfolio-card:hover{box-shadow:0 14px 35px #49212b13}}
@media(max-width:760px){
 body.bella-has-dock{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
 .bella-dock{position:fixed;z-index:25;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;bottom:calc(10px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);width:calc(100% - 28px);max-width:460px;padding:7px;background:rgba(255,250,249,.96);border:1px solid #fff;border-radius:26px;box-shadow:0 8px 35px #29131f26;backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%)}
 .bella-dock a{display:flex;align-items:center;justify-content:center;gap:5px;flex-direction:column;min-height:54px;min-width:0;border-radius:18px;color:#76616f;font-size:10px;font-weight:550;text-decoration:none;letter-spacing:0}.bella-dock svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.bella-dock a[aria-current=page]{background:#ece2eb;color:#602a49;font-weight:700}
 .calendar-header{width:calc(100% - 24px);padding:10px 12px;border-radius:18px;gap:8px}.calendar-header a{font-size:12px;padding:4px}.calendar-header a:first-child{font-size:22px}.calendar-page{padding:28px 16px 36px}.calendar-page h1{font-size:46px;margin-block:18px 20px}.calendar-page>.eyebrow{font-size:9px;line-height:1.8}.calendar-panel{padding:20px;border-radius:23px}.calendar-panel h2{font-size:25px}.calendar-filters{padding:18px;gap:16px;margin-block:18px}.calendar-page label{font-size:13px}.month-days{gap:4px}.month-days button{min-height:54px;border-radius:11px}.month-days button small{font-size:8px}.booking-steps li{font-size:11px;padding:11px 5px}.calendar-layout{gap:0}
 .catalog-tabs{width:calc(100% - 28px);margin-block:18px 12px;border-radius:19px;overflow:visible}.catalog-tabs button{flex:1;min-width:0;white-space:normal;min-height:48px;font-size:11px;line-height:1.3;padding:10px 6px;border-radius:14px}.catalog-tabs+.button{font-size:11px;padding:12px 18px}.portfolio-grid{gap:12px}.portfolio-copy{padding:13px}.portfolio-copy h3{font-size:17px}.portfolio-copy .photo-save{font-size:11px}.reference-use{font-size:12px!important;line-height:1.5}.photo-search{padding:16px;border:1px solid #dfd2db;border-radius:21px;background:#ffffffb8}.inspiration-filters{display:flex;flex-wrap:nowrap;overflow:auto;padding-bottom:12px;scrollbar-width:thin}.inspiration-filters .button{flex:none;padding:12px 16px}.catalog-intro{font-size:14px;line-height:1.7}.style-reference{border-radius:20px}.modal{border-radius:25px;max-height:calc(100dvh - 24px);width:calc(100% - 24px)}.modal-shell{padding:24px 18px}.site-header{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.hero .eyebrow{color:#e6b8c9}.shop-nav a{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.button,.portfolio-card{transition:none}.button:not(:disabled):hover{transform:none}}
@media(prefers-reduced-transparency:reduce){.site-header{background:#241a23}.calendar-header,.bella-dock,.calendar-panel,.portfolio-card,.style-reference{background:#fffaf6;backdrop-filter:none;-webkit-backdrop-filter:none}.modal::backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-contrast:more){.calendar-panel,.portfolio-card,.style-reference,.calendar-filters,.bella-dock{background:#fff;border-color:#7a6170}.calendar-panel p,.catalog-intro{color:#3d3038}.site-header{background:#211820}.month-days button:disabled{color:#62545d}}
@media(forced-colors:active){.calendar-panel,.portfolio-card,.style-reference,.bella-dock,.booking-steps li,.catalog-tabs button{border:1px solid CanvasText;box-shadow:none}.bella-dock a[aria-current=page],.booking-steps li[aria-current=step],.catalog-tabs button[aria-pressed=true]{outline:2px solid Highlight}}
