@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap");
:root {
  /* Colors — brand */
  --color-primary: #2563eb;
  --color-danger: #dc2626;
  --color-success: #16a34a;
  --color-warning: #d97706;
  --color-primary-strong: #1d4ed8;
  --color-danger-strong: #b91c1c;
  --color-danger-deep: #991b1b;
  --color-danger-dark: #7f1d1d;
  --color-danger-emphasis: #9f1239;
  --color-success-strong: #047857;
  --color-success-accent: #10b981;
  --color-warning-strong: #92400e;
  --color-info: #0284c7;
  --color-info-strong: #0369a1;
  --color-info-dark: #155e75;
  --color-social-text: #1f1f1f;
  --color-social-border-hover: #5f6368;
  --color-preview-placeholder: #7b8794;

  /* Colors — text & surface */
  --color-text: #111827;
  --color-muted: #6b7280;
  --color-border: #e5e7eb;
  --color-surface: #fff;
  --color-background: #f9fafb;

  /* Spacing */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;

  /* Border radius */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-pill: 999px;

  /* Typography */
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 20px;
  --font-size-xl: 28px;

  /* Layout */
  --wrap: 1360px;
  --host-layout-min: 960px;
  --gutter: 24px;
  --main-gap: 15px;
  --main-radius: 15px;

  /* Gray scale */
  --gray-300: #d8dde3;
  --gray-700: #374151;

  /* Brand colors */
  --brand-primary: #9b1c2c;
  --brand-black: #0e0e0e;
  --brand-white: #fff;
  --brand-gray-900: #1f1f1f;
  --brand-gray-600: #6b6b6b;
  --brand-gray-300: #e8e8e8;
  --brand-gray-100: #f4f4f4;
  --brand-accent-blue: #2a4b7c;
  --brand-accent-blue-hover: #213a60;
  --brand-accent-blue-soft: #eef3f8;

  /* Surfaces */
  --surface-page: #f3f5f7;
  --surface-panel: var(--color-surface);
  --surface-muted: #f7f8fa;
  --surface-primary-soft: #eff6ff;
  --surface-primary-tint: #eef2ff;
  --surface-preview-focus: rgba(37, 99, 235, 0.11);
  --surface-success: #ecfdf5;
  --surface-danger: #fef2f2;
  --surface-danger-strong: #fff1f2;
  --surface-warning: #fef3c7;
  --surface-info: #ecfeff;
  --surface-info-soft: #f0f9ff;
  --surface-info-strong: #e0f2fe;
  --border-subtle: var(--color-border);
  --border-danger-soft: #fee2e2;
  --border-danger: #fca5a5;
  --border-success: #a7f3d0;
  --border-primary: #93c5fd;
  --border-info: #bae6fd;

  /* Focus */
  --focus: rgba(37, 99, 235, 0.28);
  --focus-ring: 0 0 0 3px var(--focus);
  --dialog-backdrop: rgba(15, 23, 42, 0.48);

  /* Form inputs */
  --input-font-size: 14px;
  --input-pad-y: 8px;
  --input-pad-x: 10px;
  --input-placeholder: rgba(31, 31, 31, 0.35);
  --input-disabled-text: rgba(31, 31, 31, 0.45);

  /* Danger aliases */
  --danger: var(--color-danger);
  --danger-ring: rgba(220, 38, 38, 0.2);

  /* Flyer */
  --flyer-sidebar-bg: #cfc7b6;
  --flyer-section-title: #344f7c;
  --flyer-footer-separator: #c4cbd5;
}

body.page:not(.page-event-detail),
body.page-auth {
  --color-text: #172033;
  --color-muted: #667085;
  --color-border: #e2e7ee;
  --color-background: #f4f6f9;
  --surface-page: #f4f6f9;
  --surface-muted: #f7f9fb;
  --brand-accent-blue: #294f82;
  --brand-accent-blue-hover: #203f69;
  --brand-accent-blue-soft: #edf3f9;
  --font-size-xs: 13px;
  --font-size-sm: 14px;
  --font-size-lg: 21px;
  --font-size-xl: 30px;
  --input-font-size: 15px;
  --input-pad-y: 10px;
  --input-pad-x: 12px;
  --wrap: 1280px;
  --host-layout-min: 0;
  --gutter: 28px;
  --main-gap: 18px;
  --main-radius: 14px;
  --shadow-panel: 0 1px 2px rgba(16, 24, 40, 0.04);
  --shadow-menu: 0 12px 28px rgba(16, 24, 40, 0.12);
}


*,*::before,*::after{box-sizing:border-box}
html{font-family:"Noto Sans KR",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}
body{margin:0;background:var(--surface-page);color:var(--color-text)}
body,input,textarea,select,button{font:inherit}
button,input,textarea,select{border:0}
button{padding:0}
a{color:inherit}
img,svg{max-width:100%}
[hidden]{display:none!important}


h1,h2,h3,h4,p,dl,dd{margin:0}
strong{font-weight:800}
.section-title{color:var(--color-text);font-size:var(--font-size-lg);font-weight:800;line-height:1.25}
.section-title--xl{font-size:var(--font-size-xl)}
.eyebrow{margin-bottom:var(--space-2);color:var(--color-muted);font-size:var(--font-size-xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.lead{margin-top:var(--space-2);color:var(--color-muted);font-size:var(--font-size-sm);line-height:1.6}
.lead--strong{margin-top:14px;color:var(--color-text);font-weight:800}
.help-text{margin:0;color:var(--color-muted);font-size:var(--font-size-xs);line-height:1.45}
.inline-link{color:var(--brand-accent-blue);text-decoration:underline;word-break:break-all}


.wrap{width:100%;min-width:0;max-width:var(--wrap);min-height:100vh;display:flex;flex-direction:column;margin:0 auto;padding:var(--main-gap)}
header{width:100%;min-height:68px;display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--main-gap);padding:0 var(--gutter);border:1px solid var(--color-border);border-radius:var(--main-radius);background:var(--brand-white);box-shadow:var(--shadow-panel,none)}
main{width:100%;flex:1;min-height:0;display:flex;flex-direction:column;margin-bottom:var(--main-gap)}
footer{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px var(--gutter);border:1px solid var(--color-border);border-radius:var(--main-radius);background:var(--brand-white);box-shadow:var(--shadow-panel,none)}
footer p{color:var(--brand-gray-600)}
footer nav{display:flex;gap:12px}
footer nav a:not(:last-child)::after{content:"|";margin-left:12px;color:var(--brand-gray-300)}
footer nav a[href="/privacy.php"]{font-weight:700}
.host-layout{display:grid;grid-template-columns:220px minmax(0,1fr);flex:1;gap:var(--space-6);min-width:var(--host-layout-min);align-items:stretch}
.host-container{min-width:0}
.page-shell{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--main-gap);align-items:start}
.center-page{min-height:560px;display:grid;place-items:center}
.panel-narrow{width:min(720px,100%)}
@media(max-width:980px){.host-layout{grid-template-columns:1fr;flex:initial}.page-shell{grid-template-columns:1fr}}
@media(max-width:640px){.wrap{padding:10px}header{min-height:58px;padding:0 var(--space-4)}footer{align-items:flex-start;flex-direction:column;padding:var(--space-4)}footer nav{flex-wrap:wrap}}

@media(max-width:760px){
  body.has-mobile-menu-open{overflow:hidden}
  .has-event-workspace .wrap{max-width:none;min-height:100dvh;padding:0;background:var(--surface-muted)}
  .has-event-workspace .wrap>header{position:sticky;z-index:120;top:0;min-height:70px;margin:0;padding:0 14px;border-width:0 0 1px;border-radius:0;box-shadow:none}
  .has-event-workspace main{margin:0;padding:0 14px calc(92px + env(safe-area-inset-bottom))}
  .has-event-workspace footer{display:none}
  .has-event-workspace .host-layout{display:flex;flex-direction:column;gap:14px}
  .has-event-workspace .host-container{width:100%}
  .has-event-workspace .page-title{font-size:25px}
}


.button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-size:var(--font-size-sm);font-weight:700;text-align:center;text-decoration:none}
.button:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.button:disabled{opacity:.55;cursor:not-allowed}
.button--primary{border-color:var(--brand-accent-blue);background:var(--brand-accent-blue);color:var(--color-surface)}
.button--primary:hover{border-color:var(--brand-accent-blue-hover);background:var(--brand-accent-blue-hover)}
.button--danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-surface)}
.button--danger:hover{background:var(--color-danger-strong)}
.button--secondary{background:var(--color-surface);color:var(--gray-700)}
.button--ghost{background:transparent;color:var(--gray-700)}
.button--secondary:hover,.button--ghost:hover{background:var(--surface-muted)}
.button--compact{min-height:0;height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--gray-700);font-size:var(--font-size-xs);font-weight:600;gap:var(--space-2)}
.button--compact:hover{background:var(--surface-muted)}
.button--compact:disabled{border-color:var(--gray-300);background:var(--surface-muted);color:var(--color-muted);opacity:1}
.button-icon{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:currentColor;font-size:10px;line-height:1}
.button-icon svg{width:12px;height:12px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.page:not(.page-event-detail) .button,body.page-auth .button{min-height:40px;padding-right:14px;padding-left:14px;border-radius:8px;white-space:nowrap}
body.page:not(.page-event-detail) .button--compact,body.page-auth .button--compact{min-height:30px;height:30px;padding-right:10px;padding-left:10px}


.form-stack{display:grid;gap:var(--space-4)}
.form-field{display:grid;gap:var(--space-2);margin-bottom:var(--space-4)}
.form-field-label,label{display:block;color:var(--brand-gray-900);font-size:var(--font-size-sm);font-weight:700}
.form-field-label{margin-bottom:var(--space-2)}
.form-field-control,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="datetime-local"],textarea,select{width:100%;padding:var(--input-pad-y) var(--input-pad-x);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--brand-gray-900);font-size:var(--input-font-size);line-height:1.4;outline:none}
.form-field-control:focus,input:focus,textarea:focus,select:focus{border-color:var(--color-primary)}
.form-field-control:disabled,input:disabled,textarea:disabled,select:disabled{background:var(--brand-gray-100);color:var(--input-disabled-text);cursor:not-allowed}
.form-required{color:var(--color-danger)}
.form-field-help{color:var(--color-muted);font-size:var(--font-size-xs);line-height:1.45}
.form-field-error{color:var(--color-danger);font-size:var(--font-size-sm)}
.form-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-top:18px}
.form-actions--end{justify-content:flex-end}
.form-actions-danger{margin-left:auto}
::placeholder{color:var(--input-placeholder);font-size:13px;font-weight:400;opacity:1}
textarea{min-height:96px;max-height:240px;overflow:auto;resize:none}
.input-group{min-height:48px;margin-bottom:var(--space-4);display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}
.input-group:focus-within{border-color:var(--color-primary)}
.input-group input[type="text"],.input-group input[type="email"],.input-group input[type="password"]{height:46px;min-width:0;flex:1;margin:0;padding:0 14px;border:0;background:transparent;font-size:var(--font-size-md);line-height:46px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.input-group-button{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;flex:none;background:transparent;color:var(--color-muted);cursor:pointer;font-size:var(--font-size-xs);font-weight:800}
.input-group-button:hover{color:var(--color-text)}
.input-group-button[aria-pressed="true"]{background:var(--surface-info-strong);color:var(--color-info-strong)}
.input-group-button--copy{width:auto;height:46px;padding:0 var(--space-3);border-left:1px solid var(--color-border);font-size:var(--font-size-sm)}
.input-group--sm{min-height:34px}
.input-group--sm input[type="text"],.input-group--sm input[type="email"],.input-group--sm input[type="password"]{height:32px;padding:0 10px;font-size:var(--font-size-sm);line-height:32px}
.input-group--sm .input-group-button{width:32px;height:32px}
.input-group--sm .input-group-button--copy{height:32px;padding:0 var(--space-2);font-size:var(--font-size-xs)}
.auth-password-icon{display:inline-flex;width:20px;height:20px}
.auth-password-icon svg{width:100%;height:100%}
.auth-password-icon-hide{display:none}
.input-group-button.is-revealed .auth-password-icon-show{display:none}
.input-group-button.is-revealed .auth-password-icon-hide{display:block}
.input-line{display:flex;gap:var(--space-2);align-items:center}
.input-line input{flex:1;min-width:0}
.file-list{display:flex;flex-direction:column;gap:2px}
.file-item{display:inline-flex;width:auto;max-width:100%;min-width:0;align-items:center;gap:var(--space-2);background:transparent;line-height:1.8}
.file-item-name{flex:0 1 auto;min-width:0;max-width:min(420px,62vw);overflow:hidden;color:var(--gray-700);text-decoration:none;text-overflow:ellipsis;white-space:nowrap}
.file-item-meta{flex:0 0 auto;margin-left:var(--space-1);color:var(--color-muted);font-size:var(--font-size-xs)}
.file-item-remove{flex:0 0 auto;background:transparent;color:var(--color-danger);cursor:pointer;font-size:var(--font-size-xs);font-weight:700;line-height:inherit}
.file-list-empty{padding:10px 0;color:var(--color-muted)}
.option-group{display:flex;align-items:center;gap:var(--space-4);min-width:0;min-height:40px}
.option-group-choices{display:inline-flex;align-items:center;gap:var(--space-3);flex:0 0 auto}
.option-group-choice{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-muted);font-weight:400;cursor:pointer}
.option-group-field{flex:1 1 auto;min-width:0}
.option-group-field input{width:100%;height:30px;margin:0;background:var(--color-surface)}
.option-group-field.is-hidden{visibility:hidden;opacity:0;pointer-events:none}
body.page:not(.page-event-detail) :is(.form-field-control,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="datetime-local"],textarea,select),body.page-auth :is(.form-field-control,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="datetime-local"],textarea,select){min-height:40px}


.card{padding:var(--space-6);border-radius:var(--radius-lg);background:var(--color-surface)}
.card-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:18px}
.card-body{min-width:0}
.card-footer{display:flex;margin-top:22px;padding-top:18px;border-top:1px solid var(--color-border)}
.card-section{margin-top:var(--space-6)}
.card-section-title{margin-bottom:10px;font-weight:800}
.card-title{font-weight:800;line-height:1.25}
.card-meta{color:var(--color-muted);font-size:var(--font-size-xs);line-height:1.45}
.card-action{color:var(--brand-accent-blue);font-size:var(--font-size-xs);font-weight:800;text-decoration:none}
.action-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:14px}
body.page:not(.page-event-detail) .card,body.page-auth .card{border:1px solid var(--color-border);box-shadow:var(--shadow-panel,none)}


.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:auto 0 0;padding-top:28px}
.stat-grid div{min-width:0;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-muted)}
.stat-grid dt{margin-bottom:4px;color:var(--color-muted);font-size:var(--font-size-xs);font-weight:700}
.stat-grid dd{font-size:24px;font-weight:800;line-height:1.2}


.step-list{display:grid;gap:10px;padding:0;list-style:none}
.step-list--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.step-item{display:grid;grid-template-columns:30px 1fr;align-items:start;gap:12px;min-width:0;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-muted);color:var(--gray-700)}
.step-index{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-size:var(--font-size-xs);font-weight:900}
.step-item strong,.step-item p,.step-item>span:not(.step-index){grid-column:2}
.step-item strong{display:block;color:var(--color-text);font-size:var(--font-size-sm);line-height:1.35}
.step-item p,.step-item>span:not(.step-index){display:block;margin-top:4px;font-size:var(--font-size-sm);line-height:1.5}
.step-list--plain .step-item{grid-template-columns:1fr}


.info-box{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-muted)}
.danger-box{margin-bottom:14px;padding:var(--space-3);border:1px solid var(--border-danger-soft);border-radius:var(--radius-md);background:var(--surface-danger-strong);color:var(--color-danger-dark)}
.danger-box strong{display:block;margin-bottom:6px;color:var(--color-danger-emphasis)}
.danger-box small{display:block;margin-top:4px;color:var(--color-muted);font-size:var(--font-size-xs)}


.dialog{position:fixed;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center}
.dialog-backdrop{position:absolute;inset:0;background:var(--dialog-backdrop)}
.dialog-panel{position:relative;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-md);background:var(--color-surface)}
.dialog-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--color-border)}
.dialog-body{overflow:auto;padding:var(--space-4)}
.dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface)}
.dialog-close{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--gray-700);font-size:var(--font-size-lg);line-height:1;cursor:pointer}
.dialog-close:hover{background:var(--surface-muted);color:var(--color-text)}
.dialog-panel--wide{width:min(680px,92vw);margin:72px auto;border-radius:14px}
.dialog-panel--ai{width:min(760px,92vw)}
.dialog-panel--attachment{width:min(640px,92vw)}
.dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}


.mini-editor{width:100%;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}
.mini-editor-toolbar{display:flex;align-items:center;border-bottom:1px solid var(--color-border);background:var(--surface-muted)}
.mini-editor-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:34px;border-right:1px solid var(--color-border);background:transparent;color:var(--gray-700);font-size:18px;font-weight:800;cursor:pointer}
.mini-editor-button:hover,.mini-editor-button.is-active{background:var(--brand-accent-blue-soft);color:var(--color-text)}
.mini-editor-strike{text-decoration:line-through}
.mini-editor-surface{min-height:160px;padding:var(--space-3);color:var(--color-text);font-size:var(--input-font-size);line-height:1.55;outline:none;overflow:auto;white-space:pre-wrap}
.mini-editor-surface:empty::before{content:attr(data-placeholder);color:var(--input-placeholder)}


.status-message{padding:14px 16px;border-radius:var(--radius-sm);line-height:1.45;overflow-wrap:anywhere}
.status-message--success{background:var(--surface-success);color:var(--color-success-strong)}
.status-message--error{background:var(--surface-danger);color:var(--color-danger-deep)}
.status-message--warning{background:var(--surface-warning);color:var(--color-warning-strong)}
.status-message--info{background:var(--surface-info);color:var(--color-info-dark)}


.data-table{width:100%;min-width:760px;border-collapse:collapse}
.data-table th,.data-table td{padding:13px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle;text-align:left}
.data-table thead th,.data-table-head{background:var(--surface-muted);color:var(--color-muted);font-size:var(--font-size-xs);font-weight:800;white-space:nowrap}
.data-table-row{border-bottom:1px solid var(--color-border)}
.data-table-cell{padding:10px 12px}
.data-table-empty{padding:var(--space-6);color:var(--color-muted);text-align:center}
.data-table tbody tr:hover{background:var(--surface-muted)}


.badge{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--color-muted);font-size:var(--font-size-xs);font-weight:800}
.badge--success{background:var(--surface-success);color:var(--color-success-strong)}
.badge--danger{background:var(--surface-danger);color:var(--color-danger-strong)}
.badge--warning{background:var(--surface-warning);color:var(--color-warning-strong)}


.host-header-logo{display:inline-flex;align-items:center;text-decoration:none}
.host-header-logo:hover{text-decoration:none}
.host-header-logo img{display:block;width:auto;height:30px}
.host-header-actions{display:flex;align-items:center;gap:16px}
.host-event-header-actions{display:flex;align-items:center;gap:8px}
.host-header-actions .host-event-header-action{min-height:38px;height:38px;padding-right:13px;padding-left:13px;gap:6px;border-radius:8px;font-size:12px;white-space:nowrap}
.host-event-header-action>svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.host-header-auth{display:flex;align-items:center;gap:10px}
.host-header-login-link{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:8px 12px;font-weight:700;font-size:var(--font-size-sm);background:var(--surface-panel);text-decoration:none}
.host-account-menu-button{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;padding:0;border-radius:50%;background:transparent;cursor:pointer}
.host-account-menu-button:hover{background:var(--surface-muted)}
.host-account-menu-button:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.host-account-avatar{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;flex:0 0 auto;border:2px solid #d8dee8;border-radius:var(--radius-pill);background:#304a75;color:#fff;font-weight:800}
.host-account-menu{position:relative}
.host-account-menu-panel{position:absolute;z-index:200;top:calc(100% + 10px);right:0;left:auto;width:308px;padding:10px;border:1px solid var(--border-subtle);border-radius:15px;background:var(--surface-panel);box-shadow:0 18px 42px rgba(16,24,40,.16);visibility:hidden;opacity:0;transform:translateY(-4px);transition:.15s}
.host-account-menu:focus-within .host-account-menu-panel,.host-account-menu .host-account-menu-panel[data-open="true"]{opacity:1;visibility:visible;transform:translateY(0)}
.host-account-profile{display:flex;align-items:center;gap:12px;padding:7px 8px 14px;border-bottom:1px solid var(--color-border)}
.host-account-profile-avatar{display:grid;width:46px;height:46px;place-items:center;flex:none;border-radius:50%;background:#304a75;color:#fff;font-size:15px;font-weight:800}
.host-account-profile-copy{min-width:0;display:grid;gap:3px}
.host-account-profile-name{display:flex;min-width:0;align-items:center;gap:7px}
.host-account-profile-name strong{overflow:hidden;font-size:14px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.host-account-profile-name small{padding:2px 6px;border-radius:5px;background:var(--brand-accent-blue-soft);color:#345b91;font-size:9px;font-weight:900;line-height:1.3}
.host-account-profile-email{overflow:hidden;color:var(--color-muted);font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.host-account-menu-links{display:grid;gap:2px;padding:9px 0}
.host-account-menu-link,.host-account-menu-legal{min-height:40px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;border-radius:9px;color:var(--color-text);font-size:13px;font-weight:700;text-decoration:none}
.host-account-menu-link:hover,.host-account-menu-link.is-active,.host-account-menu-legal:hover{background:var(--brand-accent-blue-soft)}
.host-account-menu-link>svg,.host-account-menu-legal>svg,.host-account-menu-logout>svg{width:16px;height:16px;fill:none;stroke:#5c4a88;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.host-account-menu-legal>span{display:flex;align-items:center;gap:4px}
.host-account-menu-legal a{color:inherit;text-decoration:none}
.host-account-menu-legal a:hover{text-decoration:underline}
.host-account-menu-external{justify-self:end;color:#98a2b3;font-size:11px}
.host-account-menu-footer{padding-top:9px;border-top:1px solid var(--color-border)}
.host-account-menu-logout{min-height:38px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;padding:8px 10px;border-radius:9px;color:#b5473c;font-size:13px;font-weight:800;text-decoration:none}
.host-account-menu-logout>svg{stroke:currentColor}
.host-account-menu-logout:hover{background:var(--surface-danger);color:var(--color-danger-strong)}
@media(max-width:720px){.host-header-actions{gap:8px}.host-event-header-actions{gap:6px}.host-header-actions .host-event-header-action{height:34px;min-height:34px;padding-right:9px;padding-left:9px;font-size:11px}}
@media(max-width:480px){.host-account-menu-panel{width:min(308px,calc(100vw - 32px))}.host-header-logo img{height:24px}.host-header-actions{min-width:0;flex:1;flex-wrap:wrap;padding:8px 0}.host-header-auth{order:1;margin-left:auto}.host-event-header-actions{order:2;flex-basis:100%;justify-content:flex-end}}

@media(max-width:760px){
  .has-event-workspace .host-header-logo img{height:25px}
  .has-event-workspace .host-header-actions{min-width:auto;flex:0 0 auto;flex-wrap:nowrap;gap:7px;padding:0}
  .has-event-workspace .host-event-header-actions{order:initial;flex-basis:auto;gap:7px}
  .has-event-workspace .host-header-actions .host-event-header-action{width:40px;height:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:var(--surface-muted);color:var(--color-text)}
  .has-event-workspace .host-event-header-action>svg{width:18px;height:18px}
  .has-event-workspace .host-event-header-action [data-host-share-label],.has-event-workspace .host-event-header-action>span:first-child:not(:last-child){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .has-event-workspace .host-event-header-action>span:last-child{font-size:20px;line-height:1}
  .has-event-workspace .host-header-auth{order:initial;margin-left:0}
  .has-event-workspace .host-account-menu-button{width:42px;height:42px}
  .has-event-workspace .host-account-avatar{width:40px;height:40px;border:0}
  .has-event-workspace .host-account-menu-panel{position:fixed;top:66px;right:12px;width:min(308px,calc(100vw - 24px))}
}


.page-title{font-size:22px;font-weight:800;line-height:1.35;margin-bottom:16px;letter-spacing:-.02em}
.page-head{margin-bottom:20px}
.page-head .page-title{margin-bottom:0}
.page-description{margin-top:8px;color:var(--color-muted);font-size:var(--font-size-sm);line-height:1.6}
.page-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.page-view-action{height:40px;min-height:40px;padding:0 16px;gap:7px}
.page-view-action::after{content:"↗";font-size:14px;font-weight:800;line-height:1}
.page-status{min-height:18px;margin-top:8px;color:var(--color-muted);font-size:var(--font-size-xs);font-weight:600}
.is-hidden{display:none}


.host-sidebar{position:sticky;z-index:20;top:18px;width:220px;min-width:0;padding:20px;display:flex;flex-direction:column;gap:16px;border:1px solid var(--color-border);border-radius:var(--main-radius);background:var(--surface-panel);box-shadow:var(--shadow-panel,none)}
.host-event-switcher{position:relative}
.host-event-switcher-trigger{width:100%;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid var(--color-border);border-radius:11px;background:var(--color-surface);color:var(--color-text);text-align:left;cursor:pointer}
.host-event-switcher-trigger:hover{border-color:#b8c4d5}
.host-event-switcher-trigger:focus-visible,.host-event-switcher-trigger[aria-expanded="true"]{border-color:var(--brand-accent-blue);box-shadow:var(--focus-ring);outline:0}
.host-event-switcher-trigger>svg{width:17px;height:17px;flex:none;fill:none;stroke:var(--brand-accent-blue);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.host-event-switcher-current{min-width:0;display:grid;gap:2px}
.host-event-switcher-current small{color:var(--color-muted);font-size:11px;font-weight:700;line-height:1.3}
.host-event-switcher-current strong{overflow:hidden;font-size:13px;font-weight:800;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.host-event-switcher-panel{position:absolute;z-index:30;top:calc(100% + 8px);left:0;width:min(360px,calc(100vw - 40px));overflow:hidden;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);box-shadow:0 18px 40px rgba(16,24,40,.16)}
.host-event-switcher-search{position:relative;margin:14px 14px 10px}
.host-event-switcher-search>svg{position:absolute;top:50%;left:12px;width:16px;height:16px;fill:none;stroke:#6580a5;stroke-linecap:round;stroke-width:1.8;transform:translateY(-50%);pointer-events:none}
.host-event-switcher-search input{width:100%;height:38px;padding:0 12px 0 36px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-surface);color:var(--color-text);font-size:13px;outline:0}
.host-event-switcher-search input:focus{border-color:#7d98bd;box-shadow:0 0 0 3px rgba(82,118,174,.09)}
.host-event-switcher-list{max-height:350px;overflow-y:auto;padding:0 0 8px}
.host-event-switcher-group h2{margin:0;padding:10px 16px 6px;color:#8490a3;font-size:11px;font-weight:800;line-height:1.35}
.host-event-switcher-option{min-height:55px;display:grid;grid-template-columns:9px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:8px 16px;color:var(--color-text);text-decoration:none}
.host-event-switcher-option:hover{background:var(--surface-muted)}
.host-event-switcher-option.is-current{background:var(--brand-accent-blue-soft)}
.host-event-switcher-status{width:7px;height:7px;border-radius:50%;background:#c5ccd6}
.host-event-switcher-status.is-live{background:#46ae72}
.host-event-switcher-status.is-upcoming{background:#4d72a7}
.host-event-switcher-status.is-draft{background:#d39b45}
.host-event-switcher-option-copy{min-width:0;display:grid;gap:2px}
.host-event-switcher-option-copy strong{overflow:hidden;font-size:13px;font-weight:800;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.host-event-switcher-option-copy small{color:#8490a3;font-size:11px;line-height:1.35}
.host-event-switcher-check{color:#6783aa;font-size:13px;font-weight:900;text-align:right}
.host-event-switcher-empty{margin:0;padding:28px 16px;color:var(--color-muted);font-size:12px;text-align:center}
.host-event-switcher-footer{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-top:1px solid var(--color-border)}
.host-event-switcher-footer a{color:#294f82;font-size:12px;font-weight:800;text-decoration:none}
.host-event-switcher-footer a:hover{text-decoration:underline}
.host-nav{margin-top:6px;border-top:1px solid var(--border-subtle);padding-top:8px;display:flex;flex-direction:column;gap:8px}
.host-nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:9px;font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700);text-decoration:none;background:transparent;cursor:pointer;position:relative;transition:background-color 0.15s ease,color 0.15s ease}
.host-nav-item:hover{background:var(--surface-muted);color:var(--color-text)}
.host-nav-item.is-active{color:var(--brand-accent-blue);background:var(--brand-accent-blue-soft);font-weight:700}
.host-nav-item small{font-size:var(--font-size-xs);color:inherit;opacity:0.7}
.host-nav-group{padding-top:12px;margin-top:12px;border-top:1px solid var(--border-subtle)}
.host-nav-group:first-child{padding-top:0;margin-top:0;border-top:0}
.host-nav-group-title{font-size:var(--font-size-xs);font-weight:600;color:var(--color-muted);margin:0 0 9px 2px}
.host-sidebar-event-list{display:flex;align-items:center;gap:7px;margin-top:auto;padding:14px 8px 2px;border-top:1px solid var(--border-subtle);color:var(--color-muted);font-size:12px;font-weight:700;text-decoration:none}
.host-sidebar-event-list:hover{color:var(--brand-accent-blue);text-decoration:none}
@media(max-width:980px){.host-sidebar{position:relative;top:0;width:100%}.host-event-switcher-panel{width:min(420px,calc(100vw - 72px))}.host-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.host-nav-group{margin:0;padding:0;border:0}.host-sidebar-event-list{margin-top:0}}
@media(max-width:640px){.host-nav{grid-template-columns:1fr}.host-sidebar{padding:var(--space-4)}.host-event-switcher-panel{width:calc(100vw - 54px)}}

.mobile-host-nav,.mobile-host-more{display:none}

@media(max-width:760px){
  .has-event-workspace .host-sidebar{position:relative;z-index:60;width:auto;margin:0 -14px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
  .has-event-workspace .host-nav,.has-event-workspace .host-sidebar-event-list{display:none}
  .has-event-workspace .host-event-switcher-trigger{min-height:62px;padding:10px 14px;border:0;border-radius:0;background:var(--color-surface)}
  .has-event-workspace .host-event-switcher-trigger:hover{border-color:transparent}
  .has-event-workspace .host-event-switcher-current small{font-size:11px}
  .has-event-workspace .host-event-switcher-current strong{font-size:15px}
  .has-event-workspace .host-event-switcher-panel{position:fixed;top:70px;right:12px;left:12px;width:auto;max-height:calc(100dvh - 168px)}
  .has-event-workspace .host-event-switcher-list{max-height:calc(100dvh - 280px)}
  .mobile-host-nav{position:fixed;z-index:180;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:68px;padding:5px 6px calc(5px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 -8px 24px rgba(16,24,40,.06)}
  .mobile-host-nav-item{position:relative;min-width:0;min-height:58px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:4px 2px;border:0;border-radius:10px;background:transparent;color:var(--color-muted);font:inherit;font-size:10px;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
  .mobile-host-nav-item:hover,.mobile-host-nav-item:focus-visible{background:var(--surface-muted);color:var(--color-text);text-decoration:none}
  .mobile-host-nav-item.is-active{color:var(--brand-accent-blue);font-weight:800}
  .mobile-host-nav-item>svg,.mobile-host-nav-icon>svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
  .mobile-host-nav-item:first-child>svg{fill:currentColor;stroke:none}
  .mobile-host-nav-icon{position:relative;display:inline-flex}
  .mobile-host-nav-icon small{position:absolute;top:-7px;left:17px;min-width:18px;height:18px;padding:0 5px;border:2px solid var(--color-surface);border-radius:999px;background:#cf5148;color:#fff;font-size:9px;font-weight:900;line-height:14px;text-align:center;white-space:nowrap}
  .mobile-host-more:not([hidden]){position:fixed;z-index:220;inset:0;display:block}
  .mobile-host-more-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(15,23,42,.42);cursor:pointer}
  .mobile-host-more-panel{position:absolute;right:0;bottom:0;left:0;padding:8px 20px calc(22px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;background:var(--color-surface);box-shadow:0 -20px 50px rgba(16,24,40,.2)}
  .mobile-host-more-header{min-height:auto;display:flex;align-items:center;justify-content:space-between;margin:0;padding:10px 0 8px;border:0;border-radius:0;background:transparent;box-shadow:none}
  .mobile-host-more-header h2{margin:0;font-size:19px}
  .mobile-host-more-header button{width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--surface-muted);color:var(--color-text);font-size:25px;line-height:1;cursor:pointer}
  .mobile-host-more-panel nav{display:grid;gap:2px}
  .mobile-host-more-panel nav a{display:flex;min-height:50px;align-items:center;justify-content:space-between;padding:0 12px;border-radius:10px;color:var(--color-text);font-size:14px;font-weight:700;text-decoration:none}
  .mobile-host-more-panel nav a:hover,.mobile-host-more-panel nav a:focus-visible{background:var(--surface-muted);text-decoration:none}
}


.flyer{position:relative;max-width:980px;margin:0 auto 40px}
.flyer-layout{display:grid;grid-template-columns:300px 1fr;min-height:800px;overflow:hidden;background:var(--surface-panel)}
.flyer-sidebar{display:grid;grid-template-rows:220px 1fr;min-height:800px;background:var(--flyer-sidebar-bg)}
.flyer-sidebar-top{position:relative;padding-top:70px}
.flyer-cover-img{display:block;width:300px;height:300px;object-fit:contain;object-position:center;background:var(--flyer-sidebar-bg)}
.flyer-sidebar-mark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12px;color:var(--surface-panel);font-size:34px;font-weight:800;line-height:1.05;text-align:left}
.flyer-poster-brand{display:none}
.flyer-status{position:absolute;top:22px;left:22px;z-index:3;display:inline-flex;min-height:30px;align-items:center;padding:5px 13px;border-radius:999px;background:#3d8862;color:#fff;font-size:12px;font-weight:800;line-height:1.2}

.flyer-main{position:relative;display:flex;min-height:800px;flex-direction:column;padding:70px 50px 0}
.flyer-header{position:absolute;inset:0 0 auto;pointer-events:none}
.flyer-brand{position:absolute;top:20px;right:24px;height:40px;opacity:.95;pointer-events:auto}
.flyer-title{color:var(--gray-700);font-size:24px;font-weight:800;line-height:1.28;overflow-wrap:anywhere;margin-bottom:18px}
.flyer-meta{display:flex;align-items:center;gap:8px;color:var(--gray-700);font-weight:700}
.flyer-meta-icon{flex:none;width:16px;height:16px;color:var(--color-muted)}
.flyer-meta-text,.flyer-place{min-width:0;overflow-wrap:anywhere}
.flyer-place{color:var(--color-muted)}
.flyer-datetime{margin-bottom:4px}
.flyer-place-row{margin-bottom:12px}

.flyer .flyer-meta .button.flyer-calendar-action,.flyer .flyer-meta .button.flyer-place-action{flex:none;min-height:22px;height:22px;padding:0 6px;border-color:var(--color-border);border-radius:6px;color:#8490a3;font-size:10px;font-weight:600;white-space:nowrap}
.flyer-calendar-action{margin-left:auto}
.flyer-place-actions,.flyer-actions,.flyer-footer,.flyer-attach-row{display:flex;gap:8px}
.flyer-place-actions{flex:none;align-items:center;margin-left:auto}
.flyer-main>.flyer-actions{padding-bottom:14px;border-bottom:1px solid #edf0f4}
.flyer-partners{min-height:52px;display:flex;align-items:center;gap:18px;padding:10px 0;border-bottom:1px solid #edf0f4}
.flyer-partners-title{width:58px;flex:none;margin:0;color:var(--color-muted);font-size:10px;font-weight:700;line-height:1.3}
.flyer-partner-logos{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:8px 16px}
.flyer-partner-logos img{display:block;width:auto;max-width:104px;height:24px;object-fit:contain}
.flyer-partners+.flyer-description-section .flyer-description{margin-top:18px}

.flyer-description-section{flex:1}
.flyer-description{min-height:220px;margin:24px 0;color:var(--gray-700);line-height:1.6;overflow-wrap:anywhere}
.flyer-description-toggle,.flyer-attachments-toggle{min-height:28px;background:transparent;color:var(--color-muted);font-size:11px;font-weight:700;cursor:pointer}
.flyer-description-toggle{display:inline-flex;align-items:center;gap:5px}
.flyer-attachments-toggle{display:inline-flex;align-items:center;gap:5px}
.flyer-description-toggle::after,.flyer-attachments-toggle::after{content:"▾";display:inline-flex;align-items:center;justify-content:center;font-size:12px;line-height:1;transition:transform .16s ease}
.flyer-description-toggle[aria-expanded="true"]::after,.flyer-attachments-toggle[aria-expanded="true"]::after{transform:rotate(180deg)}
.flyer-description.is-collapsed{display:-webkit-box;-webkit-line-clamp:9;-webkit-box-orient:vertical;overflow:hidden}

.flyer-section{margin-top:20px}
.flyer-section-title{margin:0 0 8px;color:var(--flyer-section-title);font-weight:800}
.flyer-section-count{color:#a7b0bf;font-weight:600}
.flyer-section-text,.flyer-section-list{margin:0;color:var(--gray-700);line-height:1.45;overflow-wrap:anywhere}
.flyer-section-text.is-empty{color:var(--color-muted)}
.flyer-section-list{padding-left:16px}
.flyer-attachments .flyer-section-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;padding-left:0;color:var(--color-muted);list-style:none}
.flyer-attach-row{align-items:flex-start;margin-top:12px}
.flyer-attachments{flex:1;min-width:0}
.flyer-attach-item{display:flex;min-width:0;min-height:26px;align-items:center;gap:5px;padding:4px 2px;border:0;border-bottom:1px solid #edf0f4;border-radius:0;background:transparent;font-size:11px}
.flyer-attach-item::before{content:"↧";flex:none;color:#344f7c;font-size:10px;font-weight:800}
.flyer-attach-item a{min-width:0;overflow:hidden;color:#172033;font-weight:600;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}
.flyer-attach-item a:hover{color:#172033;text-decoration:underline;text-underline-offset:2px}
.flyer-attach-item .text-muted{flex:none;margin-left:auto;font-size:9px}
.flyer-attendee-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}
.flyer-attendee-avatars{display:flex;flex:none;align-items:center;padding-left:8px}
.flyer-attendee-avatar{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;margin-left:-8px;border:2px solid var(--surface-panel);border-radius:50%;background:#dfe7f2;color:#344f7c;font-size:12px;font-weight:800}
.flyer-attendee-avatar:nth-child(2){background:#e7e1d6}
.flyer-attendee-avatar:nth-child(3){background:#dce9e3}
.flyer-attendee-avatar--more{background:#eef1f5;color:var(--color-muted)}

.flyer-main-tail{margin-top:auto}
.flyer-footer{justify-content:space-between;margin-top:16px;padding:12px 0;border-top:1px solid var(--gray-300);color:var(--color-muted);font-size:var(--font-size-xs)}
.flyer-register{flex:none;align-self:flex-start;line-height:1.2;text-decoration:none}
.flyer .flyer-main>.flyer-actions .flyer-register{min-height:40px;padding-right:20px;padding-left:20px}
.flyer .flyer-main>.flyer-actions .flyer-register:first-child{min-width:210px;padding-right:30px;padding-left:30px}
.flyer-register:focus-visible{outline:2px solid var(--brand-accent-blue);outline-offset:4px}
.flyer-register:disabled{opacity:1;cursor:default}

.flyer[data-page-template="poster"] .flyer-layout{display:block;min-height:0}
.flyer[data-page-template="poster"] .flyer-sidebar{display:block;min-height:0;background:var(--flyer-sidebar-bg)}
.flyer[data-page-template="poster"] .flyer-sidebar-top{width:100%;aspect-ratio:21/9;padding:0;overflow:hidden}
.flyer[data-page-template="poster"] .flyer-sidebar-bottom{display:none}
.flyer[data-page-template="poster"] .flyer-cover-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;background:var(--flyer-sidebar-bg)}
.flyer[data-page-template="poster"] .flyer-sidebar-mark{background:var(--flyer-sidebar-bg)}
.flyer[data-page-template="poster"] .flyer-poster-brand{position:absolute;top:22px;right:26px;z-index:2;display:block;width:auto;height:32px}
.flyer[data-page-template="poster"] .flyer-main{min-height:540px;padding:42px 56px 0}
.flyer[data-page-template="poster"] .flyer-header{display:none}
.flyer[data-page-template="poster"] .flyer-title{max-width:760px;font-size:28px;line-height:1.3}

@media(min-width:721px){.flyer[data-page-template="split"] .flyer-sidebar{position:relative;display:block}
.flyer[data-page-template="split"] .flyer-sidebar-top{position:absolute;inset:0;padding:0;overflow:hidden}
.flyer[data-page-template="split"] .flyer-sidebar-bottom{display:none}
.flyer[data-page-template="split"] .flyer-cover-img{width:100%;height:100%;object-fit:cover;object-position:center}
.flyer[data-page-template="split"] .flyer-sidebar-mark{background:var(--flyer-sidebar-bg)}
}


.page-auth{min-width:0;min-height:100vh;background:var(--color-background)}
.auth-shell{width:min(480px,100%);min-height:100vh;margin:0 auto;padding:64px 24px 44px;display:flex;flex-direction:column}
.auth-shell-wide{width:min(680px,100%)}
.auth-shell-account{width:min(820px,100%)}
.auth-logo{height:55px;display:flex;align-items:center;justify-content:center;margin-bottom:34px;text-decoration:none}
.auth-logo img{width:auto;max-width:70%;height:55px}
.auth-page-title{margin:0 0 8px;color:#101828;font-size:24px;line-height:1.3;text-align:center}
.auth-intro{margin-bottom:28px;color:var(--gray-700);line-height:1.55;text-align:center}
.auth-form{width:100%;padding:26px;border:1px solid var(--color-border);border-radius:var(--main-radius);background:var(--color-surface);box-shadow:var(--shadow-panel,none)}
.auth-form-wide{width:100%;margin:0 auto}

.page-auth .button--primary{width:100%;min-height:50px;margin-top:6px;border-radius:var(--radius-md);font-size:var(--font-size-md)}

.auth-remember-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:4px 0 20px;font-size:var(--font-size-sm)}
.auth-remember{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--gray-700);cursor:pointer}
.auth-remember input{flex:none}
.auth-find-link{color:var(--gray-700);font-weight:700;text-decoration:underline}
.auth-signup-hint{margin-top:22px;color:var(--gray-700);font-size:var(--font-size-sm);text-align:center}
.auth-signup-hint a{font-weight:700;text-decoration:underline}

.auth-social-list{display:grid;gap:12px;margin:0 0 24px}
.auth-divider{position:relative;margin:0 0 24px;text-align:center;color:var(--color-muted);font-size:var(--font-size-xs)}
.auth-divider::before{content:"";position:absolute;top:50%;left:0;width:100%;height:1px;background:var(--color-border)}
.auth-divider span{position:relative;padding:0 10px;background:var(--color-surface)}
.auth-social-button{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-social-text);font-family:Roboto,"Noto Sans KR",sans-serif;font-size:14px;font-weight:500;text-decoration:none}
.auth-social-button:hover{border-color:var(--color-social-border-hover)}
.auth-social-mark{width:20px;height:20px;flex:none;display:inline-flex;align-items:center;justify-content:center}
.auth-social-mark img{width:20px;height:20px}
.auth-social-mark--test{border-radius:var(--radius-pill);background:var(--surface-info-strong);color:var(--color-info-strong);font-size:11px;font-weight:800}
.auth-error,.auth-message{margin-bottom:var(--space-6)}
.auth-message{margin-top:20px}
.auth-error ul,.danger-box ul{margin:0;padding-left:18px;list-style-position:outside}

.auth-link-list,.auth-footer nav{display:flex;justify-content:center}
.auth-link-list{margin-top:18px;text-align:center}
.auth-link-list a,.auth-footer a{color:var(--gray-700);text-decoration:none}
.auth-link-list a+a::before{content:"|";margin:0 14px;color:var(--gray-300)}
.auth-footer{padding-top:36px;display:flex;flex-direction:column;align-items:center;gap:18px;color:var(--gray-700); background:none}
.auth-footer nav a+a::before{content:"|";margin:0 var(--space-2);color:var(--gray-300)}
.auth-footer nav a[href="/privacy.php"]{font-weight:700}

.auth-help{margin:-2px 0 18px}
.auth-policy{margin-bottom:20px}
.auth-policy-title{display:block;margin-bottom:var(--space-2)}
.auth-policy-box{max-height:168px;margin-bottom:var(--space-3);padding:14px var(--space-4);overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-muted);color:var(--gray-700);line-height:1.5}
.auth-policy-box h4{margin:var(--space-3) 0 6px;font-size:var(--font-size-xs)}
.auth-policy-box h4:first-child{margin-top:0}
.auth-policy-box ul{margin:0 0 6px;padding-left:18px;list-style-position:outside}
.auth-check{display:flex;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-3);color:var(--gray-700);line-height:1.45}
.auth-check input{margin-top:var(--space-1);flex:none}
.auth-check-tag{display:inline-flex;align-items:center;margin-right:6px;padding:1px 7px;border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--gray-700);font-size:var(--font-size-xs);font-weight:700}
.auth-check-tag--required{background:var(--surface-info-soft);color:var(--color-info-strong)}

.auth-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
@media(max-width:560px){.auth-shell{padding:40px 16px 32px}.auth-form{padding:20px}.auth-form-grid{grid-template-columns:1fr}.auth-logo{margin-bottom:24px}.auth-footer{padding-top:28px}}

.page-join{display:flex;min-height:100vh;padding:20px 16px;background:#e9edf2}
.page-join .auth-shell{width:520px;max-width:100%;min-height:0;flex:0 1 520px;align-self:center;margin:auto;padding:0}
.page-join .join-card{width:100%;padding:32px 36px;border-radius:18px;background:var(--color-surface);box-shadow:0 14px 36px rgba(34,48,70,.1)}
.page-join .auth-logo{height:auto;margin:0 0 8px}
.page-join .auth-logo img{display:block;width:142px;max-width:none;height:auto}
.page-join .auth-intro{margin-bottom:22px;color:#667085;font-size:15px;line-height:1.5}
.page-join .auth-form{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.page-join .status-message{margin-bottom:20px}
.join-field-list{display:grid;gap:12px}
.join-field{min-width:0}
.page-join .form-field-label{margin-bottom:7px;color:#101828}
.page-join .input-group{min-height:46px;margin-bottom:0;border-color:#cfd6e0;border-radius:10px}
.page-join .input-group:focus-within{border-color:var(--brand-accent-blue);box-shadow:0 0 0 3px rgba(41,79,130,.1)}
.page-join .input-group.is-valid{border-color:var(--border-success)}
.page-join .input-group.is-invalid{border-color:var(--border-danger)}
.page-join .input-group input[type="text"],.page-join .input-group input[type="email"],.page-join .input-group input[type="password"]{height:44px;padding:0 15px;color:#1d2939;font-size:15px;line-height:44px}
.page-join .input-group-button{width:44px;height:44px;padding:0;color:#475467}
.join-field-feedback,.join-consent-feedback{min-height:17px;margin:5px 0 0;color:var(--color-muted);font-size:12px;line-height:1.4}
.join-field-feedback.is-success{color:var(--color-success-strong)}
.join-field-feedback.is-success:not(:empty)::before{content:"✓ ";font-weight:800}
.join-field-feedback.is-error,.join-consent-feedback.is-error{color:var(--color-danger-strong)}
.join-field-feedback.is-error:not(:empty)::before,.join-consent-feedback.is-error:not(:empty)::before{content:"! ";font-weight:800}
.join-password-guide{margin-left:8px;color:var(--color-muted);font-size:11px;font-weight:400;line-height:1.4}
.join-consent{margin:18px 0;overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}
.join-consent-all,.join-consent-row{display:flex;align-items:center;gap:9px;margin:0;padding:12px 14px}
.join-consent-all{justify-content:space-between;background:var(--surface-muted);font-size:15px}
.join-consent-all label{display:flex;align-items:center;gap:9px}
.join-consent-all input,.join-consent-row input{width:15px;height:15px;flex:none;margin:0}
.join-consent-row{justify-content:space-between;border-top:1px solid var(--color-border);font-size:13px}
.join-consent-row label{display:flex;min-width:0;align-items:center;gap:9px;color:#344054;font-weight:500}
.join-consent-row label strong{color:var(--color-danger-strong);font-weight:700}
.join-consent-row label em{color:var(--color-muted);font-style:normal}
.join-consent-row>a,.join-consent-summary-button{flex:none;background:transparent;color:#344054;font-size:13px;text-decoration:underline;cursor:pointer}
.join-consent-summary{max-height:180px;padding:14px 16px;overflow-y:auto;border-top:1px solid var(--color-border);background:var(--surface-muted);color:var(--gray-700);font-size:12px;line-height:1.5}
.join-consent-summary h4{margin:10px 0 4px}
.join-consent-summary h4:first-child{margin-top:0}
.join-consent-summary ul{margin:0;padding-left:18px}
.join-consent-feedback{margin:0 0 0 auto;text-align:right;white-space:nowrap}
.page-join .button--primary{width:100%;min-height:50px;margin:0;border-radius:10px;font-size:17px;font-weight:900}
.page-join .auth-signup-hint{display:block;width:100%;margin:14px 0 0;color:#667085;font-size:14px;line-height:1.5;text-align:center}
.page-join .auth-signup-hint a{color:#344054}
@media(max-width:560px){.page-join{padding:16px 12px}.page-join .join-card{padding:28px 22px;border-radius:16px}.page-join .auth-logo img{width:132px}.page-join .auth-intro{margin-bottom:24px;font-size:15px}.join-consent-all{flex-wrap:wrap}.join-consent-feedback{flex-basis:100%;margin:0;padding-left:24px;text-align:left;white-space:normal}.join-consent-row{align-items:flex-start;padding:13px 14px}.join-consent-row label{align-items:flex-start}.page-join .button--primary{min-height:52px;font-size:17px}}

.page-account-recovery{display:flex;min-height:100vh;padding:20px 16px;background:#e9edf2}
.page-account-recovery .auth-shell{width:520px;max-width:100%;min-height:0;flex:0 1 520px;align-self:center;margin:auto;padding:0}
.recovery-card{width:100%;padding:40px 44px;border-radius:18px;background:var(--color-surface);box-shadow:0 14px 36px rgba(34,48,70,.1)}
.page-account-recovery .auth-logo{height:auto;margin:0 0 14px}
.page-account-recovery .auth-logo img{display:block;width:142px;max-width:none;height:auto}
.page-account-recovery .auth-intro{margin-bottom:26px;color:#667085;font-size:15px;line-height:1.5}
.page-account-recovery .recovery-form{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.page-account-recovery .form-field-label{margin:0 0 7px;color:#101828}
.page-account-recovery .input-group{min-height:50px;margin:0 0 18px;border-color:#cfd6e0;border-radius:10px}
.page-account-recovery .input-group:focus-within{border-color:var(--brand-accent-blue);box-shadow:0 0 0 3px rgba(41,79,130,.1)}
.page-account-recovery .input-group input[type="text"],.page-account-recovery .input-group input[type="email"]{height:48px;padding:0 16px;color:#1d2939;font-size:15px;line-height:48px}
.page-account-recovery .status-message{margin:0 0 18px}
.page-account-recovery .button--primary{width:100%;min-height:54px;margin:0;border-radius:10px;font-size:17px;font-weight:900}
.recovery-login-link{display:block;margin-top:20px;color:#344054;font-size:14px;text-align:center;text-decoration:underline}
.recovery-result{padding:24px 0 4px;text-align:center}
.recovery-result-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 auto 20px;border-radius:50%;background:#eaf5ef;color:#397a54;font-size:30px;line-height:1}
.recovery-result h2{margin:0 0 12px;color:#101828;font-size:24px;line-height:1.35}
.recovery-result p{margin:0;color:#667085;font-size:15px;line-height:1.6}
.recovery-result-recipient{margin-bottom:6px!important;color:#344054!important}
.recovery-result .recovery-login-link{margin-top:28px}
@media(max-width:560px){.page-account-recovery{padding:16px 12px}.recovery-card{padding:30px 24px;border-radius:16px}.page-account-recovery .auth-logo img{width:132px}.recovery-result{padding-top:18px}.recovery-result-icon{width:64px;height:64px;margin-bottom:18px;font-size:26px}.recovery-result h2{font-size:22px}}

.page-reset-password{display:flex;min-height:100vh;padding:20px 16px;background:#e9edf2}
.page-reset-password .auth-shell{width:480px;max-width:100%;min-height:0;flex:0 1 480px;align-self:center;margin:auto;padding:0}
.reset-password-card{width:100%;padding:36px 40px;border-radius:20px;background:var(--color-surface);box-shadow:0 14px 36px rgba(34,48,70,.1)}
.page-reset-password .auth-logo{height:auto;margin:0 0 20px}
.page-reset-password .auth-logo img{display:block;width:142px;max-width:none;height:auto}
.reset-password-intro{margin:8px 0 28px;color:#667085;font-size:15px;line-height:1.5;text-align:center}
.reset-password-account{margin:-14px 0 24px;color:#667085;font-size:13px;line-height:1.5;text-align:center}
.reset-password-account strong{margin-left:4px;color:#344054;font-weight:700}
.page-reset-password .reset-password-form{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.page-reset-password .form-field-label{margin:0 0 7px;color:#101828}
.page-reset-password .input-group{min-height:50px;margin:0;border-color:#cfd6e0;border-radius:10px}
.page-reset-password .input-group:focus-within{border-color:var(--brand-accent-blue);box-shadow:0 0 0 3px rgba(41,79,130,.1)}
.page-reset-password .input-group input[type="password"]{height:48px;padding:0 16px;color:#1d2939;font-size:15px;line-height:48px}
.page-reset-password .input-group-button{width:48px;height:48px;padding:0;color:#475467}
.reset-password-guide{margin-left:8px;color:var(--color-muted);font-size:11px;font-weight:400;line-height:1.4}
.reset-password-feedback{min-height:17px;margin:5px 0 12px;color:var(--color-muted);font-size:12px;line-height:1.4}
.reset-password-feedback.is-success{color:var(--color-success-strong)}
.reset-password-feedback.is-success:not(:empty)::before{content:"✓ ";font-weight:800}
.reset-password-feedback.is-error{color:var(--color-danger-strong)}
.reset-password-feedback.is-error:not(:empty)::before{content:"! ";font-weight:800}
.page-reset-password .status-message{margin:0 0 18px}
.page-reset-password .button--primary{width:100%;min-height:54px;margin:0;border-radius:10px;font-size:17px;font-weight:900}
.reset-password-link{display:block;margin-top:20px;color:#344054;font-size:14px;text-align:center;text-decoration:underline}
.reset-password-result{padding:24px 0 4px;text-align:center}
.reset-password-result-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 auto 20px;border-radius:50%;background:#eaf5ef;color:#397a54;font-size:30px;font-weight:700;line-height:1}
.reset-password-result-icon.is-error{background:#fdf0f0;color:var(--color-danger-strong)}
.reset-password-result h2{margin:0 0 12px;color:#101828;font-size:24px;line-height:1.35}
.reset-password-result p{margin:0;color:#667085;font-size:15px;line-height:1.6}
.reset-password-result .status-message{margin:0;color:var(--color-danger-strong);background:transparent}
.reset-password-result .reset-password-link{margin-top:28px}
@media(max-width:560px){.page-reset-password{padding:16px 12px}.reset-password-card{padding:28px 22px;border-radius:16px}.page-reset-password .auth-logo img{width:132px}.auth-page-title{font-size:22px}.reset-password-intro{margin-bottom:24px}.reset-password-result{padding-top:18px}.reset-password-result-icon{width:64px;height:64px;margin-bottom:18px;font-size:26px}.reset-password-result h2{font-size:22px}}

.page-login{display:flex;min-height:100vh;padding:24px 16px;background:#e9edf2}
.page-login .auth-shell{width:480px;max-width:100%;min-height:0;flex:0 1 480px;align-self:center;margin:auto;padding:0}
.page-login .login-card{width:100%;padding:36px 40px;border-radius:20px;background:var(--color-surface);box-shadow:0 14px 36px rgba(34,48,70,.1)}
.page-login .auth-logo{height:auto;margin:0 0 8px}
.page-login .auth-logo img{display:block;width:142px;max-width:none;height:auto}
.page-login .auth-intro{margin-bottom:28px;color:#667085;font-size:16px;line-height:1.5}
.page-login .auth-form{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.page-login .auth-social-list{gap:10px;margin-bottom:22px}
.page-login .auth-social-button{min-height:50px;border-color:#cfd6e0;border-radius:10px;color:#24324a;font-size:15px;font-weight:800}
.page-login .auth-social-button:hover{border-color:#98a2b3;background:var(--surface-muted)}
.page-login .auth-social-mark--test{background:transparent;color:#24324a;font-size:14px}
.page-login .auth-divider{position:static;display:flex;align-items:center;gap:14px;margin-bottom:22px;color:#98a2b3;font-size:14px;white-space:nowrap}
.page-login .auth-divider::before,.page-login .auth-divider::after{content:"";position:static;width:auto;height:1px;flex:1;background:#d9dee7}
.page-login .auth-divider span{padding:0;background:transparent}
.page-login .form-field-label{margin-bottom:7px;color:#101828}
.page-login .input-group{min-height:50px;margin-bottom:14px;border-color:#cfd6e0;border-radius:10px}
.page-login .input-group:focus-within{border-color:var(--brand-accent-blue);box-shadow:0 0 0 3px rgba(41,79,130,.1)}
.page-login .input-group input[type="email"],.page-login .input-group input[type="password"],.page-login .input-group input[type="text"]{height:48px;padding:0 16px;color:#1d2939;font-size:15px;line-height:48px}
.page-login .input-group-button{width:48px;height:48px;padding:0;color:#475467}
.page-login .auth-remember-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:2px 0 20px;color:#344054;font-size:14px}
.page-login .auth-remember{gap:7px}
.page-login .auth-remember input{width:15px;height:15px;margin:0}
.page-login .auth-find-link{justify-self:end;color:#344054;font-weight:500;white-space:nowrap}
.page-login .button--primary{min-height:54px;margin:0;border-radius:10px;font-size:18px;font-weight:900}
.page-login .auth-signup-hint{display:block;width:100%;margin:18px 0 0;color:#667085;font-size:14px;line-height:1.5;text-align:center}
.page-login .auth-signup-hint a{color:#344054}
.page-login .status-message{margin:18px 0 0}
@media(max-width:560px){.page-login{padding:16px 12px}.page-login .login-card{padding:28px 22px;border-radius:16px}.page-login .auth-logo img{width:132px}.page-login .auth-intro{margin-bottom:24px;font-size:15px}.page-login .auth-social-button{min-height:48px;font-size:14px}.page-login .auth-divider{font-size:13px}.page-login .input-group input[type="email"],.page-login .input-group input[type="password"],.page-login .input-group input[type="text"]{font-size:15px}.page-login .auth-remember-row{font-size:13px}.page-login .button--primary{min-height:52px;font-size:17px}.page-login .auth-signup-hint{font-size:14px}}


.account-page{width:min(1024px,100%);margin:0 auto}
.account-overview{padding:28px 0 56px}
.account-page-heading{margin-bottom:28px}
.account-title{margin:0;color:#101828;font-size:28px;line-height:1.3;font-weight:900}
.account-title--danger{color:var(--color-danger-strong)}
.account-description{margin:6px 0 0;color:#667085;font-size:15px;line-height:1.55}
.account-overview>.status-message{margin:0 0 18px}

.account-profile-card{display:flex;align-items:center;gap:22px;margin:0 0 32px;padding:30px 32px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface)}
.account-avatar{width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:50%;background:#344a73;color:#fff;font-size:24px;font-weight:900}
.account-profile-main{min-width:0;display:grid;gap:5px}
.account-profile-name{display:flex;align-items:center;gap:9px;min-width:0}
.account-profile-name>strong{overflow:hidden;margin:0;color:#101828;font-size:20px;line-height:1.35;font-weight:900;text-overflow:ellipsis;white-space:nowrap}
.account-profile-main p{margin:0;color:#667085;font-size:14px;line-height:1.5;word-break:break-word}
.account-type-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;background:#eef3fb;color:#34548a;font-size:11px;font-weight:800;white-space:nowrap}
.account-section{margin-top:28px}
.account-section-title{margin:0 0 10px;color:#667085;font-size:14px;line-height:1.4;font-weight:800}
.account-settings-list{overflow:hidden;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}
.account-setting-row{min-height:82px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:17px 28px;color:#101828;text-decoration:none}
.account-setting-row+.account-setting-row{border-top:1px solid var(--color-border)}
a.account-setting-row:hover{background:#f8fafc;text-decoration:none}
.account-setting-copy{min-width:0;display:grid;gap:3px}
.account-setting-title{color:#101828;font-size:15px;line-height:1.4;font-weight:800}
.account-setting-description{color:#8490a3;font-size:13px;line-height:1.45}
.account-setting-arrow{color:#b5bfcd;font-size:22px;line-height:1}
.account-danger-row{min-height:94px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:20px 28px;border:1px solid #f0d3d0;border-radius:16px;background:var(--color-surface);text-decoration:none}
.account-danger-row:hover{border-color:#dda6a0;background:#fffafa;text-decoration:none}
.account-danger-row .account-setting-title,.account-danger-action{color:var(--color-danger-strong)}
.account-danger-action{font-size:14px;font-weight:800;text-decoration:underline;white-space:nowrap}

.account-head{display:flex;justify-content:space-between;gap:var(--space-4);margin-bottom:20px}
.account-kicker{margin:0 0 6px;color:#8490a3;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.auth-shell-account>.account-page{margin:auto}
.account-form{display:grid;gap:18px}
.account-field{min-width:0;margin:0}
.account-field>label{display:block;margin:0 0 7px;color:#101828;font-size:14px;font-weight:800}
.account-field input[type="text"],.account-field input[type="email"],.account-field input[type="password"]{width:100%;height:50px;min-height:50px;padding:0 15px;border:1px solid #d5dbe5;border-radius:10px;background:#fff;color:#1d2939;font-size:15px;line-height:48px}
.account-field input[readonly]{background:#f5f6f8;color:#667085}
.account-field input:focus{border-color:#5276ae;box-shadow:0 0 0 3px rgba(82,118,174,.1);outline:0}
.account-field .form-field-help{margin:6px 0 0;color:#98a2b3;font-size:12px;line-height:1.4}
.danger-box{margin-bottom:20px}

@media(max-width:760px){
  .account-overview{padding:18px 0 40px}
  .account-title{font-size:24px}
  .account-profile-card{align-items:flex-start;gap:16px;padding:22px 20px}
  .account-avatar{width:56px;height:56px;font-size:20px}
  .account-setting-row,.account-danger-row{padding:16px 20px}
}

@media(max-width:520px){
  .account-page-heading{margin-bottom:22px}
  .account-profile-card{display:grid;grid-template-columns:auto minmax(0,1fr)}
  .account-profile-name{align-items:flex-start;flex-direction:column;gap:5px}
  .account-danger-row{grid-template-columns:1fr}
  .account-danger-action{justify-self:start}
  .auth-shell-account{padding:20px 14px}
}


.dashboard-events{width:100%;padding:var(--gutter);background:transparent}
.dashboard-events-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px;background:transparent}
.dashboard-events-title{margin:0;color:#101828;font-size:28px;line-height:1.3}
.dashboard-events-description{margin:6px 0 0;color:#667085;font-size:15px;line-height:1.5}
.dashboard-create-button{flex:none;min-height:48px;margin:0;padding:0 20px;border-radius:12px;font-size:15px;font-weight:800}
.dashboard-empty-onboarding{margin:0;padding:72px 40px 64px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface);text-align:center}
.dashboard-empty-heading h2{margin:0;color:#101828;font-size:28px;line-height:1.35}
.dashboard-empty-heading p{margin:8px 0 0;color:#667085;font-size:16px;line-height:1.5}
.dashboard-empty-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:60px 0 54px;padding:0;list-style:none}
.dashboard-empty-step{position:relative;display:flex;align-items:center;flex-direction:column;min-width:0;color:#667085}
.dashboard-empty-step:not(:last-child)::after{position:absolute;top:48px;right:-29px;color:#cbd5e1;font-size:34px;font-weight:300;content:"→"}
.dashboard-empty-step-icon{display:grid;width:96px;height:96px;place-items:center;border-radius:50%;background:#eef2f7;font-size:36px;line-height:1}
.dashboard-empty-step.is-current .dashboard-empty-step-icon{background:#314a75}
.dashboard-empty-step-number{margin-top:18px;color:#98a2b3;font-size:13px;font-weight:800;line-height:1.3}
.dashboard-empty-step.is-current .dashboard-empty-step-number{color:#314a75}
.dashboard-empty-step strong{margin-top:6px;color:#101828;font-size:18px;line-height:1.4}
.dashboard-empty-step p{margin:10px 0 0;color:#667085;font-size:14px;line-height:1.6}
.dashboard-empty-action{display:flex;align-items:center;flex-direction:column;gap:12px}
.dashboard-empty-create-button{min-height:54px;padding:0 28px;border-radius:13px;font-size:16px;font-weight:800}
.dashboard-empty-action p{margin:0;color:#98a2b3;font-size:14px;line-height:1.5}
.dashboard-events-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}
.event-status-filters{display:flex;flex-wrap:wrap;gap:10px}
.event-status-filter{min-height:42px;padding:0 16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);color:#667085;font-size:14px;font-weight:700;cursor:pointer}
.event-status-filter strong{margin-left:6px;font-weight:800}
.event-status-filter.is-active{border-color:#314a75;background:#314a75;color:var(--color-surface)}
.event-status-filter[data-event-status-filter="live"] strong{color:var(--color-success-strong)}
.event-status-filter.is-active strong{color:inherit}
.event-sort-control{position:relative;display:block;flex:none}
.event-sort-control select{min-height:42px;padding:0 32px 0 14px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);color:#344054;font-size:14px;font-weight:700;cursor:pointer}
.event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.event-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);color:inherit;text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.event-card:hover{border-color:#b8c3d5;box-shadow:0 8px 20px rgba(16,24,40,.08);transform:translateY(-2px)}
.event-card-thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--surface-muted)}
.event-card-thumb>img{display:block;width:100%;height:100%;object-fit:cover}
.event-card-placeholder{display:grid;width:100%;height:100%;place-items:center;background:repeating-linear-gradient(45deg,#f0f3f7 0,#f0f3f7 12px,#e8edf3 12px,#e8edf3 24px);color:#98a2b3;font-size:12px}
.event-status-badge,.event-visibility-badge{position:absolute;top:14px;display:inline-flex;align-items:center;border-radius:999px;font-weight:800}
.event-status-badge{left:14px;min-height:26px;padding:0 10px;border:1px solid rgba(208,213,221,.9);background:rgba(255,255,255,.94);color:#475467;font-size:12px}
.event-card.is-live .event-status-badge{background:#eaf7ef;color:#277844}
.event-card.is-live .event-status-badge::before{content:"";width:8px;height:8px;margin-right:5px;border-radius:50%;background:currentColor}
.event-card.is-ended .event-status-badge,.event-card.is-draft .event-status-badge{background:rgba(255,255,255,.94);color:#475467}
.event-visibility-badge{right:14px;min-height:24px;padding:0 8px;background:#1f2937;color:var(--color-surface);font-size:11px}
.event-card-body{display:grid;grid-template-rows:auto auto 1fr;gap:14px;width:100%;padding:18px 20px 16px}
.event-card .card-title{display:-webkit-box;min-height:2.8em;overflow:hidden;color:#101828;font-size:17px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
.event-card.is-ended .card-title,.event-card.is-ended .event-card-date{color:#667085}
.event-card-date{color:#667085;font-size:14px;line-height:1.5}
.event-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid #eaecf0;color:#667085;font-size:13px;line-height:1.4}
.event-card-footer .card-action{flex:none;color:#314a75;font-weight:800;white-space:nowrap}
.event-card--create{min-height:100%;align-items:center;justify-content:center;flex-direction:column;gap:10px;border-style:dashed;border-color:#cbd5e1;background:transparent;color:#8492a6}
.event-card--create:hover{border-color:#7185a4;background:#f8fafc;box-shadow:none}
.event-card--create>span{font-size:30px;font-weight:300;line-height:1}
.event-card--create strong{font-size:15px}
.dashboard-events-empty{margin:20px 0 0;padding:18px;border:1px dashed var(--color-border);border-radius:12px;color:#667085;text-align:center}
@media(max-width:1280px){.event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1080px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.dashboard-empty-onboarding{padding:54px 28px}.dashboard-empty-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:42px;margin:48px 0}.dashboard-empty-step:nth-child(2)::after{display:none}.dashboard-empty-step:not(:last-child)::after{right:-25px}}
@media(max-width:720px){.dashboard-events-header,.dashboard-events-toolbar{align-items:stretch;flex-direction:column}.dashboard-create-button{width:100%}.dashboard-empty-onboarding{padding:44px 20px;border-radius:18px}.dashboard-empty-heading h2{font-size:24px}.dashboard-empty-heading p{font-size:15px}.dashboard-empty-steps{grid-template-columns:1fr;gap:32px;margin:38px 0}.dashboard-empty-step:not(:last-child)::after{top:auto;right:auto;bottom:-30px;content:"↓"}.dashboard-empty-step-icon{width:76px;height:76px;font-size:29px}.dashboard-empty-step-number{margin-top:12px}.event-sort-control select{width:100%}.event-status-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.event-status-filter{width:100%}.event-grid{grid-template-columns:1fr;gap:16px}.event-card--create{min-height:180px}}


.event-overview-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.event-overview-page-head .page-actions{margin-top:0}
.event-overview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.event-overview-stat{display:flex;flex-direction:column;min-height:156px;padding:20px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}
.event-overview-stat>span{color:var(--color-muted);font-size:13px;font-weight:700;line-height:1.4}
.event-overview-stat>strong{margin-top:12px;color:var(--color-text);font-size:30px;line-height:1.2}
.event-overview-stat>strong small{margin-left:4px;color:var(--color-muted);font-size:14px;font-weight:700}
.event-overview-stat>strong.is-public{color:var(--color-success-strong)}
.event-overview-stat>strong.is-private{color:#667085}
.event-overview-stat p{margin:auto 0 0;color:var(--color-muted);font-size:13px;line-height:1.5}
.event-overview-next-actions{margin-top:20px;padding:24px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}
.event-overview-next-actions h2{margin:0 0 18px;color:var(--color-text);font-size:20px;line-height:1.4}
.event-overview-next-actions ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.event-overview-next-actions li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;border-radius:var(--radius-sm);background:var(--surface-muted)}
.event-overview-action-number{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#d8e0ec;color:#314a75;font-size:14px;font-weight:800}
.event-overview-next-actions li:first-child .event-overview-action-number{background:#314a75;color:var(--color-surface)}
.event-overview-next-actions strong{color:var(--color-text);font-size:15px;line-height:1.45}
.event-overview-next-actions p{display:inline;margin:0 0 0 5px;color:var(--color-muted);font-size:14px;line-height:1.5}
.event-overview-inline-action{border:0;background:transparent;color:#314a75;font:inherit;font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap;cursor:pointer}
.event-overview-inline-action:hover{text-decoration:underline}
.event-delete-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:16px 18px;border:1px solid #efd2ce;border-radius:11px;background:#fff9f8}
.event-delete-panel>span{min-width:0;display:grid;gap:3px}
.event-delete-panel strong{color:#a84239;font-size:13px;line-height:1.4}
.event-delete-panel small{color:#9b7774;font-size:11px;line-height:1.45}
.event-delete-panel .button{min-height:36px;flex:none;margin:0;padding:7px 13px;font-size:12px}
.event-delete-dialog{width:min(680px,92vw);border-radius:18px}
.event-delete-dialog-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:28px 30px 20px}
.event-delete-dialog-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#fbeceb;color:#b24b43;font-size:22px;font-weight:700}
.event-delete-dialog-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.event-delete-dialog-header h2{margin:0;color:#101828;font-size:22px;line-height:1.35;font-weight:900}
.event-delete-dialog-header p{margin:3px 0 0;color:#667085;font-size:14px}
.event-delete-dialog-header .dialog-close{align-self:start;width:32px;height:32px;color:#98a2b3;font-size:26px;font-weight:300}
.event-delete-dialog-body{display:grid;gap:16px;padding:0 30px 28px}
.event-delete-target{display:grid;gap:5px;padding:18px 20px;border:1px solid #e1e5eb;border-radius:12px}
.event-delete-target strong{overflow:hidden;color:#101828;font-size:15px;text-overflow:ellipsis;white-space:nowrap}
.event-delete-target span{color:#98a2b3;font-size:12px}
.event-delete-scope{padding:17px 20px;border:1px solid #efd2ce;border-radius:12px;background:#fff8f7}
.event-delete-scope>strong{display:block;margin-bottom:11px;color:#a84239;font-size:13px}
.event-delete-scope ul{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;list-style:none;color:#475467;font-size:13px}
.event-delete-scope b{color:#a84239}
#eventDeleteForm{display:grid;gap:7px;margin-top:4px}
#eventDeleteForm>label{color:#101828;font-size:13px;font-weight:800}
#eventDeleteConfirm{height:44px;min-height:44px;padding:0 14px;border:1px solid #d7dde6;border-radius:10px;background:#fff;font-size:14px}
#eventDeleteConfirm:focus{border-color:#b24b43;box-shadow:0 0 0 3px rgba(178,75,67,.08);outline:0}
#eventDeleteConfirmHelp{margin:0;color:#98a2b3;font-size:11px}
#eventDeleteConfirmHelp.is-matched{color:#397a54}
.event-delete-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}
.event-delete-dialog-actions .button{min-height:44px;margin:0;padding-inline:18px}
.event-delete-dialog-actions .button--danger:disabled{border-color:#e4c2bf;background:#e4c2bf;color:#fff;cursor:not-allowed}
@media(max-width:1100px){.event-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.event-overview-page-head{align-items:flex-start;flex-direction:column}.event-overview-page-head .page-actions{width:100%}.event-overview-page-head .button{flex:1}.event-overview-stats{grid-template-columns:1fr}.event-overview-next-actions{padding:20px}.event-overview-next-actions li{grid-template-columns:auto minmax(0,1fr)}.event-overview-inline-action{grid-column:2;justify-self:start}.event-overview-next-actions p{display:block;margin:3px 0 0}.event-delete-panel{align-items:flex-start;flex-direction:column}.event-delete-dialog-header{grid-template-columns:auto minmax(0,1fr);padding:22px 20px 16px}.event-delete-dialog-header .dialog-close{position:absolute;top:16px;right:16px}.event-delete-dialog-body{padding:0 20px 22px}.event-delete-dialog-actions{display:grid;grid-template-columns:1fr 1fr}}


.event-edit-split{display:flex;gap:var(--space-6);align-items:flex-start}
.event-edit-column{width:54%;min-width:0;display:grid;gap:18px}
.event-edit-form{width:100%;min-width:0;padding:30px 32px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}
.event-live-preview{position:sticky;top:18px;width:46%;min-width:0;padding:20px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-muted)}
.event-edit-split--editing .event-edit-column{width:59%}
.event-edit-split--editing .event-live-preview{width:41%}
.event-edit-form--compact{padding:21px 22px}
.event-edit-form--compact .event-form-heading{margin-bottom:17px;font-size:16px}
.event-edit-form--compact .event-form-section-heading{margin:40px 0 13px;padding-top:18px}
.event-edit-form--compact .event-form-section-heading strong{font-size:14px}
.event-edit-form--compact .event-form-field{gap:6px;margin-bottom:15px}
.event-edit-form--compact .event-form-field>label,.event-edit-form--compact .event-form-label-row>label{font-size:12px}
.event-edit-form--compact .event-character-count{font-size:11px}
.event-edit-form.event-edit-form--compact input[type="text"],.event-edit-form.event-edit-form--compact input[type="password"],.event-edit-form.event-edit-form--compact input[type="date"],.event-edit-form.event-edit-form--compact select{height:32px;min-height:32px;font-size:12px}
.event-edit-form.event-edit-form--compact input[type="text"]{padding-inline:11px}
.event-edit-form--compact .date-row{grid-template-columns:minmax(78px,1fr) minmax(78px,1fr) 14px minmax(78px,1fr) minmax(78px,1fr) max-content;column-gap:6px}
.event-edit-form--compact .date-row .date-col input[type="date"],.event-edit-form--compact .date-row .date-col select{font-size:11px}
.event-edit-form--compact .event-description-surface{min-height:133px;height:133px;max-height:133px;padding:11px;font-size:12px}
.event-edit-form--compact .event-description-editor .mini-editor-toolbar{min-height:30px;padding:3px 5px}
.event-edit-form--compact .event-description-editor .mini-editor-button{width:26px;height:24px;font-size:12px}
.event-edit-form--compact .event-cover-thumbnail{width:123px}
.event-edit-form--compact .event-cover-actions{gap:5px}
.event-edit-form--compact .event-cover-actions .button{min-height:34px;padding:5px 10px;font-size:12px}
.event-edit-form--compact .event-ai-requirement,.event-edit-form--compact .event-cover-help{font-size:11px}
.event-edit-form--compact .event-file-dropzone{min-height:43px;padding:8px 10px;font-size:11px}
.event-edit-form--compact .event-visibility-control .option-group-choice,.event-edit-form--compact .event-approval-control .option-group-choice{min-height:49px;padding:9px 11px}
.event-edit-form--compact .event-visibility-control .option-group-choice strong,.event-edit-form--compact .event-approval-control .option-group-choice strong{font-size:12px}
.event-edit-form--compact .event-visibility-control .option-group-choice small,.event-edit-form--compact .event-approval-control .option-group-choice small{font-size:11px}
.event-edit-form--compact .event-visibility-control .option-group-field input{height:32px;min-height:32px}
.event-edit-form--compact>.form-actions{margin-top:20px}
.event-form-heading{margin:0 0 24px;color:#101828;font-size:21px;line-height:1.35;font-weight:900}
.event-form-section-heading{display:grid;gap:3px;margin:26px 0 16px;padding-top:22px;border-top:1px solid #e5e9ef}
.event-form-section-heading strong{color:#101828;font-size:15px;line-height:1.4;font-weight:900}
.event-form-section-heading strong span{color:#8490a3;font-size:11px;font-weight:600}
.event-form-section-heading small{color:#8490a3;font-size:11px;line-height:1.45}
.event-preview-title{margin-bottom:var(--space-4);color:var(--color-muted);font-size:var(--font-size-xs);font-weight:800}

.event-form-field{display:grid;gap:8px;margin-bottom:22px}
.event-form-field>label,.event-form-label-row>label{margin:0;color:#101828;font-size:14px;line-height:1.4;font-weight:800}
.event-form-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.event-template-field{min-width:0;margin:0 0 20px;padding:0;border:0}
.event-template-field legend{margin:0 0 5px;color:#101828;font-size:14px;line-height:1.4;font-weight:800}
.event-template-help{margin:0 0 10px;color:#8490a3;font-size:12px;line-height:1.45}
.event-template-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.event-template-option{position:relative;min-width:0;display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:11px;padding:10px;border:1px solid #d7dde6;border-radius:10px;background:#fff;cursor:pointer}
.event-template-option:has(input:checked){border-color:#344f7c;box-shadow:inset 0 0 0 1px #344f7c}
.event-template-option:has(input:checked)::after{content:"선택됨";position:absolute;top:7px;right:8px;color:#344f7c;font-size:10px;font-weight:800}
.event-template-option:focus-within{outline:3px solid rgba(52,79,124,.14);outline-offset:1px}
.event-template-option input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.event-template-preview{height:60px;display:grid;overflow:hidden;border:1px solid #d9dee7;border-radius:6px;background:#fff}
.event-template-preview--split{grid-template-columns:36% 1fr}
.event-template-preview--poster{grid-template-rows:25px 1fr}
.event-template-preview-media{display:block;background:repeating-linear-gradient(45deg,#e6dfd2 0,#e6dfd2 7px,#d9d0c0 7px,#d9d0c0 14px)}
.event-template-preview-content{display:grid;align-content:center;gap:5px;padding:8px}
.event-template-preview-content span{display:block;height:3px;border-radius:3px;background:#d8dee8}
.event-template-preview-content span:first-child{width:82%;height:5px;background:#344f7c}
.event-template-preview-content span:last-child{width:62%}
.event-template-copy{min-width:0;display:grid;gap:3px}
.event-template-copy strong{color:#101828;font-size:13px;line-height:1.35}
.event-template-copy small{color:#8490a3;font-size:11px;line-height:1.4}
.event-template-spec{color:#344f7c;font-size:10px;font-weight:800;line-height:1.35}
.event-character-count{color:#98a2b3;font-size:12px;line-height:1.4;font-variant-numeric:tabular-nums}
.event-form-control{min-width:0}
.event-edit-form input[type="text"],.event-edit-form input[type="password"],.event-edit-form input[type="date"],.event-edit-form select{height:44px;min-height:44px;border-color:#d7dde6;border-radius:10px;font-size:14px}
.event-edit-form input[type="text"]{padding:0 15px}
.event-edit-form input:focus,.event-edit-form select:focus,.event-edit-form .mini-editor:focus-within{border-color:#5276ae;box-shadow:0 0 0 3px rgba(82,118,174,.09)}

.event-location-input{flex:1}

.date-row{display:grid;grid-template-columns:minmax(112px,1fr) minmax(112px,1fr) 20px minmax(112px,1fr) minmax(112px,1fr) max-content;align-items:center;column-gap:8px}
.date-row .date-col{min-width:0}
.date-row .date-col--date{width:104px}
.date-row .date-col--time{width:104px}
.date-row .date-col--all-day{justify-self:end;margin-left:var(--space-1)}
.date-row .date-col input[type="date"],.date-row .date-col select{min-width:0;margin-bottom:0;color:var(--gray-700);font-size:13px;font-weight:400;line-height:20px}
.date-row .date-col input[type="date"]{padding:0 10px}
.date-row .date-col select{padding:0 28px 0 10px}
.date-row .date-col select option{min-height:20px;padding:2px var(--space-2);font-size:13px;font-weight:400;line-height:1.1}
.date-row .date-col input.is-all-day-disabled,.date-row .date-col select.is-all-day-disabled{background:var(--brand-gray-100);color:var(--input-disabled-text);cursor:not-allowed}
.date-row .date-sep{color:var(--color-muted);text-align:center}
.all-day-label{display:inline-flex;align-items:center;gap:var(--space-1);white-space:nowrap}

.event-ai-requirement,.event-attachment-help,.event-cover-help{color:var(--color-muted);font-size:12px;line-height:1.4}

.dialog-panel--attachment{width:min(860px,94vw);border-radius:18px}
.event-attachment-dialog-header{align-items:flex-start;padding:28px 32px 22px;border-bottom:0}
.event-attachment-dialog-header strong{color:#101828;font-size:22px;line-height:1.35;font-weight:900}
.event-attachment-dialog-header p{margin:5px 0 0;color:#667085;font-size:14px;line-height:1.5}
.event-attachment-dialog-header .dialog-close{width:34px;height:34px;color:#98a2b3;font-size:27px;font-weight:300}
.event-attachment-dialog-body{padding:0 32px 24px}
.event-attachment-upload-zone{width:100%;min-height:108px;display:grid;place-content:center;gap:6px;margin-bottom:24px;padding:20px;border:1px dashed #b8c4d5;border-radius:12px;background:#fafbfc;color:#344054;text-align:center;cursor:pointer}
.event-attachment-upload-zone:hover,.event-attachment-upload-zone.is-dragging{border-color:#6f88ac;background:#f6f8fc}
.event-attachment-upload-zone strong{font-size:15px;font-weight:800}
.event-attachment-upload-zone span{color:#8490a3;font-size:13px;line-height:1.4}
.event-attachment-group+.event-attachment-group{margin-top:24px}
.event-attachment-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;color:#8490a3;font-size:12px;line-height:1.4}
.event-attachment-heading strong{color:#475467;font-size:14px;font-weight:800}
.event-attachment-list{display:grid;gap:8px}
.event-attachment-list .file-list-empty{margin:0;padding:18px;border:1px solid #e1e5eb;border-radius:11px;background:#fafbfc;color:#98a2b3;text-align:center}
.event-attachment-item{min-width:0;min-height:72px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;border:1px solid #dce2eb;border-radius:11px;background:#fff}
.event-attachment-item--new{background:#f7f9fc}
.event-attachment-thumbnail{width:48px;height:48px;display:grid;place-items:center;flex:none;overflow:hidden;border-radius:9px;background:#f1f3f6;color:#667085;font-size:11px;font-weight:900}
.event-attachment-thumbnail img{width:100%;height:100%;display:block;object-fit:cover}
.event-attachment-copy{min-width:0;display:grid;gap:3px}
.event-attachment-name{overflow:hidden;color:#101828;font-size:14px;font-weight:800;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}
a.event-attachment-name:hover{text-decoration:underline}
.event-attachment-meta{color:#8490a3;font-size:12px;line-height:1.35}
.event-attachment-remove,.event-attachment-delete,.event-attachment-restore{padding:7px;background:transparent;color:#8490a3;font-size:13px;cursor:pointer}
.event-attachment-remove{font-size:22px;font-weight:300;line-height:1}
.event-attachment-delete{color:#a64c46}
.event-attachment-restore{color:#344f7c;font-weight:800}
.event-attachment-item--existing{grid-template-columns:14px 48px minmax(0,1fr) auto}
.event-attachment-handle{color:#b8c1ce;font-size:18px;cursor:grab}
.event-attachment-item.is-dragging{opacity:.55}
.event-attachment-item.is-removed{border-color:#efd2ce;background:#fff8f7}
.event-attachment-item.is-removed .event-attachment-name{color:#a84239;text-decoration:line-through}
.event-attachment-item.is-removed .event-attachment-thumbnail{opacity:.55}
.event-attachment-actions{display:flex;align-items:center;gap:4px}
.event-attachment-dialog-footer{align-items:center;justify-content:space-between;padding:18px 32px 24px}
.event-attachment-dialog-footer>p{margin:0;color:#98a2b3;font-size:12px;line-height:1.4}
.event-attachment-dialog-footer>div{display:flex;gap:9px}
.event-attachment-dialog-footer .button{min-height:46px;margin:0;padding-inline:20px}

.event-description-editor{border-color:#d7dde6;border-radius:10px}
.event-description-surface{min-height:190px;height:190px;max-height:190px;padding:16px;font-size:14px;line-height:1.65}
.event-description-editor .mini-editor-button{width:34px;height:28px;font-size:16px}
.event-description-editor .mini-editor-strike{font-size:16px}
.event-description-editor .mini-editor-toolbar{min-height:42px;padding:5px 7px;background:#f7f8fa}
.event-description-editor .mini-editor-button{height:30px;border-right:0;border-radius:7px}

.event-cover-control{display:flex;align-items:stretch;gap:12px}
.event-cover-thumbnail{position:relative;width:176px;aspect-ratio:16/9;display:grid;place-items:center;flex:none;overflow:hidden;border:1px solid #d7dde6;border-radius:10px;background:repeating-linear-gradient(45deg,#f1f3f6 0,#f1f3f6 12px,#e8ebf0 12px,#e8ebf0 24px);color:#98a2b3;font-size:12px}
.event-cover-thumbnail img{width:100%;height:100%;display:block;object-fit:cover}
.event-cover-actions{min-width:0;display:grid;grid-template-columns:1fr;align-content:start;gap:7px;flex:1}
.event-cover-actions .button{width:100%;min-height:42px;justify-content:flex-start;margin:0;padding:8px 13px;border-radius:9px}
.event-cover-actions .button-icon{width:18px;text-align:center}
.event-cover-help{margin-top:auto}

.event-partner-logo-control{display:grid;gap:10px}
.event-partner-logo-upload{min-height:62px;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 16px;border:1px dashed #cbd3df;border-radius:10px;background:#fff;color:#344f7c;cursor:pointer}
.event-partner-logo-upload:hover{border-color:#7f99be;background:#f8fafc}
.event-partner-logo-upload strong{font-size:13px;text-decoration:underline}
.event-partner-logo-upload span,.event-partner-logo-help{color:var(--color-muted);font-size:12px;line-height:1.4}
.event-partner-logo-help{margin:0}
.event-partner-logo-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.event-partner-logo-list:empty{display:none}
.event-partner-logo-item{min-width:0;display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #dce2eb;border-radius:10px;background:#fff}
.event-partner-logo-thumbnail{width:56px;height:38px;display:grid;place-items:center;overflow:hidden;border-radius:6px;background:#f7f8fa}
.event-partner-logo-thumbnail img{display:block;width:100%;height:100%;object-fit:contain}
.event-partner-logo-name{overflow:hidden;color:#344054;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.event-partner-logo-remove{width:28px;height:28px;padding:0;border:0;background:transparent;color:#8490a3;font-size:20px;line-height:1;cursor:pointer}

.event-file-dropzone{width:100%;min-height:62px;display:flex;align-items:center;justify-content:center;gap:5px;padding:12px 16px;border:1px dashed #cbd3df;border-radius:10px;background:#fff;color:#8490a3;font-size:13px;cursor:pointer}
.event-file-dropzone:hover,.event-file-dropzone.is-dragging{border-color:#7f99be;background:#f8fafc}
.event-file-dropzone strong{color:#344f7c;text-decoration:underline}
.event-file-dropzone .setting-row-status::before{content:"· ";color:#aeb7c4}

.event-visibility-control,.event-approval-control{display:grid;gap:10px;min-height:0}
:is(.event-visibility-control,.event-approval-control) .option-group-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
:is(.event-visibility-control,.event-approval-control) .option-group-choice{min-width:0;min-height:70px;display:flex;align-items:flex-start;gap:8px;padding:14px 16px;border:1px solid #d7dde6;border-radius:10px;background:#fff;color:#344054}
:is(.event-visibility-control,.event-approval-control) .option-group-choice:has(input:checked){border-color:#344f7c;box-shadow:inset 0 0 0 1px #344f7c}
:is(.event-visibility-control,.event-approval-control) .option-group-choice input{width:15px;height:15px;flex:none;margin:3px 0 0}
:is(.event-visibility-control,.event-approval-control) .option-group-choice>span{min-width:0;display:grid;gap:3px}
:is(.event-visibility-control,.event-approval-control) .option-group-choice strong{font-size:14px;line-height:1.35}
:is(.event-visibility-control,.event-approval-control) .option-group-choice small{color:#8490a3;font-size:12px;line-height:1.4;font-weight:400}
.event-visibility-control .option-group-field{width:100%}
.event-visibility-control .option-group-field input{height:42px;margin:0;border-radius:9px}
.event-edit-form>.form-actions{margin-top:28px}
.flyer-preview .flyer-attachment-more{color:var(--color-muted);font-weight:700}
.page-event-form .flyer-scale-wrap{width:100%;overflow:hidden}
.page-event-form .flyer-scale-inner{width:980px;transform-origin:left top}
.page-event-form .flyer-preview{width:980px;max-width:none}
.preview-flyer-description{white-space:pre-line}
.preview-flyer-description:empty::before{content:"이벤트 설명이 여기에 표시됩니다.";color:var(--color-preview-placeholder)}
.flyer-preview .is-preview-focused{border-radius:var(--radius-sm);background:var(--surface-preview-focus);outline:none}
.flyer-preview .flyer-sidebar-top.is-preview-focused{background:transparent}
.flyer-preview .flyer-sidebar-top.is-preview-focused .flyer-cover-img:not([hidden]),.flyer-preview .flyer-sidebar-top.is-preview-focused .flyer-sidebar-mark:not([hidden]){outline:none}

.setting-row-status{white-space:nowrap}
@media(max-width:1200px){.event-edit-split{flex-direction:column}.event-edit-column,.event-live-preview,.event-edit-split--editing .event-edit-column,.event-edit-split--editing .event-live-preview{width:100%}.event-live-preview{position:static}}
@media(max-width:720px){.event-edit-form{padding:24px 20px}.event-edit-form>.form-actions .button{flex:1}.event-template-options{grid-template-columns:1fr}.date-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:8px;row-gap:8px}.date-row .date-sep{display:none}.date-row .all-day-label{grid-column:1/-1;justify-self:start}.event-cover-control{flex-direction:column}.event-cover-thumbnail{width:min(100%,280px)}:is(.event-visibility-control,.event-approval-control) .option-group-choices{grid-template-columns:1fr}.event-partner-logo-upload{align-items:flex-start;flex-direction:column}.event-partner-logo-list{grid-template-columns:1fr}.event-file-dropzone{align-items:flex-start;flex-direction:column}.event-file-dropzone .setting-row-status::before{content:""}.event-attachment-dialog-header{padding:22px 20px 18px}.event-attachment-dialog-body{padding:0 20px 20px}.event-attachment-item{grid-template-columns:42px minmax(0,1fr) auto;padding:9px 10px}.event-attachment-item--existing{grid-template-columns:42px minmax(0,1fr) auto}.event-attachment-item--existing .event-attachment-handle{display:none}.event-attachment-thumbnail{width:42px;height:42px}.event-attachment-dialog-footer{align-items:stretch;flex-direction:column;padding:16px 20px 20px}.event-attachment-dialog-footer>div{justify-content:flex-end}}
.cover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.cover-option{display:block;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer}
.cover-option img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.cover-grid[data-aspect-ratio="9:16"] .cover-option img{aspect-ratio:9/16}
.cover-grid[data-aspect-ratio="2:3"] .cover-option img{aspect-ratio:2/3}
.cover-grid[data-aspect-ratio="21:9"] .cover-option img{aspect-ratio:21/9}
.cover-grid[data-aspect-ratio="16:9"] .cover-option img{aspect-ratio:16/9}
.cover-option.is-selected{border-color:var(--brand-accent-blue)}
.cover-grid-message{grid-column:1/-1;color:var(--color-muted);line-height:1.4}
.ai-image-settings{display:grid;gap:12px;margin-bottom:20px;padding:16px;border:1px solid #dce2eb;border-radius:11px;background:#f8fafc}
.ai-image-settings strong{color:#101828;font-size:14px;line-height:1.4}
.ai-image-settings p{margin:3px 0 0;color:#667085;font-size:12px;line-height:1.45}
.ai-image-resolution-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ai-image-resolution-option{position:relative;display:grid;gap:3px;padding:10px 12px;border:1px solid #d7dde6;border-radius:9px;background:#fff;cursor:pointer}
.ai-image-resolution-option:has(input:checked){border-color:#344f7c;box-shadow:inset 0 0 0 1px #344f7c}
.ai-image-resolution-option input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.ai-image-resolution-option strong{font-size:12px}
.ai-image-resolution-option span{color:#8490a3;font-size:11px;line-height:1.35}
.ai-image-resolution-option em{color:#344f7c;font-size:10px;font-style:normal;font-weight:800}
.ai-image-settings .ai-image-resolution-help{margin:0;color:#8490a3;font-size:11px}
.flyer-preview{margin:0}
.flyer-preview .flyer-brand{height:32px;opacity:.78}
.flyer-preview-actions{margin:var(--space-1) 0 var(--space-4)}
.flyer-preview .flyer-actions:has(+.flyer-partners){margin-bottom:0}
.flyer-preview .flyer-description{min-height:0;padding-right:0}
.flyer-preview .flyer-description.is-collapsed{display:block;max-height:14.4em;overflow:hidden}
.flyer-preview .flyer-description-toggle{justify-content:center;margin:var(--space-2) 0 var(--space-6)}
.flyer-preview .flyer-description-section+.flyer-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}
.flyer-preview .flyer-section-title{margin-bottom:var(--space-1);color:#344f7c;font-weight:700}
.event-form-page-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.event-form-page-head .page-actions{margin-top:0}
@media(max-width:600px){.ai-image-resolution-options{grid-template-columns:1fr}.cover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


.page-head+.event-host-flyer{margin-top:var(--space-2)}

body.page-event-detail{background:var(--brand-gray-300)}
.page-event-detail .wrap{min-width:0;max-width:none;margin:0;padding:0;background:transparent}
.page-event-detail main{max-width:980px;margin:0 auto}
.page-event-detail .flyer-actions.flyer-actions--mobile{margin:4px 0 16px}
.page-event-detail .flyer-actions:has(+.flyer-partners){margin-bottom:0}
.page-event-detail .flyer-block .flyer-section-text:not(.is-empty),.page-event-detail .flyer-attachments .flyer-section-list{color:var(--gray-700)}
.page-event-detail .flyer{margin:0}
.page-event-detail .flyer-brand{height:32px;opacity:.78}
.page-event-detail .flyer-description{min-height:0;padding-right:0}
.page-event-detail .flyer-description.is-collapsed{display:block;max-height:14.4em;overflow:hidden}
.page-event-detail .flyer-description-section+.flyer-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}
.page-event-detail .flyer-attach-item.is-hidden{display:none}

@media(max-width:720px){body.page-event-detail{background:var(--surface-muted)}
.page-event-detail main{max-width:none}
.page-event-detail .wrap{max-width:430px;margin:0 auto;background:var(--surface-panel)}
.page-event-detail .flyer{background:var(--surface-panel)}
.page-event-detail .flyer-header{display:none}
.page-event-detail .flyer-brand{position:static;height:24px}
.page-event-detail .flyer-layout{display:block;min-height:0}
.page-event-detail .flyer-sidebar{display:block;min-height:0;padding:0 28px;background:var(--surface-panel)}
.page-event-detail .flyer-sidebar-top{max-width:360px;margin:0 auto;padding-top:0}
.page-event-detail .flyer-cover-img{width:100%;aspect-ratio:16 / 9;height:clamp(156px,48vw,200px);background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:8px;object-fit:cover}
.page-event-detail .flyer-sidebar-bottom{display:none}
.page-event-detail .flyer-sidebar-mark{position:static;min-height:120px}
.page-event-detail .flyer-main{min-height:0;padding:24px 28px 0}
.page-event-detail .flyer-title{margin-bottom:12px;font-size:24px;line-height:1.28}
.page-event-detail .flyer-datetime{flex-wrap:wrap;margin-bottom:4px;line-height:1.4}
.page-event-detail .flyer-meta-icon{width:14px;height:14px}
.page-event-detail .flyer-place-row{flex-wrap:wrap}
.page-event-detail .flyer-place{flex-basis:auto;line-height:1.45}
.page-event-detail .flyer-place-actions{margin-left:0}
.page-event-detail .flyer-actions.flyer-actions--mobile{flex-direction:column;margin-bottom:18px}
.page-event-detail .flyer-partners{min-height:46px;gap:12px;margin-bottom:16px;padding:9px 0}
.page-event-detail .flyer-partners-title{width:52px}
.page-event-detail .flyer-partner-logos{gap:8px 12px}
.page-event-detail .flyer-partner-logos img{max-width:94px;height:22px}
.page-event-detail .flyer-description{margin:0;max-height:none;padding-right:0;font-size:var(--font-size-md)}
.page-event-detail .flyer-description.is-collapsed{max-height:8em}
.page-event-detail .flyer-description-toggle{min-height:36px;margin:12px 0 32px}
.page-event-detail .flyer-attach-row{flex-direction:column;gap:16px;margin-top:16px}
.page-event-detail .flyer-section{margin-top:0}
.page-event-detail .flyer-section-text,.page-event-detail .flyer-section-list{font-size:var(--font-size-md);line-height:1.6}
.page-event-detail .flyer-attendee-summary{align-items:flex-start;flex-direction:column}
.page-event-detail .flyer-attachments .flyer-section-list{grid-template-columns:1fr}
.page-event-detail .flyer-actions{width:100%;flex-direction:column}
.page-event-detail .flyer .flyer-main>.flyer-actions .flyer-register{display:flex;width:100%;min-width:0;min-height:44px;align-items:center;justify-content:center;padding:0 16px;border-radius:10px;text-align:center}
.page-event-detail .flyer-footer{align-items:flex-start;flex-direction:column;margin-top:24px;padding:16px 0 0;gap:8px;line-height:1.5}
.page-event-detail .flyer-footer nav{flex-wrap:wrap;gap:0}
.page-event-detail .flyer-footer nav a+a::before{content:"·";margin:0 8px;color:var(--flyer-footer-separator)}
}


.event-host-flyer{margin:0}
.event-host-flyer .flyer-brand{height:32px;opacity:.78}
.event-host-flyer .flyer-description{min-height:0;padding-right:0}
.event-host-flyer .flyer-description.is-collapsed{display:block;max-height:14.4em;overflow:hidden}
.event-host-flyer .flyer-description-toggle{justify-content:center;margin:var(--space-2) 0 var(--space-6)}
.event-host-flyer .flyer-description-section+.flyer-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}
.event-host-flyer .flyer-section-title{margin-bottom:var(--space-1);color:#344f7c;font-weight:700}
.event-host-flyer .flyer-attach-item.is-hidden{display:none}


.attendee-management-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.attendee-summary{margin:5px 0 0;color:var(--color-muted);font-size:13px}
.attendee-head-actions{display:flex;gap:10px}
.attendee-empty-state{display:grid;min-height:260px;place-content:center;justify-items:start;padding:48px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface)}
.attendee-empty-state strong{font-size:17px}
.attendee-empty-state p{margin:7px 0 20px;color:var(--color-muted)}
.attendee-empty-state>div{display:flex;gap:10px}
.attendee-filter-bar{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:12px;margin-bottom:14px}
.attendee-filter-bar label{display:grid;gap:6px}
.attendee-filter-label{color:var(--color-text);font-size:13px;font-weight:800}
.attendee-filter-bar input,.attendee-filter-bar select{height:44px;border-radius:10px;background:var(--color-surface)}
.attendee-filter-bar .attendee-search-field{display:flex;min-width:0;align-items:center;gap:10px}
.attendee-search-field .attendee-filter-label{flex:none;white-space:nowrap}
.attendee-search-field input{min-width:0;flex:1}
.attendee-selection-bar{display:flex;min-height:52px;align-items:center;gap:10px;margin-bottom:14px;padding:8px 14px;border-radius:12px;background:#314a75;color:var(--color-surface)}
.attendee-selection-bar strong{margin-right:4px;white-space:nowrap}
.attendee-selection-bar .button{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.13);color:var(--color-surface)}
.attendee-selection-bar .attendee-bulk-delete{border-color:#fecaca;background:#fff1f2;color:#b91c1c}
.attendee-selection-clear{margin-left:auto;background:transparent;color:#dbe4f1;cursor:pointer}
.attendee-table-card{overflow:hidden;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}
.page-event-attendees .data-table{min-width:820px;table-layout:fixed}
.page-event-attendees .data-table th,.page-event-attendees .data-table td{padding:11px 12px}
.page-event-attendees .data-table th:first-child,.page-event-attendees .data-table td:first-child{width:48px;text-align:center}
.page-event-attendees .data-table th:nth-child(2){width:18%}
.page-event-attendees .data-table th:nth-child(3){width:25%}
.page-event-attendees .data-table th:nth-child(4){width:25%}
.page-event-attendees .data-table th:nth-child(5){width:14%}
.page-event-attendees .data-table th:nth-child(6){width:18%}
.page-event-attendees .data-table td:nth-child(3){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-event-attendees .data-table td:nth-child(6){white-space:nowrap}
.page-event-attendees .data-table tbody tr:has([data-attendee-select]:checked){background:#f3f6fb}
.page-event-attendees .data-table tbody tr.is-awaiting-approval{background:#fffdf8}
.page-event-attendees .data-table form{display:flex;align-items:center;margin:0}
.attendee-missing-value{color:var(--color-muted)}
.attendee-identity{min-width:0}
.attendee-identity strong,.attendee-identity span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attendee-identity strong{color:var(--color-text);font-size:13px}
.attendee-identity span{margin-top:2px;color:var(--color-muted);font-size:11px}
.attendee-registration-state{display:grid;gap:3px}
.attendee-registration-source{color:var(--color-muted);font-size:11px}
.attendee-approval-summary{display:flex;min-width:0;align-items:center;gap:8px}
.attendee-approval-label{font-size:12px}
.attendee-approval-label.is-pending{color:var(--color-warning-strong)}
.attendee-approval-label.is-approved{color:var(--color-success-strong)}
.attendee-approval-label.is-rejected{color:var(--color-danger-strong)}
.attendee-approval-actions{gap:3px}
.attendee-approval-button{min-height:26px;padding:3px 8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--gray-700);font-size:11px;font-weight:700;cursor:pointer}
.attendee-approval-button.is-approve{border-color:var(--brand-accent-blue);background:var(--brand-accent-blue);color:var(--color-surface)}
.attendee-approval-button.is-reject{border-color:transparent;background:transparent;color:var(--color-muted)}
.attendee-approval-button:hover{filter:brightness(.96)}
.attendee-pending-help{color:var(--color-muted);font-size:12px}
.attendee-status-control{position:relative;width:70px;flex:none}
.attendee-status-control:has(.attendee-status-menu:not([hidden])){z-index:20}
.attendee-status-trigger{position:relative;display:flex;width:70px;height:28px;align-items:center;justify-content:center;margin:0;padding:0 18px 0 8px;border:0;border-radius:999px;font-size:12px;font-weight:800;line-height:1;cursor:pointer}
.attendee-status-arrow{position:absolute;top:50%;right:8px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;line-height:1;transform:translateY(-50%)}
.attendee-status-trigger.is-yes{background:var(--surface-success);color:var(--color-success-strong)}
.attendee-status-trigger.is-no{background:var(--surface-danger);color:var(--color-danger-strong)}
.attendee-status-trigger.is-maybe{background:var(--surface-muted);color:var(--color-muted)}
.attendee-status-menu{position:absolute;top:calc(100% + 4px);left:0;width:70px;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);box-shadow:0 3px 10px rgba(23,32,51,.12)}
.attendee-status-menu[hidden]{display:none}
.attendee-status-menu button{display:block;width:100%;height:30px;padding:0;border:0;background:var(--color-surface);color:var(--color-text);font-size:12px;font-weight:500;line-height:30px;text-align:center;cursor:pointer}
.attendee-status-menu button+button{border-top:1px solid var(--color-border)}
.attendee-status-menu button:hover,.attendee-status-menu button:focus-visible{background:var(--surface-muted)}
.page-event-attendees .data-table tbody tr:last-child .attendee-status-menu{top:auto;bottom:calc(100% + 4px)}
.attendee-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:var(--surface-muted);color:var(--color-muted);font-size:12px}
.attendee-pagination nav{display:flex;gap:8px}
.attendee-pagination .is-disabled{opacity:.45;pointer-events:none}
.attendee-add-dialog-panel{width:min(620px,92vw);border-radius:18px}
.attendee-add-dialog .dialog-header{padding:20px 26px}
.attendee-add-dialog .dialog-header h2{margin:0;font-size:21px}
.attendee-add-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:20px 26px 0;padding:4px;border-radius:10px;background:var(--surface-muted)}
.attendee-add-tabs button{min-height:42px;border-radius:8px;background:transparent;color:var(--color-muted);font-weight:700;cursor:pointer}
.attendee-add-tabs button.is-active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 3px rgba(23,32,51,.12)}
.attendee-add-panel{padding:26px 26px 4px}
.attendee-add-panel .form-field{gap:7px;margin-bottom:18px}
.attendee-field-label{display:flex;align-items:center;gap:5px;color:var(--color-text);font-weight:800}
.attendee-field-label em{color:var(--color-danger);font-style:normal}
.attendee-field-label small{color:var(--color-muted);font-size:inherit;font-weight:500}
.attendee-add-panel .form-field-control{min-height:48px;padding:11px 14px;border-radius:10px}
.attendee-add-profile-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.attendee-field-help{color:var(--color-muted);font-size:12px;font-weight:500}
.attendee-add-panel textarea{min-height:112px;resize:vertical}
.attendee-bulk-field-title{display:flex;align-items:baseline;gap:6px}
.attendee-bulk-field-title small{color:var(--color-muted);font-size:12px;font-weight:500}
[data-attendee-add-panel="bulk"] textarea{height:150px;min-height:150px;max-height:none}
.attendee-import-divider{display:flex;align-items:center;gap:12px;margin:2px 0 16px;color:var(--color-muted);font-size:12px}
.attendee-import-divider::before,.attendee-import-divider::after{height:1px;flex:1;background:var(--color-border);content:""}
.attendee-csv-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;color:var(--gray-700)}
.attendee-csv-upload{display:flex;min-height:64px;align-items:center;justify-content:center;gap:7px;border:1px dashed var(--gray-300);border-radius:10px;background:var(--color-surface);cursor:pointer}
.attendee-csv-upload span{font-weight:700}
.attendee-csv-upload strong{color:var(--brand-accent-blue);font-size:12px}
.attendee-csv-upload input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.attendee-csv-template{min-height:64px;padding:0 18px;border:1px solid var(--color-border);border-radius:10px;background:var(--surface-muted);color:var(--brand-accent-blue);font-size:12px;font-weight:700;cursor:pointer}
.attendee-csv-upload:hover,.attendee-csv-upload:focus-within{border-color:var(--brand-accent-blue);background:#f8faff}
.attendee-csv-template:hover,.attendee-csv-template:focus-visible{border-color:var(--brand-accent-blue);background:#f8faff}
.attendee-import-summary{margin:12px 0 0;padding:12px 14px;border-radius:9px;background:#eef3fb;color:var(--brand-accent-blue);font-size:12px;font-weight:700}
.attendee-import-summary:empty{display:none}
.attendee-add-settings{display:grid;gap:14px;margin:0 26px 20px;padding-top:4px}
.attendee-status-options{display:flex;align-items:center;gap:10px;margin:0;padding:0;border:0}
.attendee-status-options legend{margin-bottom:8px;color:var(--color-text);font-size:13px;font-weight:800}
.attendee-status-options label{display:flex;min-height:34px;align-items:center;gap:6px;padding:0 13px;border:1px solid var(--color-border);border-radius:999px;color:var(--gray-700);cursor:pointer}
.attendee-status-options label:has(input:checked){border-color:var(--border-success);background:var(--surface-success);color:var(--color-success-strong);font-weight:700}
.attendee-status-options input{width:14px;height:14px;margin:0}
.attendee-mail-after-add{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border-radius:10px;background:var(--surface-muted);cursor:pointer}
.attendee-mail-after-add input{width:16px;height:16px;margin:2px 0 0;flex:none}
.attendee-mail-after-add span{display:grid;gap:3px}
.attendee-mail-after-add small{color:var(--color-muted);font-size:12px;font-weight:500}
.attendee-add-dialog .dialog-footer{padding:16px 20px}

@media(max-width:900px){.attendee-management-head{align-items:flex-start;flex-direction:column}.attendee-filter-bar{grid-template-columns:1fr auto}.attendee-selection-bar{align-items:flex-start;flex-wrap:wrap}.attendee-selection-clear{margin-left:0}.attendee-add-profile-fields{grid-template-columns:1fr}.attendee-csv-actions{grid-template-columns:1fr}.attendee-csv-template{min-height:44px}}
@media(max-width:760px){.attendee-management-head{gap:12px;margin-bottom:16px}.attendee-head-actions{width:100%}.attendee-head-actions .button{flex:1}.attendee-filter-bar{grid-template-columns:1fr}.attendee-filter-bar .attendee-search-field{align-items:stretch;flex-direction:column;gap:6px}.attendee-table-card{overflow-x:auto}.attendee-pagination{align-items:flex-start;flex-direction:column}.attendee-empty-state{min-height:220px;padding:28px 22px}}


.host-contact {
  flex: 1;
  padding: clamp(36px, 5vw, 68px);
  border-radius: var(--main-radius);
  background: var(--surface-muted);
}

.host-contact-layout {
  display: grid;
  grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr);
  gap: clamp(34px, 6vw, 70px);
  align-items: start;
}

.host-contact-eyebrow {
  margin-bottom: 12px;
  color: var(--brand-accent-blue);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: .08em;
}

.host-contact-intro h1 {
  max-width: 340px;
  font-size: clamp(32px, 3vw, 44px);
  line-height: 1.35;
  letter-spacing: -.03em;
}

.host-contact-description {
  max-width: 360px;
  margin-top: 15px;
  color: var(--color-muted);
  line-height: 1.75;
}

.host-contact-channels {
  display: grid;
  gap: 12px;
  margin-top: 26px;
}

.host-contact-channel {
  position: relative;
  padding: 18px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
}

.host-contact-channel strong,
.host-contact-channel code,
.host-contact-channel > span:not(.u-sr-only),
.host-contact-channel small {
  display: block;
}

.host-contact-channel strong {
  margin-bottom: 5px;
  font-size: var(--font-size-xs);
}

.host-contact-channel code,
.host-contact-channel > span:not(.u-sr-only) {
  overflow-wrap: anywhere;
  color: var(--color-text);
  font-family: inherit;
  font-size: var(--font-size-sm);
  font-weight: 800;
}

.host-contact-channel small {
  margin-top: 4px;
  color: var(--color-muted);
  font-size: 11px;
}

.host-contact-channel button {
  margin-top: 12px;
  padding: 0;
  background: transparent;
  color: var(--brand-accent-blue);
  cursor: pointer;
  font-size: var(--font-size-xs);
  font-weight: 800;
}

.host-contact-channel button:hover {
  color: var(--brand-accent-blue-hover);
}

.host-contact-channel button:focus-visible {
  border-radius: 2px;
  outline: 3px solid var(--focus);
  outline-offset: 3px;
}

.host-contact-guide {
  margin-top: 12px;
  padding: 16px 18px;
  border-radius: var(--radius-md);
  background: var(--brand-accent-blue-soft);
}

.host-contact-guide h2 {
  color: var(--brand-accent-blue);
  font-size: var(--font-size-xs);
}

.host-contact-guide ul {
  margin: 10px 0 0;
  padding-left: 18px;
  color: var(--color-muted);
  font-size: var(--font-size-xs);
  line-height: 1.75;
}

.host-contact-form-card {
  min-width: 0;
  padding: 30px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
}

.host-contact-form-header {
  margin-bottom: 20px;
}

.host-contact-form-header h2 {
  font-size: var(--font-size-lg);
}

.host-contact-form-header p {
  margin-top: 6px;
  color: var(--color-muted);
  font-size: var(--font-size-xs);
}

.host-contact-form-card .status-message {
  margin-bottom: 18px;
}

.host-contact-account {
  margin-bottom: 20px;
  padding: 16px 18px;
  border-radius: var(--radius-md);
  background: var(--surface-muted);
}

.host-contact-account h3 {
  margin-bottom: 10px;
  color: var(--color-muted);
  font-size: var(--font-size-xs);
}

.host-contact-account dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.host-contact-account dl > div {
  min-width: 0;
}

.host-contact-account dt {
  margin-bottom: 3px;
  color: var(--color-muted);
  font-size: 11px;
}

.host-contact-account dd {
  overflow: hidden;
  color: var(--color-text);
  font-size: var(--font-size-sm);
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.host-contact-category {
  margin: 0 0 20px;
  padding: 0;
  border: 0;
}

.host-contact-category legend {
  margin-bottom: 8px;
  color: var(--color-text);
  font-size: var(--font-size-sm);
  font-weight: 800;
}

.host-contact-category-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.host-contact-category-options label {
  position: relative;
}

.host-contact-category-options input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.host-contact-category-options span {
  min-height: 38px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  color: var(--color-muted);
  cursor: pointer;
  font-size: var(--font-size-xs);
  font-weight: 700;
}

.host-contact-category-options input:checked + span {
  border-color: var(--brand-accent-blue);
  background: var(--brand-accent-blue);
  color: var(--color-surface);
}

.host-contact-category-options input:focus-visible + span {
  box-shadow: var(--focus-ring);
}

.host-contact-field {
  margin-bottom: 16px;
}

.host-contact-field label {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.host-contact-field label > small {
  flex: none;
  color: var(--color-muted);
  font-size: 11px;
  font-weight: 500;
}

.host-contact-field textarea {
  min-height: 210px;
  max-height: 480px;
  resize: vertical;
}

.host-contact-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 20px;
}

.host-contact-actions .button {
  min-width: 132px;
}

@media (max-width: 980px) {
  .host-contact-layout {
    grid-template-columns: 1fr;
  }

  .host-contact-intro h1,
  .host-contact-description {
    max-width: none;
  }

  .host-contact-channels {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .host-contact {
    padding: 34px 18px;
  }

  .host-contact-intro h1 {
    font-size: 30px;
  }

  .host-contact-channels,
  .host-contact-account dl {
    grid-template-columns: 1fr;
  }

  .host-contact-form-card {
    padding: 22px 18px;
  }

  .host-contact-category-options label,
  .host-contact-category-options span {
    width: 100%;
  }

  .host-contact-category-options span {
    justify-content: center;
  }

  .host-contact-actions {
    align-items: stretch;
    flex-direction: column-reverse;
  }

  .host-contact-actions .button {
    width: 100%;
  }
}


body.page-public-event{min-height:100vh;min-height:100svh;padding:32px 16px;background:var(--surface-page);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif}
.public-registration-shell{display:grid;min-height:calc(100vh - 64px);min-height:calc(100svh - 64px);place-items:center}
.public-event-card{width:100%;max-width:560px;margin:0;padding:32px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface);box-shadow:0 12px 32px rgba(23,32,51,.07)}
.public-event-summary{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #edf0f3}
.public-event-cover{width:88px;height:60px;overflow:hidden;flex:none;border-radius:10px;background:var(--surface-muted)}
.public-event-cover img{display:block;width:100%;height:100%;object-fit:cover}
.public-event-summary-text{min-width:0}
.public-event-summary-text h2{margin:0;color:var(--color-text);font-size:16px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
.public-event-summary-text p{margin:4px 0 0;color:var(--color-muted);font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.public-event-heading{margin-bottom:22px}
.public-event-heading h1{margin:0;color:var(--color-text);font-size:22px;font-weight:800;line-height:1.35;letter-spacing:-.02em}
.public-event-heading p{margin:6px 0 0;color:var(--color-muted);font-size:14px;line-height:1.5}
.public-registration-form .form-field{gap:0;margin-bottom:16px}
.public-registration-form .form-field-label{margin-bottom:8px;color:var(--color-text);font-size:14px;font-weight:800}
.public-event-optional{color:var(--color-muted);font-weight:500}
.public-registration-form .form-field-control{min-height:48px;padding:11px 14px;border-color:var(--gray-300);border-radius:10px;background:var(--color-surface);font-size:14px}
.public-registration-form .form-field-control:focus{border-color:var(--brand-accent-blue);box-shadow:var(--focus-ring)}
.public-event-consent{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:2px 0 16px;padding:13px 14px;border-radius:10px;background:var(--surface-muted)}
.public-event-consent-label{display:flex;min-width:0;align-items:center;gap:8px;color:var(--gray-700);font-weight:500;line-height:1.4}
.public-event-consent-label input{width:17px;height:17px;margin:0;flex:none}
.public-event-consent-link{flex:none;color:var(--brand-accent-blue);font-weight:700}
.public-event-card .button--primary{width:100%;min-height:48px;margin-top:2px;border-radius:10px;font-size:15px}
.public-registration-result{margin-top:22px;padding:18px 20px;border:1px solid var(--color-border);border-radius:12px;line-height:1.5}
.public-registration-result h2{margin:0 0 12px;font-size:17px;font-weight:800}
.public-registration-result p{margin:6px 0;color:inherit}
.public-registration-result.is-success{border-color:var(--border-success);background:var(--surface-success);color:var(--color-success-strong)}
.public-registration-result.is-warning{background:var(--surface-warning);color:var(--color-warning-strong)}
.public-registration-result.is-error{border-color:var(--border-danger-soft);background:var(--surface-danger);color:var(--color-danger-deep)}
.public-registration-result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
.public-registration-result-action{display:flex;min-height:40px;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--border-success);border-radius:9px;background:var(--color-surface);color:var(--color-success-strong);font-size:13px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}
.public-registration-result-action:only-child{grid-column:1/-1}
.public-registration-result-action.is-danger{border-color:var(--border-danger);color:var(--color-danger-strong)}
.public-registration-result .public-registration-cancel-hint{margin-top:12px;font-size:12px}
.public-event-link-row{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin-top:20px}
.public-event-help-link{color:var(--brand-accent-blue);font-size:14px;font-weight:600}

body.page-private-event-access{min-height:100vh;min-height:100svh;background:#eef1f5;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif}
.private-event-access-shell{display:flex;width:100%;min-height:100vh;min-height:100svh;align-items:center;flex-direction:column;justify-content:flex-start;margin:0;padding:30px 20px 40px}
.private-event-access-brand{display:flex;align-items:center;justify-content:center;margin-bottom:28px}
.private-event-access-brand img{display:block;width:150px;height:auto}
.private-event-access-card{width:100%;max-width:560px;padding:40px;border-radius:20px;background:var(--color-surface);box-shadow:0 16px 40px rgba(23,32,51,.08)}
.private-event-access-icon{display:flex;width:64px;height:64px;align-items:center;justify-content:center;margin:0 auto 18px;border-radius:50%;background:#edf1f7;color:#34517e}
.private-event-access-icon svg{width:28px;height:28px;overflow:visible;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.private-event-access-heading{text-align:center}
.private-event-access-heading h1{margin:0;color:var(--color-text);font-size:23px;font-weight:900;line-height:1.35;letter-spacing:-.035em}
.private-event-access-heading p{margin:10px 0 0;color:var(--color-muted);font-size:14px;line-height:1.6}
.private-event-access-form{margin-top:28px}
.private-event-access-field label{display:block;margin-bottom:8px;color:var(--color-text);font-size:14px;font-weight:800;line-height:1.4}
.private-event-access-input-group{display:flex;min-height:50px;align-items:center;border:1px solid var(--gray-300);border-radius:11px;background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease}
.private-event-access-input-group:focus-within{border-color:#345b91;box-shadow:0 0 0 3px rgba(52,91,145,.12)}
.private-event-access-input-group.is-invalid{border-color:var(--color-danger)}
.private-event-access-input-group.is-invalid:focus-within{box-shadow:0 0 0 3px rgba(220,38,38,.1)}
.private-event-access-input-group input{min-width:0;min-height:48px;flex:1;padding:0 16px;border:0;background:transparent;color:var(--color-text);font-size:14px;line-height:1;outline:0}
.private-event-access-toggle{align-self:stretch;min-width:68px;padding:0 16px;border:0;background:transparent;color:var(--color-muted);font-size:13px;font-weight:700;cursor:pointer}
.private-event-access-toggle:hover{color:var(--color-text)}
.private-event-access-error{margin:7px 0 0;color:var(--color-danger);font-size:13px;line-height:1.5}
.private-event-access-submit{display:flex;width:100%;min-height:50px;align-items:center;justify-content:center;margin-top:20px;padding:0 18px;border:0;border-radius:11px;background:#344b75;color:#fff;font-size:15px;font-weight:800;cursor:pointer}
.private-event-access-submit:hover{background:#293f68}
.private-event-access-help{margin:20px 0 0;color:var(--gray-500);font-size:13px;line-height:1.5;text-align:center}

@media(max-width:600px){body.page-public-event{padding:16px 12px}.public-registration-shell{min-height:calc(100vh - 32px);min-height:calc(100svh - 32px)}.public-event-card{max-width:none;padding:24px 20px;border-radius:16px;box-shadow:none}.public-event-summary{margin-bottom:22px;padding-bottom:18px}.public-event-cover{width:60px;height:46px}.public-event-consent{align-items:flex-start}.public-registration-result-actions{grid-template-columns:1fr}.public-event-link-row{gap:12px 18px}.private-event-access-shell{padding:24px 12px}.private-event-access-brand{margin-bottom:22px}.private-event-access-brand img{width:136px}.private-event-access-card{padding:32px 20px 28px;border-radius:18px}.private-event-access-icon{width:58px;height:58px;margin-bottom:16px}.private-event-access-heading h1{font-size:22px}.private-event-access-form{margin-top:24px}.private-event-access-help{padding:0 6px}}


#mailComposeCard,.page-mail-logs .card{overflow:hidden;padding:0}
#mailComposeCard{border-radius:16px}
.mail-recipient-row{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--color-border)}
.mail-recipient-label,.mail-field-label{color:var(--color-text);font-size:13px;font-weight:800}
.mail-field-row{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--color-border)}
.mail-field-control{min-width:0}
.mail-field-input{width:100%;height:40px;padding:0 12px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-surface);font-size:13px;outline:none}
.mail-field-input:focus{border-color:var(--brand-accent-blue)}
.mail-recipient-line{display:flex;min-height:36px;align-items:center;gap:5px;padding:3px 9px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-surface)}
.mail-recipient-line:focus-within{border-color:var(--brand-accent-blue)}
.mail-recipient-line.is-expanded{align-items:flex-start;flex-wrap:wrap}
.mail-recipient-chips{display:flex;min-width:0;align-items:center;flex:0 1 auto;flex-wrap:wrap;gap:4px}
.mail-recipient-line.is-collapsed .mail-recipient-chips{overflow:hidden;flex-wrap:nowrap}
.mail-recipient-chip{display:flex;height:22px;max-width:220px;align-items:center;gap:4px;padding:0 7px;border-radius:var(--radius-pill);background:var(--surface-primary-tint);font-size:11px;font-weight:700;line-height:1;white-space:nowrap}
.mail-recipient-chip>span{overflow:hidden;text-overflow:ellipsis}
.mail-recipient-chip button{display:inline-flex;width:13px;height:13px;align-items:center;justify-content:center;flex:none;background:transparent;color:inherit;font-size:13px;line-height:1;cursor:pointer;opacity:.65}
.mail-recipient-chip button:hover{opacity:1}
.mail-recipient-input{all:unset;min-width:120px;height:24px;flex:1 1 140px;cursor:text;font-size:12px;font-weight:400}
body.page-mail .mail-recipient-input{width:auto;min-height:24px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:12px;font-weight:400;line-height:24px}
body.page-mail .mail-recipient-input:focus{border:0;box-shadow:none}
.mail-recipient-more{flex:none;color:var(--color-muted);font-size:12px;font-weight:700}
.mail-address-book-button{height:40px;white-space:nowrap}
.mail-address-book-arrow{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;line-height:1}
.mail-compose-editor{border:0;border-radius:0}
.mail-compose-editor .mini-editor-toolbar{padding:4px 16px;border-bottom:1px solid var(--color-border);background:var(--surface-muted)}
.mail-compose-editor .mini-editor-button{width:36px;height:30px;font-size:16px}
.mail-compose-editor-surface{height:360px;padding:20px 16px;font-size:14px;line-height:1.7}
.mail-compose-editor-surface p,.mail-compose-editor-surface div{margin:0;line-height:inherit}
.mail-compose-auto-links{margin:0 16px 16px;padding:12px 14px;border:1px solid var(--color-border);border-radius:10px;background:var(--surface-muted)}
.mail-compose-auto-links-title{margin-bottom:5px;font-size:12px;font-weight:800}
.mail-compose-auto-links-content{display:flex;min-width:0;align-items:center;gap:5px;color:var(--color-muted);font-size:12px}
.mail-compose-auto-links-url{overflow:hidden;color:var(--brand-accent-blue);font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.mail-compose-footer{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-top:1px solid var(--color-border);background:var(--color-surface)}
.mail-compose-draft-status{display:flex;align-items:center;gap:10px}
.mail-compose-footer-actions{display:flex;align-items:center;gap:10px}
.mail-compose-status{color:var(--color-muted);font-size:12px}
.mail-compose-reset{padding:2px 0;border-bottom:1px solid currentColor;background:transparent;color:var(--color-muted);font-size:12px;cursor:pointer}
.mail-compose-reset:hover{color:var(--color-text)}
.mail-compose-status.is-sending{color:var(--color-primary-strong)}
.mail-compose-status.is-success{color:var(--color-muted)}
.mail-compose-status.is-error{color:var(--color-danger-strong)}
.mail-address-book-modal{z-index:1500}
.mail-recipient-picker{width:min(760px,92vw);border-radius:18px}
.mail-address-book-head{padding:24px 28px 12px;border-bottom:0}
.mail-address-book-title{margin:0;font-size:21px}
.mail-address-book-summary{margin:5px 0 0;color:var(--color-muted);font-size:13px}
.mail-address-book-close{width:32px;height:32px}
.mail-recipient-picker-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 28px 16px}
.mail-recipient-filter{display:flex;gap:8px}
.mail-recipient-filter button{height:36px;padding:0 15px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-muted);font-size:12px;font-weight:700;cursor:pointer}
.mail-recipient-filter button.is-active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-surface)}
.mail-recipient-search{display:flex;width:268px;height:40px;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--color-border);border-radius:999px}
.mail-recipient-search input{width:100%;height:auto;min-height:0;padding:0;border:0;background:transparent;font-size:12px;outline:none}
.mail-recipient-list{height:430px;overflow:auto;margin:0 28px;border:1px solid var(--color-border);border-radius:12px}
.mail-recipient-select-all{display:flex;height:48px;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--color-border);background:var(--surface-muted);cursor:pointer}
.mail-recipient-select-all span{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700}
.mail-recipient-select-all small{color:var(--color-muted);font-size:11px}
.mail-recipient-entry{display:grid;grid-template-columns:20px 44px minmax(0,1fr) auto;min-height:72px;align-items:center;gap:12px;padding:9px 20px;border-bottom:1px solid var(--color-border);cursor:pointer}
.mail-recipient-entry:last-child{border-bottom:0}
.mail-recipient-entry:has(input:checked){background:#f3f6fb}
.mail-recipient-entry[hidden]{display:none}
.mail-recipient-avatar{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:var(--gray-200);font-size:13px;font-weight:800}
.mail-recipient-avatar.is-empty{border:1px dashed var(--gray-300);background:transparent;color:var(--color-muted)}
.mail-recipient-person{display:grid;min-width:0;gap:2px;font-size:13px}
.mail-recipient-person>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail-recipient-person strong{color:var(--color-text)}
.mail-recipient-person strong.is-empty{color:var(--color-muted)}
.mail-recipient-person small{overflow:hidden;color:var(--color-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.mail-recipient-status{min-width:48px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;text-align:center}
.mail-recipient-status.is-yes{background:var(--surface-success);color:var(--color-success-strong)}
.mail-recipient-status.is-no{background:var(--surface-danger);color:var(--color-danger-strong)}
.mail-recipient-status.is-maybe{background:var(--surface-muted);color:var(--color-muted)}
.mail-recipient-picker-footer{align-items:center;justify-content:space-between;padding:18px 28px;border-top:0}
.mail-recipient-picker-footer>strong{font-size:13px}
.mail-recipient-picker-footer>div{display:flex;gap:10px}
.check-list-empty{display:grid;height:100%;place-content:center;padding:40px 20px;color:var(--color-muted);text-align:center}
.mail-send-flash{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;padding:15px 18px;border:1px solid var(--border-success);border-radius:12px;background:var(--surface-success);color:var(--color-success-strong);font-size:13px}
.mail-send-flash button{background:transparent;color:inherit;font-size:12px;cursor:pointer}
.page-mail-logs .card-header{display:flex;align-items:center;justify-content:space-between;margin:0;padding:8px 20px;border-bottom:1px solid var(--color-border)}
.page-mail-logs .card-header select{width:auto;min-width:120px;height:40px;min-height:40px;padding:0 30px 0 12px;border-radius:9px;font-size:12px}
.page-mail-logs .data-table th,.page-mail-logs .data-table td{padding:13px 20px}
.page-mail-logs .data-table th:first-child{width:20%}
.page-mail-logs .data-table th:nth-child(2){width:36%}
.page-mail-logs .data-table th:nth-child(3){width:12%}
.page-mail-logs .data-table th:nth-child(4){width:24%}
.page-mail-logs .data-table th:last-child{width:8%}
.mail-log-result{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}
.mail-log-result.is-success{background:var(--surface-success);color:var(--color-success-strong)}
.mail-log-result.is-failed{background:var(--surface-danger);color:var(--color-danger-strong)}
.mail-log-retry{margin-left:7px}
.mail-log-detail-button{background:transparent;color:var(--brand-accent-blue);font-size:12px;font-weight:700;text-decoration:underline;cursor:pointer;white-space:nowrap}
.mail-log-detail-row{display:none}
.mail-log-detail-row.is-open{display:table-row}
.mail-log-detail-box{padding:16px;border:1px solid var(--color-border);border-radius:10px;background:var(--surface-muted)}
.mail-log-detail-grid{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 10px}
.mail-log-detail-monospace{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;white-space:pre-wrap;word-break:break-word}
.mail-logs-empty-cell{height:180px;color:var(--color-muted);text-align:center}
.page-mail-logs .mail-log-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0;padding:14px 20px}
.page-mail-logs .mail-log-pagination .is-disabled{opacity:.45;pointer-events:none}
@media(max-width:760px){.mail-recipient-row,.mail-field-row{grid-template-columns:1fr}.mail-address-book-button{width:100%}.mail-compose-editor-surface{height:336px}.mail-compose-auto-links-content{align-items:flex-start;flex-direction:column}.mail-compose-footer{align-items:stretch;flex-direction:column}.mail-compose-footer-actions .button{width:100%}.mail-recipient-picker-tools{align-items:stretch;flex-direction:column}.mail-recipient-search{width:100%}.mail-recipient-filter{overflow-x:auto}.mail-recipient-list{height:360px}.mail-recipient-entry{grid-template-columns:20px 38px minmax(0,1fr) auto;padding:9px 12px}.mail-recipient-avatar{width:36px;height:36px}.page-mail-logs .card{overflow-x:auto}.page-mail-logs .data-table{min-width:820px}}


.u-hidden { display: none }
.u-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap }

.u-flex { display: flex }
.u-flex-center { display: flex; align-items: center; justify-content: center }
.u-flex-between { display: flex; align-items: center; justify-content: space-between }
.u-flex-col { display: flex; flex-direction: column }
.u-grid { display: grid }
.u-inline-flex { display: inline-flex }

.u-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap }
.u-break-all { word-break: break-all }
.u-nowrap { white-space: nowrap }
.text-muted { color: var(--color-muted) }


.u-stack-sm > * + * { margin-top: var(--space-2) }
.u-stack-md > * + * { margin-top: var(--space-4) }
.u-stack-lg > * + * { margin-top: var(--space-6) }

.u-mt-1 { margin-top: var(--space-1) }
.u-mt-2 { margin-top: var(--space-2) }
.u-mt-3 { margin-top: var(--space-3) }
.u-mt-4 { margin-top: var(--space-4) }
.u-mt-6 { margin-top: var(--space-6) }
.u-mt-8 { margin-top: var(--space-8) }

.u-mb-2 { margin-bottom: var(--space-2) }
.u-mb-4 { margin-bottom: var(--space-4) }
.u-mb-6 { margin-bottom: var(--space-6) }

.u-gap-2 { gap: var(--space-2) }
.u-gap-4 { gap: var(--space-4) }
.u-gap-6 { gap: var(--space-6) }

.u-w-full { width: 100% }


/* Focus */
:focus-visible {
  outline: 0;
  box-shadow: var(--focus-ring);
}

/* Skip navigation */
.skip-link {
  position: absolute;
  top: -999px;
  left: var(--space-4);
  z-index: 9999;
  padding: var(--space-2) var(--space-4);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  color: var(--color-text);
  font-weight: 700;
  text-decoration: none;
}
.skip-link:focus {
  top: var(--space-4);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}



