:root { --owner-ink:#082b52; --owner-blue:#1070c0; --owner-deep:#075a99; --owner-cyan:#13bcd2; --owner-sky:#e9f6fc; --owner-paper:#fcfeff; --owner-line:rgba(8,43,82,.16); --owner-shadow:0 24px 65px rgba(8,43,82,.14); --owner-serif:Georgia,"Times New Roman",serif; --owner-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; }
body { margin:0; color:var(--owner-ink); background:var(--owner-sky); font:16px/1.55 var(--owner-sans); }
button,input,textarea { font:inherit; }
button { cursor:pointer; }
a { color:inherit; text-underline-offset:3px; }
.owner-shell { width:min(1200px,calc(100% - 48px)); margin:auto; }
.owner-login-body { min-height:100vh; display:grid; place-items:center; padding:24px; }
.owner-login-card { width:min(100%,540px); padding:clamp(2rem,6vw,4rem); border-radius:30px; background:var(--owner-paper); box-shadow:var(--owner-shadow); }
.owner-kicker { margin:0 0 .7rem; color:var(--owner-blue); font-size:.72rem; font-weight:850; letter-spacing:.13em; line-height:1.25; text-transform:uppercase; }
.owner-login-card h1,.owner-hero h1,.owner-form h2,.owner-list h2,.owner-writing-room h3 { margin:0; font-family:var(--owner-serif); font-weight:500; letter-spacing:-.035em; line-height:1.04; }
.owner-login-card h1 { font-size:clamp(2.4rem,8vw,4.25rem); margin-bottom:1rem; }
.owner-login-card p:not(.owner-kicker):not(.owner-alert),.owner-session-note { color:rgba(8,43,82,.74); }
.owner-login-card form { display:grid; gap:1.2rem; margin-top:1.7rem; }
.owner-login-card label,.owner-field { display:grid; gap:.42rem; color:var(--owner-ink); font-size:.86rem; font-weight:780; }
.owner-login-card input,.owner-field input,.owner-field textarea { width:100%; padding:.78rem .85rem; border:1px solid rgba(8,43,82,.28); border-radius:.72rem; background:#fff; color:var(--owner-ink); font:400 .95rem/1.45 var(--owner-sans); }
.owner-login-card input:focus,.owner-field input:focus,.owner-field textarea:focus { outline:3px solid rgba(19,188,210,.28); border-color:var(--owner-blue); }
.owner-login-card button,.owner-save,.owner-ai-button { min-height:50px; padding:.85rem 1.15rem; border:1px solid var(--owner-blue); border-radius:999px; background:var(--owner-blue); color:#fff; font-size:.9rem; font-weight:850; transition:transform .18s ease,background .18s ease; }
.owner-login-card button:hover,.owner-save:hover,.owner-ai-button:hover { background:var(--owner-deep); transform:translateY(-1px); }
.owner-session-note { margin:1.4rem 0 0; font-size:.84rem; }
.owner-alert { margin:1rem 0; padding:.72rem .85rem; border-radius:.7rem; background:#dff6f8; color:var(--owner-ink); font-size:.9rem; }
.owner-topbar { border-bottom:1px solid var(--owner-line); background:rgba(252,254,255,.94); backdrop-filter:blur(12px); }
.owner-topbar__inner { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.owner-brand { color:var(--owner-ink); font-family:var(--owner-serif); font-size:1.5rem; font-weight:600; letter-spacing:-.03em; text-decoration:none; }
.owner-brand span { display:block; margin-top:.05rem; color:var(--owner-blue); font-family:var(--owner-sans); font-size:.58rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.owner-site-link,.owner-logout { display:inline-flex; align-items:center; min-height:38px; margin-left:.6rem; border:0; background:transparent; color:var(--owner-ink); font-size:.82rem; font-weight:800; text-decoration:none; }
.owner-logout { padding:0; }
.owner-main { padding-block:clamp(2.5rem,6vw,5.5rem); }
.owner-hero { display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(2rem,7vw,7rem); align-items:end; padding:clamp(2rem,5vw,4rem); border-radius:1.6rem; background:var(--owner-ink); color:#fff; overflow:hidden; position:relative; }
.owner-hero::after { content:""; position:absolute; width:360px; height:360px; right:-105px; top:-150px; border:1px solid rgba(255,255,255,.27); border-radius:50%; box-shadow:0 0 0 44px rgba(255,255,255,.06),0 0 0 90px rgba(255,255,255,.04); }
.owner-hero > * { position:relative; z-index:1; }
.owner-hero .owner-kicker { color:#73e2ed; }
.owner-hero h1 { max-width:13ch; font-size:clamp(2.5rem,5.2vw,5rem); }
.owner-hero p:not(.owner-kicker) { max-width:40rem; margin:1rem 0 0; color:rgba(255,255,255,.8); }
.owner-hero__note { display:grid; gap:.5rem; padding:1.25rem; border-radius:1rem; background:rgba(255,255,255,.11); color:rgba(255,255,255,.85); font-size:.9rem; }
.owner-hero__note strong { color:#fff; }
.owner-workspace { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr); gap:1.25rem; margin-top:1.25rem; align-items:start; }
.owner-form,.owner-list { border-radius:1.35rem; background:var(--owner-paper); box-shadow:0 12px 32px rgba(8,43,82,.08); }
.owner-form { padding:clamp(1.4rem,4vw,2.5rem); }
.owner-form__heading { margin-bottom:1.6rem; }
.owner-form h2,.owner-list h2 { font-size:clamp(2rem,3.3vw,3rem); }
.owner-form__heading > p:last-child,.owner-list__heading > p:last-child { margin:.65rem 0 0; color:rgba(8,43,82,.7); font-size:.92rem; }
.owner-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.owner-field span { color:rgba(8,43,82,.57); font-size:.7rem; font-weight:750; }
.owner-field--wide { grid-column:1 / -1; }
.owner-field textarea { min-height:130px; resize:vertical; }
.owner-field.has-error input,.owner-field.has-error textarea { border-color:#9b1a38; box-shadow:0 0 0 3px rgba(155,26,56,.12); }
.owner-field small { color:rgba(8,43,82,.65); font-size:.77rem; font-weight:650; }
.owner-writing-room { display:grid; grid-template-columns:.7fr 1.3fr; gap:1.25rem; margin:1.25rem 0; padding:1.25rem; border:1px solid rgba(19,188,210,.38); border-radius:1rem; background:#f3fcfd; }
.owner-writing-room h3 { font-size:1.75rem; }
.owner-writing-room p:not(.owner-kicker) { margin:.65rem 0 0; color:rgba(8,43,82,.72); font-size:.9rem; }
.owner-writing-room__controls { display:grid; gap:.8rem; align-content:start; }
.owner-ai-button { justify-self:start; min-height:44px; border-color:var(--owner-cyan); background:var(--owner-cyan); color:var(--owner-ink); }
.owner-ai-button:hover { background:#0ca9be; }
.owner-ai-button:disabled,.owner-save:disabled { cursor:wait; opacity:.65; transform:none; }
.owner-ai-note,.owner-save-status { margin:0; color:rgba(8,43,82,.7); font-size:.8rem; }
.owner-ai-note.is-error,.owner-save-status.is-error { color:#9b1a38; font-weight:750; }
.owner-form__actions { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1rem; margin-top:1.3rem; }
.owner-reset { min-height:44px; padding:.72rem .95rem; border:1px solid var(--owner-line); border-radius:999px; background:transparent; color:var(--owner-ink); font-size:.85rem; font-weight:800; }
.owner-save-status { flex:1 1 250px; }
.owner-list { position:sticky; top:1rem; padding:1.45rem; }
.owner-list__heading { padding-bottom:1.25rem; border-bottom:1px solid var(--owner-line); }
.owner-list h2 { font-size:2rem; }
.owner-event-list { display:grid; gap:.8rem; margin-top:1rem; }
.owner-empty { margin:0; padding:1rem 0; color:rgba(8,43,82,.68); font-size:.9rem; }
.owner-empty--error { color:#9b1a38; }
.owner-event { padding:1rem; border:1px solid var(--owner-line); border-radius:.9rem; background:#fff; }
.owner-event.is-archived { opacity:.65; }
.owner-event__meta { display:flex; justify-content:space-between; gap:.75rem; color:var(--owner-blue); font-size:.68rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.owner-event h3 { margin:.7rem 0 .45rem; font-family:var(--owner-serif); font-size:1.28rem; font-weight:500; line-height:1.15; }
.owner-event > p { margin:0; color:rgba(8,43,82,.68); font-size:.8rem; }
.owner-event__actions { display:flex; gap:.8rem; margin-top:.95rem; }
.owner-event__actions button { padding:0; border:0; background:transparent; color:var(--owner-blue); font-size:.78rem; font-weight:850; text-decoration:underline; text-underline-offset:3px; }
.owner-event__actions button:last-child { color:#9b1a38; }
.owner-event__actions span { color:rgba(8,43,82,.62); font-size:.76rem; }
@media (max-width:900px) { .owner-workspace,.owner-hero,.owner-writing-room { grid-template-columns:1fr; }.owner-list { position:static; }.owner-hero h1 { max-width:18ch; } }
@media (max-width:600px) { .owner-shell { width:min(100% - 32px,1200px); }.owner-topbar__inner { min-height:70px; }.owner-brand { font-size:1.25rem; }.owner-site-link { display:none; }.owner-form__grid { grid-template-columns:1fr; }.owner-field--wide { grid-column:auto; }.owner-form__actions { align-items:stretch; }.owner-save,.owner-reset { flex:1 1 150px; }.owner-login-card { padding:2rem 1.5rem; }.owner-hero { padding:1.5rem; }.owner-hero h1 { font-size:2.55rem; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { transition-duration:.01ms!important; scroll-behavior:auto!important; } }
