@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-opsz-normal-DIwfbPUE.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-opsz-normal-C0olyEE-.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-opsz-normal-DrHU7SY7.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-opsz-normal-BOyYyU_V.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-opsz-normal-HoL-AExg.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-opsz-normal-BpEBLj1O.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-opsz-italic-Bl6DJqma.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-opsz-italic-Dibx14aP.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-opsz-italic-CMW9dfKg.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-opsz-italic-C-k5pZlm.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-opsz-italic-BhUEwDRF.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-opsz-italic-BOLXpvkj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff")}:root{--field: #0f231b;--field-2: #163327;--field-line: #2c4a3d;--doc: #fbf9f2;--doc-2: #f2eddd;--doc-line: #ddd6c1;--doc-line-strong: #b3aa90;--ink: #22302a;--ink-muted: #56635b;--ink-faint: #79857d;--light: #f4efe2;--light-muted: #b9c4b4;--light-faint: #87958a;--pine: #1e5b44;--pine-deep: #143d2d;--pine-tint: #e3ede5;--brass: #c79a3b;--brass-bright: #e0b558;--brass-ink: #7a5e1c;--danger: #9b3b3b;--danger-bg: #f6eaea;--amber-bg: #f6edd8;--amber-ink: #7a5e1c;--serif: "Source Serif 4 Variable", Georgia, "Times New Roman", serif;--sans: "IBM Plex Sans Variable", -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1.0625rem;--text-lg: clamp(1.125rem, 1.05rem + .3vw, 1.3125rem);--text-xl: clamp(1.375rem, 1.2rem + .7vw, 1.75rem);--text-2xl: clamp(1.75rem, 1.45rem + 1.2vw, 2.375rem);--text-3xl: clamp(2.125rem, 1.6rem + 2vw, 3.125rem);--radius-sm: 2px;--radius-md: 4px;--shadow-overlay: 0 14px 44px rgba(10, 22, 17, .35);--duration-fast: .12s;--duration-standard: .22s;--ease-standard: cubic-bezier(.2, 0, 0, 1)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--doc);-webkit-font-smoothing:antialiased;font-size:var(--text-base);line-height:1.55}::selection{background:var(--pine-tint);color:var(--pine-deep)}a{color:var(--pine-deep);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:2px}h1,h2,h3{text-wrap:balance}p,li{text-wrap:pretty}:focus-visible{outline:2px solid var(--brass);outline-offset:2px;border-radius:1px}.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--field);color:var(--light);padding:8px 14px;font-size:var(--text-sm)}.skip:focus{left:8px;top:8px}.seal{display:block}.seal-core,.seal-dot{fill:var(--brass)}.seal-tile{transition:fill-opacity var(--duration-standard) var(--ease-standard),stroke var(--duration-fast) var(--ease-standard)}.seal-tile.pending{fill:currentColor;fill-opacity:.05;stroke:currentColor;stroke-opacity:.32;stroke-width:.7}.seal-tile.done.ring0{fill:var(--pine);fill-opacity:1;stroke:none}.seal-tile.done.ring1{fill:var(--brass);fill-opacity:1;stroke:none}.seal-tile[role=button]{cursor:pointer}.seal-tile[role=button]:hover{stroke:var(--brass-ink);stroke-opacity:1;stroke-width:1.4}.seal-tile.selected{stroke:var(--ink)!important;stroke-opacity:1!important;stroke-width:1.6!important}.on-field{color:var(--light)}.on-field .seal-tile.done.ring0{fill:var(--light)}.on-field .seal-tile.done.ring1,.on-field .seal-core,.on-field .seal-dot{fill:var(--brass-bright)}.seal-caption{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.08em;color:var(--ink-muted);text-align:center;margin-top:8px}.on-field .seal-caption{color:var(--light-muted)}.tile-pop{position:absolute;z-index:40;max-width:300px;background:var(--doc);border:1px solid var(--doc-line-strong);box-shadow:var(--shadow-overlay);padding:12px 14px;border-radius:var(--radius-sm)}.tile-pop .tp-phase{font-family:var(--mono);font-size:var(--text-xs);color:var(--brass-ink);letter-spacing:.06em;margin-bottom:4px}.tile-pop .tp-action{font-size:var(--text-sm);color:var(--ink)}.tile-pop .tp-who{font-size:var(--text-xs);color:var(--ink-muted);margin-top:6px}.tile-pop .tp-state{display:inline-block;margin-top:8px}.stamp{display:inline-block;font-family:var(--mono);font-weight:600;font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;border:2px solid currentColor;border-radius:var(--radius-sm);padding:2px 9px;transform:rotate(-2deg)}.badge{display:inline-block;font-family:var(--mono);font-weight:600;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;border:1.5px solid currentColor;border-radius:var(--radius-sm);padding:1px 8px;transform:rotate(-1.5deg)}.badge.planning{color:var(--ink-muted)}.badge.confirmed{color:var(--pine)}.badge.in_progress{color:var(--amber-ink)}.badge.complete{color:var(--pine-deep)}.badge.consent_not_asked{color:var(--ink-muted)}.badge.consent_invited{color:var(--amber-ink)}.badge.consent_consented{color:var(--pine)}.badge.consent_declined{color:var(--danger)}.topbar{position:sticky;top:0;z-index:20;background:var(--field);border-bottom:3px solid var(--brass)}.topbar-inner{max-width:1080px;margin:0 auto;padding:0 20px;height:58px;display:flex;align-items:center;gap:26px}.brandlink{display:inline-flex;align-items:center}.brandmark{height:26px;width:auto;display:block}.nav{display:flex;gap:6px}.nav a{padding:6px 12px;color:var(--light-muted);font-weight:500;font-size:14px;font-family:var(--mono);border-radius:var(--radius-sm)}.nav a:hover{color:var(--light);text-decoration:none;background:var(--field-2)}.nav a.active{color:var(--field);background:var(--brass-bright)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:14px}.user-email{color:var(--light-faint);font-size:var(--text-sm);font-family:var(--mono)}.topbar .btn.ghost{color:var(--light-muted)}.topbar .btn.ghost:hover{background:var(--field-2);color:var(--light)}.page{max-width:1080px;margin:0 auto;padding:34px 20px 90px}h1.title{font-family:var(--serif);font-size:var(--text-3xl);font-weight:660;line-height:1.06;margin:0 0 8px;color:var(--ink);letter-spacing:-.015em}.subtitle{color:var(--ink-muted);margin:0 0 26px;font-size:var(--text-base);max-width:52ch}h2.section{font-family:var(--serif);font-size:var(--text-xl);font-weight:630;margin:34px 0 14px;color:var(--ink);line-height:1.15}.section-note{color:var(--ink-muted);font-style:italic;font-family:var(--serif);margin:-6px 0 16px;font-size:var(--text-base);max-width:62ch}.btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--field);background:var(--field);color:var(--light);padding:9px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;font-family:var(--sans);white-space:nowrap;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.btn:hover{background:var(--pine);border-color:var(--pine);color:#fff;text-decoration:none}.btn:active{transform:translateY(1px)}.btn.secondary{background:var(--doc);color:var(--pine-deep);border-color:var(--doc-line-strong)}.btn.secondary:hover{background:var(--pine-tint);border-color:var(--pine);color:var(--pine-deep)}.btn.ghost{background:transparent;color:var(--pine-deep);border-color:transparent;padding:7px 10px}.btn.ghost:hover{background:var(--pine-tint);color:var(--pine-deep)}.btn.small{padding:6px 11px;font-size:13px}.btn.danger{background:var(--doc);color:var(--danger);border-color:#d8bcbc}.btn.danger:hover{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.btn:disabled{opacity:.55;cursor:default}.iconbtn{border:none;background:none;cursor:pointer;color:var(--ink-faint);padding:4px 7px;font-size:16px;line-height:1;border-radius:var(--radius-sm)}.iconbtn:hover{background:var(--doc-2);color:var(--danger)}.card{background:var(--doc);border:1px solid var(--doc-line);border-radius:var(--radius-md)}.card.pad{padding:24px}.grid{display:grid;gap:0}.grid>*{min-width:0}.grid.cols2{grid-template-columns:1fr}.visit-card{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:18px 4px;color:inherit;background:transparent;border:none;border-bottom:1px solid var(--doc-line);border-radius:0;font-family:var(--sans);font-size:var(--text-base);text-align:left;transition:background var(--duration-fast) var(--ease-standard)}.grid .visit-card:first-child{border-top:2px solid var(--field)}.visit-card:hover{background:var(--pine-tint);text-decoration:none}.visit-card h3{font-family:var(--serif);margin:0 0 3px;font-size:var(--text-lg);font-weight:630;color:var(--ink);line-height:1.2}.visit-card .between{flex-direction:column;align-items:flex-start!important;gap:3px;flex:1}.visit-card .meta{color:var(--ink-muted);font-size:var(--text-sm)}.visit-card .meta div{margin-top:1px}.visit-card .badge{order:2;margin-top:7px}.folio-seal{flex:0 0 auto}label.field{display:block;margin-bottom:14px}label.field .lab{display:block;font-size:var(--text-sm);font-weight:600;color:var(--ink-muted);margin-bottom:5px}input.inp,textarea.inp,select.inp{width:100%;border:1px solid var(--doc-line-strong);border-radius:var(--radius-sm);padding:9px 11px;font-size:var(--text-base);font-family:var(--sans);color:var(--ink);background:#fff}input.inp:focus,textarea.inp:focus,select.inp:focus{outline:none;border-color:var(--pine);box-shadow:0 0 0 2px var(--pine-tint)}input.inp:disabled,textarea.inp:disabled,select.inp:disabled{background:var(--doc);color:var(--ink-muted);border-color:var(--doc-line)}textarea.inp{resize:vertical;min-height:64px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.err{color:var(--danger);font-size:var(--text-sm);margin-top:6px}.tabs{display:flex;gap:6px;border-bottom:2px solid var(--field);margin:28px 0 26px;flex-wrap:wrap}.tab{padding:8px 14px 7px;cursor:pointer;font-weight:600;font-size:13px;color:var(--ink-muted);border:1px solid var(--doc-line);border-bottom:none;background:var(--doc-2);margin-bottom:0;font-family:var(--mono);border-radius:var(--radius-md) var(--radius-md) 0 0;display:inline-flex;align-items:center;gap:8px}.tab:hover{color:var(--pine-deep);background:var(--pine-tint)}.tab.active{color:var(--light);background:var(--field);border-color:var(--field)}.tab .count{color:inherit;opacity:.65;font-weight:500;font-variant-numeric:tabular-nums}.phase-head{display:flex;align-items:baseline;gap:12px;margin:34px 0 4px;border-bottom:2px solid var(--field);padding-bottom:8px}.phase-num{font-family:var(--mono);font-size:var(--text-md);font-weight:600;color:var(--brass-ink)}.phase-head h3{font-family:var(--serif);font-size:var(--text-lg);font-weight:630;margin:0}.phase-progress{color:var(--ink-faint);font-size:var(--text-sm);margin-left:auto;font-family:var(--mono);font-variant-numeric:tabular-nums}.checkrow{display:grid;grid-template-columns:26px 1fr 170px 200px;gap:12px;align-items:start;padding:11px 2px;border-bottom:1px solid var(--doc-line);background:transparent;margin:0}.checkrow.done .action{color:var(--ink-faint);text-decoration:line-through;text-decoration-color:var(--doc-line-strong)}.action{font-size:var(--text-base);padding-top:2px;font-family:var(--sans);background:transparent;color:var(--ink)}.cbox{width:18px;height:18px;margin-top:3px;accent-color:var(--pine);cursor:pointer}.mini{border:1px solid transparent;border-radius:var(--radius-sm);padding:5px 7px;font-size:var(--text-sm);width:100%;font-family:var(--sans);color:var(--ink);background:transparent}.mini:hover{border-color:var(--doc-line)}.mini:focus{outline:none;border-color:var(--pine);background:#fff}.mini.muted::placeholder{color:var(--ink-faint)}.addrow{margin-top:8px}table.tbl{width:100%;border-collapse:collapse;background:transparent}table.tbl th{background:transparent;color:var(--ink-muted);font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.04em;text-align:left;padding:6px 10px 8px;font-weight:600;border-bottom:2px solid var(--field)}table.tbl td{border-bottom:1px solid var(--doc-line);padding:7px 10px;vertical-align:middle;font-variant-numeric:tabular-nums}table.tbl input.cell,table.tbl select.cell{width:100%;border:1px solid transparent;background:transparent;padding:5px 6px;font-size:var(--text-sm);font-family:var(--sans);color:var(--ink);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums}table.tbl input.cell:hover,table.tbl select.cell:hover{border-color:var(--doc-line)}table.tbl input.cell:focus,table.tbl select.cell:focus{outline:none;border-color:var(--pine);background:#fff}.tnum{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--mono);font-size:var(--text-sm)}.totalrow td{background:transparent!important;font-weight:700;border-top:2px solid var(--field);border-bottom:none;font-family:var(--mono)}.board{background:var(--field);border:none;border-radius:var(--radius-md);color:var(--light)}.board.card.pad{padding:24px}.board h2.section{color:var(--light)}.board .section-note{color:var(--light-muted)}.board table.tbl th{color:var(--brass-bright);border-bottom:2px solid var(--brass);font-family:var(--mono)}.board table.tbl td{border-bottom:1px solid var(--field-line);color:var(--light)}.board table.tbl input.cell,.board table.tbl select.cell{color:var(--light);font-family:var(--mono);font-size:var(--text-sm)}.board table.tbl input.cell::placeholder{color:var(--light-faint)}.board table.tbl input.cell:hover,.board table.tbl select.cell:hover{border-color:var(--field-line)}.board table.tbl input.cell:focus,.board table.tbl select.cell:focus{border-color:var(--brass);background:var(--field-2)}.board select.cell option{color:var(--ink);background:var(--doc)}.board .badge{transform:none}.board .badge.planning{color:var(--light-muted)}.board .btn.ghost{color:var(--brass-bright)}.board .btn.ghost:hover{background:var(--field-2);color:var(--brass-bright)}.board .iconbtn{color:var(--light-faint)}.board .iconbtn:hover{background:var(--field-2);color:#e08a8a}.board .muted,.board .small.muted{color:var(--light-muted)}.board input.cell[type=date]{color-scheme:dark}.note-amber{background:var(--amber-bg);border-left:3px solid var(--brass);color:var(--amber-ink);padding:12px 16px;font-size:var(--text-sm);margin:4px 0 18px}.note-amber b{color:var(--amber-ink)}.callout{background:var(--doc-2);border:none;border-left:3px solid var(--brass);padding:16px 18px}.bar{height:6px;background:var(--doc-2);overflow:hidden}.bar>div{height:100%;background:var(--pine);transition:width var(--duration-standard) var(--ease-standard)}.flex{display:flex;align-items:center;gap:12px}.flex>*{min-width:0}.flex>input.inp{flex:1 1 220px}.between{display:flex;align-items:center;justify-content:space-between;gap:14px}.spacer{flex:1}.muted{color:var(--ink-muted)}.faint{color:var(--ink-faint)}.small{font-size:var(--text-sm)}.empty{text-align:center;padding:64px 20px;color:var(--ink-muted)}.empty .big{font-family:var(--serif);font-size:var(--text-xl);color:var(--ink);margin-bottom:8px}.divider{height:1px;background:var(--doc-line);margin:26px 0}.kv{display:grid;grid-template-columns:170px 1fr;gap:0 18px}.kv .k{color:var(--ink-muted);padding:8px 0;font-size:var(--text-sm);font-family:var(--mono);border-bottom:1px solid var(--doc-line)}.kv .v{padding:8px 0;border-bottom:1px solid var(--doc-line)}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);background:var(--field);color:var(--light);border:1px solid var(--brass);padding:9px 18px;border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--mono);box-shadow:var(--shadow-overlay);z-index:50;max-width:min(92vw,460px);text-align:center}.toast.err{background:var(--danger);color:#fff;border-color:#7a2a2a}.tabfieldset{border:0;margin:0;padding:0;min-width:0}.visit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:26px;margin-top:8px}.visit-head .vh-main{min-width:0}.visit-head .vh-seal{flex:0 0 auto;text-align:center;position:relative}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--field)}.auth-card{width:100%;max-width:430px;background:var(--doc);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-overlay)}.auth-brand{text-align:center;padding:30px 26px 24px;background:var(--field);border-bottom:3px solid var(--brass)}.auth-brand .mk{font-family:var(--serif);font-size:30px;color:var(--light);font-weight:660;letter-spacing:.01em}.auth-brand .tag{color:var(--light-muted);font-size:var(--text-sm);margin-top:6px;font-family:var(--serif);font-style:italic}.auth-seal{width:42px;height:42px;display:block;margin:0 auto 12px;opacity:.95}.auth-card .card{border:none;background:transparent}.auth-card .card.pad{padding:26px 30px 8px}.auth-card>p.small.faint{padding-bottom:22px;margin-top:4px}.shared-bg{min-height:100vh;background:var(--doc)}.shared-cover{background:var(--field);color:var(--light);border-bottom:3px solid var(--brass);padding:52px 22px 46px}.shared-cover-inner{max-width:640px;margin:0 auto;text-align:center}.shared-head .mk{font-family:var(--mono);color:var(--brass-bright);font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase}.shared-head h1{font-family:var(--serif);font-size:var(--text-3xl);font-weight:660;margin:18px 0 10px;line-height:1.08;color:var(--light)}.shared-head .who{color:var(--light-muted);font-size:var(--text-md);font-family:var(--mono)}.shared-seal{display:none}.cover-seal{margin:0 auto 18px}.shared-wrap{max-width:640px;margin:0 auto;padding:8px 22px 90px}.shared-wrap .callout{text-align:center;margin-top:30px;font-family:var(--serif);font-style:italic;font-size:var(--text-md);color:var(--ink);background:transparent;border:none;border-top:1px solid var(--doc-line-strong);border-bottom:1px solid var(--doc-line-strong);padding:18px 10px}.shared-sec{font-family:var(--serif);font-size:var(--text-xl);font-weight:630;margin:44px 0 14px;color:var(--ink)}.sess{position:relative;background:#fff;border:1px solid var(--doc-line-strong);border-radius:var(--radius-md);margin-bottom:14px;padding:0;display:flex;gap:0;align-items:stretch;overflow:hidden}.sess .when{flex:0 0 122px;min-width:122px;padding:14px 12px;background:var(--doc-2);color:var(--pine-deep);font-weight:600;font-size:var(--text-sm);font-family:var(--mono);border-right:1px dashed var(--doc-line-strong);display:flex;flex-direction:column;justify-content:center;gap:2px;position:relative}.sess:before,.sess:after{content:"";position:absolute;left:122px;width:12px;height:12px;background:var(--doc);border:1px solid var(--doc-line-strong);border-radius:50%;transform:translate(-50%);z-index:1}.sess:before{top:-7px}.sess:after{bottom:-7px}.sess>div:nth-child(2){padding:14px 16px;flex:1;min-width:0}.sess .topic{font-family:var(--serif);font-weight:630;font-size:var(--text-md);line-height:1.3}.sess .venue{color:var(--ink-muted);font-size:var(--text-sm);margin-top:3px}.sess .conf{margin-left:auto;flex:0 0 auto;display:flex;align-items:center;padding:14px 16px 14px 0}@media (max-width: 860px){.page{padding-top:26px}.checkrow{grid-template-columns:24px 1fr}.checkrow .mini{grid-column:2}.visit-head{flex-direction:column-reverse;align-items:center;gap:10px}.visit-head .vh-main{width:100%}}@media (max-width: 720px){.between{flex-wrap:wrap}.row2,.row3,.kv{grid-template-columns:1fr}.kv .k{border-bottom:none;padding-bottom:0}.nav{gap:4px}.topbar-inner{gap:14px}h1.title{font-size:var(--text-2xl)}.visit-card{gap:14px;padding:15px 2px}.card.pad,.board.card.pad{padding:18px 14px}.shared-cover{padding:38px 18px 34px}.sess{flex-wrap:wrap}.sess .when{flex:1 1 100%;border-right:none;border-bottom:1px dashed var(--doc-line-strong);flex-direction:row;align-items:center;gap:10px}.sess:before,.sess:after{display:none}.sess .conf{padding:0 16px 14px}.sess>div:nth-child(2){flex:1 1 60%}}@media (max-width: 560px){.user-email{display:none}}@media (max-width: 400px){.topbar-inner{padding:0 14px}.page{padding-left:14px;padding-right:14px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
