@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/jost-cyrillic-wght-normal-CjwCQKo9.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/jost-latin-ext-wght-normal-BDUtSsKd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/jost-latin-wght-normal-ObQm3Zd1.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--midnight: #081232;--navy: #003399;--navy-dark: #00266f;--ink: #0e1730;--body: #4c5470;--muted: #5c6378;--ivory: #f7f2e8;--page: #f4f2ec;--line: #e4dfd3;--gold: #e8b64f;--error: #b00020;--success: #0a6b2d;--radius: 8px;font-family:Jost Variable,Century Gothic,system-ui,sans-serif;color:var(--ink);background:var(--page)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5}a{color:var(--navy)}h1,h2,h3{margin:0;color:var(--ink);font-family:Bricolage Grotesque Variable,Century Gothic,sans-serif;font-weight:600;letter-spacing:-.02em;line-height:1.15}h1{font-size:2rem}h2{margin:32px 0 12px;font-size:1.3rem}h3{font-size:1.05rem}p{margin:0 0 12px}small{font-size:.85rem}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.pad{padding:24px}.muted{color:var(--muted)}.error{display:block;color:var(--error)}.success{color:var(--success);font-weight:500}.hint{display:block;color:var(--muted)}.hint a{font-weight:500}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:20px 14px;overflow-y:auto;background:var(--midnight);color:#ccd3e6}.sidebar-top{display:flex;align-items:center;justify-content:space-between;padding:0 8px 16px}.sidebar-logo{display:block;width:auto;height:34px}.menu-button{display:none;padding:6px 12px;border:1px solid rgb(255 255 255 / 30%);background:none}.sidebar nav{display:grid;flex:1;align-content:start;gap:1px}.sidebar nav a{display:block;padding:8px 10px;border-left:3px solid transparent;color:#ccd3e6;font-weight:500;text-decoration:none}.sidebar nav a:hover{background:#ffffff12;color:#fff}.sidebar nav a.active{border-left-color:var(--gold);background:#ffffff1a;color:#fff}.nav-group{margin:18px 0 6px;padding:0 12px;color:#8f9abb;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.sidebar-foot{display:grid;gap:4px;margin-top:16px;padding:14px 10px 0;border-top:1px solid rgb(255 255 255 / 14%);font-size:.9rem}.sidebar-foot a,.sidebar button.link,.sidebar button.link:hover:not(:disabled){justify-self:start;padding:0;background:none;color:#fff;font-weight:500;text-align:left}.content{width:min(1120px,100%);margin-inline:auto;padding:32px clamp(16px,3vw,40px) 120px}.page-intro{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 24px;margin-bottom:20px}.page-intro p{max-width:680px;margin:6px 0 0;color:var(--body);font-size:1.05rem}.page-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.guide{display:grid;gap:6px;margin-bottom:24px;padding:14px 18px;border-left:3px solid var(--gold);background:#fff;color:var(--body)}.guide strong{color:var(--ink);font-weight:600}.guide p,.guide ol{margin:0}.guide ol{padding-left:20px}button,a.button{display:inline-flex;align-items:center;justify-content:center;padding:9px 16px;border:1px solid transparent;border-radius:0;background:var(--navy);color:#fff;font:inherit;font-weight:600;text-decoration:none;cursor:pointer}button:hover:not(:disabled),a.button:hover{background:var(--navy-dark)}button:disabled{opacity:.5;cursor:default}button.secondary{border-color:var(--ink);background:#fff;color:var(--ink)}button.secondary:hover:not(:disabled){background:var(--ivory)}button.danger{border-color:var(--error);background:#fff;color:var(--error)}button.danger:hover:not(:disabled){background:#fbe9ec}button.link,button.link:hover:not(:disabled){padding:0;border:0;background:none;color:var(--navy);font-weight:500;text-decoration:underline}input,select,textarea{width:100%;padding:9px 11px;border:1px solid #cdc7b8;border-radius:0;background:#fff;color:var(--ink);font:inherit}input[type=checkbox],input[type=time],input[type=date],.toolbar select,.toolbar input,.table select{width:auto}input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:2px solid rgb(0 51 153 / 18%)}textarea{resize:vertical}.field{display:grid;gap:4px;font-weight:500}.form{display:grid;gap:14px;max-width:420px}.form.grid-2{grid-template-columns:1fr 1fr;max-width:none;align-items:end}.search{display:flex;gap:6px}.checkbox-line{display:inline-flex;gap:6px;align-items:center}.visibility{justify-self:start;padding:6px 10px;border:1px solid var(--line);background:var(--ivory, #f7f2e8);font-weight:500}.destination-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.destination-tabs button{border:1px solid var(--ink);background:#fff;color:var(--ink)}.destination-tabs button:hover:not(:disabled){background:var(--ivory, #f7f2e8)}.destination-tabs button[aria-pressed=true],.destination-tabs button[aria-pressed=true]:hover:not(:disabled){background:var(--ink);color:#fff}.add-destination{grid-template-columns:minmax(0,1fr) auto;align-items:start}.add-destination button{margin-top:26px}.text-field{display:grid;gap:4px;min-width:0}.field-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.text-field label{font-weight:500}.counter{color:var(--muted);font-size:.8rem;font-variant-numeric:tabular-nums;white-space:nowrap}.counter.over{color:var(--error);font-weight:600}.invalid input,.invalid textarea{border-color:var(--error)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.stat{display:grid;align-content:start;gap:2px;padding:16px 18px;border:1px solid var(--line);background:#fff;color:var(--body);text-decoration:none}.stat:hover{border-color:var(--navy)}.stat strong{color:var(--ink);font-family:Bricolage Grotesque Variable,sans-serif;font-size:2rem;font-weight:600;line-height:1.1}.stat-alert{border-left:3px solid var(--gold)}.analytics-stats{margin-top:16px}.analytics-chart,.analytics-table{margin-top:12px}.analytics-table summary{font-weight:600;cursor:pointer}.analytics-table .table{margin-top:12px}.daily-chart{position:relative;padding-top:18px}.daily-top{position:absolute;top:0;left:0;color:var(--muted);font-size:.75rem}.daily-bars{display:flex;align-items:flex-end;gap:2px;height:180px;border-bottom:1px solid var(--line)}.daily-slot{position:relative;display:flex;flex:1 1 0;align-items:flex-end;min-width:0;height:100%}.daily-bar{width:100%;min-height:1px;border-radius:4px 4px 0 0;background:#039}.daily-slot:hover .daily-bar{background:#00266f}.daily-tip{position:absolute;bottom:calc(100% - 28px);left:50%;z-index:2;display:none;padding:6px 10px;background:var(--ink);color:#fff;font-size:.8rem;white-space:nowrap;transform:translate(-50%)}.daily-slot:hover .daily-tip{display:block}.daily-axis{display:flex;justify-content:space-between;margin-top:6px;color:var(--muted);font-size:.75rem}.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin-top:12px}.panel{padding:16px 18px;border:1px solid var(--line);background:#fff}.panel h2{margin:0 0 10px;font-size:1.1rem}.panel p{margin:0}.simple-list{display:grid;margin:0;padding:0;list-style:none}.simple-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;padding:8px 0;border-top:1px solid #f0ebe0}.simple-list a{font-weight:500;text-decoration:none}.simple-list a:hover{text-decoration:underline}.tasks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.task{display:grid;gap:2px;padding:14px 16px;border:1px solid var(--line);background:#fff;color:var(--body);text-decoration:none}.task:hover{border-color:var(--navy)}.task strong{color:var(--ink);font-weight:600}.form-card{display:grid;gap:14px;margin-bottom:16px;padding:20px;border:1px solid var(--line);background:#fff}.form-card h2{margin:8px 0 0}.form-card h2:first-child{margin-top:0}.repeater{display:grid;gap:10px}.repeat-item{border:1px solid var(--line);background:#fff}.repeat-item summary{display:flex;align-items:center;gap:12px;padding:12px 16px;font-weight:500;cursor:pointer}.repeat-number{display:grid;flex:none;place-items:center;width:28px;height:28px;background:var(--ivory);font-size:.85rem;font-weight:600}.repeat-title{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.repeat-flag{flex:none;margin-left:auto;color:var(--error);font-size:.85rem}.repeat-body{display:grid;gap:16px;padding:4px 16px 16px;border-top:1px solid #f0ebe0}.repeat-actions{display:flex;flex-wrap:wrap;gap:8px}.repeat-actions .danger{margin-left:auto}.add-item{justify-self:start}.edit-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:24px;padding-top:12px}.edit-fields{display:grid;align-content:start;gap:14px}.field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:4px}.image-field{display:grid;grid-template-columns:minmax(0,120px) minmax(0,1fr);gap:14px;align-items:start}.image-preview{display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);background:var(--ivory);color:var(--muted);font-size:.8rem;text-align:center}.image-preview img{display:block;width:100%;height:100%;object-fit:cover}.image-preview.contain{background:#fff}.image-preview.contain img{object-fit:contain}.image-detail{display:grid;gap:4px;min-width:0}.image-detail strong{font-weight:600}.image-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:6px}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:12px}.image-grid .image-field{padding:14px;border:1px solid var(--line);background:#fff}.image-field.invalid{border-color:var(--error)}.text-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.text-tools input{flex:1 1 280px;width:auto}.text-tools select{flex:0 1 300px;width:auto}.text-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding-top:14px;border-top:1px solid #f0ebe0}.text-row.changed{margin-inline:-20px;padding:14px 20px;background:#fdf9ef}.text-row button{grid-column:1 / -1;justify-self:start}.save-bar{position:fixed;right:0;bottom:0;left:248px;z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;padding:12px clamp(16px,3vw,40px);border-top:1px solid var(--line);background:#fff;box-shadow:0 -8px 24px #08123214}.save-bar p{margin:0}.save-actions{display:flex;gap:16px;align-items:center}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.toolbar h1{margin-right:auto}.toolbar .search input{width:220px}.table{width:100%;overflow:hidden;border:1px solid var(--line);border-collapse:separate;border-spacing:0;background:#fff}.table th{color:var(--muted);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.table th,.table td{padding:10px 12px;border-bottom:1px solid #f0ebe0;text-align:left;vertical-align:top}.table tr:last-child td{border-bottom:0}.table tr.clickable{cursor:pointer}.table tr.clickable:hover{background:#fcf9f2}.table tr.inactive td{color:#9a9a9a}.table a{font-weight:500;text-decoration:none}.table a:hover{text-decoration:underline}.table .actions{display:flex;justify-content:flex-end;gap:12px}.table .time{width:64px;font-weight:600}.pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.badge{display:inline-block;padding:2px 8px;background:#eee;font-size:.75rem;font-weight:500;text-transform:capitalize}.badge-new{background:#e0ecff;color:#1d4ed8}.badge-in_progress,.badge-draft{background:#fff4d6;color:#8a5a00}.badge-done,.badge-published{background:#dcf5e3;color:#0a6b2d}.badge-spam{background:#f2e1e1;color:#8a1c1c}.fields{display:grid;gap:12px;padding:16px;border:1px solid var(--line);background:#fff}.fields dt{color:var(--muted);font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.fields dd{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.history{display:grid;gap:6px;padding-left:18px}.card{max-width:760px;margin-top:32px;padding:16px 20px;border:1px solid var(--line);background:#fff}.quick-actions{display:flex;gap:8px}.quick-actions a{padding:6px 14px;background:var(--navy);color:#fff;font-weight:500;text-decoration:none}.notes{display:grid;gap:10px;margin:0 0 12px;padding:0;list-style:none}.notes li{padding:10px 14px;border:1px solid var(--line);background:#fff}.notes p{margin:0 0 4px;white-space:pre-wrap;overflow-wrap:anywhere}.note-form{display:grid;justify-items:start;gap:8px;max-width:620px}.login{max-width:400px;margin:12vh auto 0;padding:36px;border:1px solid var(--line);background:#fff}.login-logo{display:block;width:auto;height:44px;margin:0 0 24px -16px}.login h1{margin-bottom:16px}.editor{display:grid;gap:14px;max-width:820px}.editor .form.grid-2{max-width:none}.body-text{font:15px/1.6 ui-monospace,Consolas,monospace}.translation{display:grid;gap:12px;padding:12px 16px;border:1px solid var(--line);background:#fff}.translation summary{font-weight:600;cursor:pointer}.translation .field{margin-top:12px}.editor-actions{display:flex;align-items:center;gap:12px}.editor .hint code{padding:1px 4px;background:#ecece8}.settings{display:grid;gap:14px}.hours{border-collapse:collapse}.hours th{padding:4px 16px 4px 0;font-weight:500;text-align:left}.hours td{padding:4px 16px 4px 0}.chips{display:grid;gap:6px;margin:0;padding:0;list-style:none}@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:static;height:auto;padding:12px 14px}.sidebar-top{padding:0}.menu-button{display:inline-flex}.sidebar nav,.sidebar-foot{display:none}.sidebar.open nav,.sidebar.open .sidebar-foot{display:grid}.sidebar.open nav{margin-top:12px}.save-bar{left:0}.edit-columns,.field-pair,.text-row,.form.grid-2,.image-grid{grid-template-columns:minmax(0,1fr)}.table{display:block;overflow-x:auto}}.schedule-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:14px}.view-switch{display:inline-flex;border:1px solid var(--ink)}.view-switch button{border:0;background:#fff;color:var(--ink)}.view-switch button:hover:not(:disabled){background:var(--ivory)}.view-switch button[aria-pressed=true],.view-switch button[aria-pressed=true]:hover:not(:disabled){background:var(--ink);color:#fff}.schedule-nav{display:inline-flex;gap:4px}.schedule-nav button{padding-inline:12px}.schedule-title{font-family:Bricolage Grotesque Variable,sans-serif;font-size:1.15rem;font-weight:600}.schedule-bar .checkbox-line{margin-left:auto}.month-scroll{overflow-x:auto}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px;border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff}.month-weekday{padding:8px 10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.month-cell{display:grid;align-content:start;gap:3px;min-height:112px;padding:6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.month-cell.outside{background:#faf8f3}.month-cell.outside .month-date{color:#b4afa2}.month-date{font-size:.85rem;font-weight:600}.today .month-date{display:inline-grid;place-items:center;justify-self:start;min-width:24px;height:24px;background:var(--navy);color:#fff}.today.week-day h3{color:var(--navy)}button.appt-chip{display:block;width:100%;padding:2px 6px;overflow:hidden;border:0;border-left:3px solid var(--navy);background:#e8eefb;color:var(--ink);font-size:.8rem;font-weight:400;text-align:left;white-space:nowrap;text-overflow:ellipsis}button.appt-chip:hover:not(:disabled){background:#d6e1f8}button.appt-chip strong{font-weight:600}.month-more{justify-self:start;font-size:.8rem}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));gap:8px;min-width:1040px}.week-day{display:grid;align-content:start;gap:6px;min-height:320px;padding:10px;border:1px solid var(--line);background:#fff}.week-day h3{font-size:.95rem}.week-day h3 span{color:var(--muted);font-family:Jost Variable,sans-serif;font-weight:400}.week-day p{margin:0;font-size:.85rem}button.appt-card{display:grid;justify-items:start;gap:0;width:100%;padding:8px;border:0;border-left:3px solid var(--navy);background:#e8eefb;color:var(--ink);font-weight:400;line-height:1.3;text-align:left}button.appt-card:hover:not(:disabled){background:#d6e1f8}button.appt-card small{color:var(--muted)}button.appt-completed{border-left-color:var(--success);background:#e6f4ea}button.appt-cancelled,button.appt-no_show{border-left-color:var(--error);background:#f8e8ea;text-decoration:line-through}.appt-detail{position:sticky;bottom:12px;z-index:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;margin-top:14px;padding:14px 18px;border:1px solid var(--line);border-left:3px solid var(--gold);background:#fff;box-shadow:0 10px 28px #08123224}.appt-detail>div:first-child{display:grid}.appt-detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.appt-detail-actions select{width:auto}@media(max-width:700px){.view-switch{display:flex;width:100%}.view-switch button{flex:1;padding-inline:8px}.schedule-bar .checkbox-line{margin-left:0}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.month-weekday{padding:6px 2px;font-size:.65rem;letter-spacing:0;text-align:center}.month-cell{min-width:0;min-height:68px;padding:3px}button.appt-chip{padding:1px 2px;font-size:.68rem;white-space:nowrap}.month-more{font-size:.68rem}.month-scroll:has(.week-grid){overflow-x:visible}.week-grid{grid-template-columns:minmax(0,1fr);min-width:0}.week-day{min-height:0}.appt-list{display:block;overflow:visible}.appt-list tbody{display:block}.appt-list tr{display:grid;grid-template-columns:64px minmax(0,1fr);gap:2px 8px;padding:12px;border-bottom:1px solid #f0ebe0}.appt-list tr:last-child{border-bottom:0}.appt-list td,.appt-list .time{width:auto;padding:0;border:0}.appt-list td:not(.time){grid-column:2}.appt-list .time{grid-row:1 / span 4}.appt-list select{width:100%;margin-top:6px}.hours,.hours tbody{display:block}.hours tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding-block:8px;border-bottom:1px solid var(--line)}.hours th,.hours td{padding:0}.hours td:last-child{display:flex;grid-column:1 / -1;align-items:center;gap:8px}.hours td:last-child:empty{display:none}.hours input[type=time]{flex:1;min-width:0}}
