.development-preview-banner{padding:var(--space-4) var(--space-page);border-bottom:1px solid var(--color-border);background:var(--color-soft-blue);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3) var(--space-6)}.development-preview-banner>div{display:flex;align-items:center;gap:var(--space-3)}.development-preview-banner span{display:grid;gap:var(--space-1)}.development-preview-banner small{color:var(--color-muted);font-size:var(--text-xs)}.development-preview-banner strong{font-size:var(--text-sm)}.development-preview-actions{margin-left:auto;flex-wrap:wrap}.development-preview-status{display:flex;align-items:center;gap:var(--space-2);color:var(--color-primary);font-size:var(--text-xs);margin-right:auto}.development-preview-identity{border:1px solid var(--color-border);border-radius:var(--radius-control);padding:var(--space-2) var(--space-3);display:grid;text-align:left;font-size:var(--text-sm);font-weight:600}.development-preview-identity span{color:var(--color-muted);font-size:var(--text-xs);font-weight:400}.development-preset-list{display:grid;gap:var(--space-3);margin:var(--space-5) 0}.development-preset{display:grid;gap:var(--space-2);text-align:left;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control)}.development-preset:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-subtle-surface)}.development-preset span{font-size:var(--text-sm);color:var(--color-muted);line-height:1.6}@media (max-width:600px){.development-preview-actions{margin-left:0}.development-preview-identity{font-size:var(--text-xs)}}.record-interactive{cursor:pointer}.metadata-line{display:flex;flex-wrap:wrap}.metadata-item,.metadata-line{align-items:center;gap:var(--space-2);min-width:0}.metadata-item{display:inline-flex}.metadata-value{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.metadata-separator{flex-shrink:0}.content-panel{padding:var(--space-6);border-radius:var(--radius-panel);border:1px solid var(--color-border);background:var(--color-surface);min-width:0}.content-panel-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.content-panel-heading h2{font-size:var(--text-lg);margin:0}.content-panel-heading>span{color:var(--color-muted);font-size:var(--text-xs)}.empty-state.empty-state--plain{border:0;background:transparent;min-height:0;max-width:560px;padding:var(--space-12) 0;align-items:start;text-align:left}.empty-state--plain>div:first-child{color:var(--color-primary);margin-bottom:var(--space-5)}.record-interactive:focus-visible,.record-interactive:has(:focus-visible){background-color:var(--color-record-hover)}@media (hover:hover) and (pointer:fine){.record-interactive:not(:disabled):hover{background-color:var(--color-record-hover)}.data-table tbody tr:not(.record-interactive):hover{background-color:var(--color-table-row-hover)}}.data-table tbody tr:not(.record-interactive):focus-within{background-color:var(--color-table-row-hover)}.data-table-frame{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);margin:var(--space-5) 0}.data-table-scroll{overflow-x:auto}.record-data-table[data-navigation]{table-layout:fixed}.record-data-table td,.record-data-table th{padding:var(--space-4);text-align:left;vertical-align:middle}.record-data-table tbody th{background:transparent;color:var(--color-text);font-size:var(--text-sm);font-weight:400}.record-data-table tbody tr:last-child>*{border-bottom:0}.record-data-table small{display:block;color:var(--color-muted);font-size:var(--text-xs);margin-top:var(--space-2)}.record-primary{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-2);background:transparent;border:0;border-radius:var(--radius-control);text-align:left}.record-primary>span{display:grid;gap:var(--space-2);flex:1 1;min-width:0}.record-primary strong{color:var(--color-primary);font-size:var(--text-sm)}.record-data-table .record-navigation-cell{width:calc(18px + 2 * var(--space-4));color:var(--color-primary)}.record-navigation-cell svg{display:block}.record-list,.record-row{--record-fields:0}.record-list{border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);overflow:hidden}.record-list ul{padding:0;margin:0;list-style:none}.record-list li+li{border-top:1px solid var(--color-border)}.record-list-columns,.record-row{display:grid;grid-template-columns:44px minmax(0,1fr) repeat(var(--record-fields),minmax(100px,.4fr)) 18px;gap:var(--space-5);align-items:center;width:100%;padding:var(--space-5);background:transparent;border:0;text-align:left}.record-list .record-row{border:0;border-radius:0}.record-row{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-control)}.record-list-columns{background:var(--color-table-heading);color:var(--color-muted);font-size:var(--text-xs);font-weight:500;border-bottom:1px solid var(--color-border)}.record-list-columns>:first-child{grid-column:2}.record-row-identity{display:grid;gap:var(--space-2);min-width:0;overflow-wrap:anywhere}.record-row-identity>strong{font-size:var(--text-base)}.record-row-identity small{font-weight:400}.record-row-description{color:var(--color-muted);font-size:var(--text-xs)}.record-row-field{display:grid;gap:var(--space-2);min-width:0;font-size:var(--text-xs)}.record-row-chevron{color:var(--color-primary);justify-self:end}.record-list .record-row:focus-visible{outline-offset:-3px}@media (max-width:1100px){.record-list-columns,.record-row{grid-template-columns:36px minmax(0,1fr) repeat(var(--record-fields),minmax(75px,.4fr)) 18px;gap:var(--space-3);padding:var(--space-4)}}@media (max-width:700px){.content-panel{padding:var(--space-4)}.record-data-table tbody th,.record-data-table td,.record-data-table th{padding:var(--space-3) var(--space-2);font-size:var(--text-xs)}.record-data-table .data-column-phone-hidden{display:none}.record-data-table .record-navigation-cell{width:calc(18px + 2 * var(--space-2))}.record-primary{gap:var(--space-2);padding:var(--space-2) 0}.record-primary .game-tile{width:32px;height:40px}.record-primary .game-tile>span,.record-primary strong{font-size:var(--text-xs)}.record-row{grid-template-columns:36px minmax(0,1fr) 18px}.record-list-columns{display:none}.record-row-chevron{grid-column:3;grid-row:1}.record-row-field{grid-column:2;display:flex;flex-wrap:wrap;align-items:baseline}.record-field-label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal;color:var(--color-muted)}.record-row-identity>strong{font-size:var(--text-sm)}}.content-tab-list{display:flex;gap:var(--space-6);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6)}.content-tab-list>button{display:inline-flex;align-items:center;gap:var(--space-2);min-height:48px;padding:var(--space-3) var(--space-1);border:0;border-bottom:3px solid transparent;background:transparent;color:var(--color-muted);font-weight:600}.content-tab-list>button[aria-selected=true]{color:var(--color-primary);border-bottom-color:var(--color-primary)}.content-tab-list>button:hover{color:var(--color-primary)}.content-tab-list .count-badge{background:var(--color-badge-surface);color:var(--color-badge-text);font-size:var(--text-xs)}.content-tabs>[role=tabpanel]:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--space-2)}@media (min-width:1550px){main{padding-top:var(--space-16)}.empty-state{min-height:440px}}@media (max-width:1200px){.sidebar{width:215px;padding-left:var(--space-4);padding-right:var(--space-4)}.workspace{margin-left:215px}main{padding:var(--space-8) var(--space-8) var(--space-5)}.topbar{padding:0 var(--space-8)}.stat-strip>div{padding:0 var(--space-4);gap:var(--space-2)}.stat-icon{width:32px;height:35px}.stat-strip span:not(.stat-icon){font-size:var(--text-xs)}.stat-strip strong{font-size:var(--text-2xl)}}@media (max-width:950px){.stat-strip{grid-template-columns:1fr 1fr;gap:var(--space-6) 0}.stat-strip>div:nth-child(2){border-right:0}.stat-strip>div{padding:0 var(--space-6)}.stat-strip span:not(.stat-icon){font-size:var(--text-xs)}.log-button{min-width:110px;padding:var(--space-3) var(--space-3)}.large-tile{width:52px;height:70px}.game-summaries{grid-template-columns:1fr}}@media (max-width:700px){.sidebar{inset:auto 0 0 0;width:100%;height:calc(68px + env(safe-area-inset-bottom));padding:var(--space-1) var(--space-2) env(safe-area-inset-bottom);border:0;border-top:1px solid var(--color-border)}.brand,.sidebar-bottom{display:none}.sidebar nav{display:flex;justify-content:space-around;gap:0;height:58px}.sidebar nav :is(button,a){flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-control);min-width:90px;justify-content:center;position:relative}.sidebar nav :is(button,a)>span{position:absolute;right:8px;top:3px;font-size:var(--text-xs);padding:1px var(--space-1)}.workspace{margin-left:0;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.topbar{padding:var(--space-2) var(--space-4);gap:var(--space-2)}main{padding:var(--space-8) var(--space-5) var(--space-4)}.log-button{width:100%;min-height:46px}.stat-strip{padding:var(--space-6) 0;margin-bottom:var(--space-8);gap:var(--space-6) 0}.stat-strip>div{padding:0 var(--space-4);gap:var(--space-2)}.stat-strip strong{font-size:var(--text-2xl)}.stat-strip span:not(.stat-icon){font-size:var(--text-xs)}.stat-icon{width:32px;height:36px;background:transparent}.stat-icon svg{width:20px}.journal-heading h2{font-size:var(--text-lg)}.journal-heading>.text-button{font-size:var(--text-xs)}.empty-state{min-height:330px;padding:var(--space-8) var(--space-4)}.empty-state h2{font-size:var(--text-lg);max-width:260px}.empty-state p{font-size:var(--text-xs);max-width:260px}.empty-dice{width:75px;height:70px}.empty-dice svg{width:45px}.page-footer{font-size:var(--text-xs);gap:var(--space-1);align-items:start}.page-footer>span{max-width:150px;line-height:1.7}.page-footer .text-button{font-size:var(--text-xs);padding-top:0;min-height:24px}.large-tile{width:44px;height:61px}.large-tile span{font-size:var(--text-xl)}.editor-dialog,.info-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:var(--space-5) var(--space-4);border-radius:var(--radius-panel)}.dialog-heading h2{font-size:var(--text-2xl)}.dialog-heading{margin-bottom:var(--space-5)}.form-grid{gap:var(--space-4) var(--space-3)}.participant{grid-template-columns:minmax(70px,1fr) 65px 114px 24px;gap:var(--space-1)}.participant input,.participant select{font-size:var(--text-xs);padding:var(--space-2) var(--space-2)}.participant .icon-button{width:24px}.participant.with-team{grid-template-columns:1fr 1fr 28px;border:1px solid var(--color-border);border-radius:var(--radius-control);padding:var(--space-2)}.participant.with-team>label:nth-child(3){grid-column:1}.participant.with-team .remove-player{grid-column:3;grid-row:1}.dialog-footer{align-items:flex-start}.dialog-footer>.primary{padding:var(--space-3) var(--space-3)}.draft-status{max-width:150px}.info-dialog .scroll-area-viewport>p{font-size:var(--text-xs)}.insights{padding:var(--space-4)}.insights h2{font-size:var(--text-lg)}td,th{padding:var(--space-2) var(--space-2)}.table-wrap .text-button,td,th{font-size:var(--text-xs)}.game-summaries{gap:var(--space-2)}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.auth-panel{max-width:480px;margin:8vh auto;padding:var(--space-10);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-dialog);box-shadow:var(--shadow-panel)}@media (max-width:1200px){.account-notice{margin-left:215px;padding-left:var(--space-8);padding-right:var(--space-8)}}@media (max-width:700px){.account-notice{margin-left:0;padding:var(--space-3) var(--space-5)}.auth-panel{margin:var(--space-6) var(--space-4);padding:var(--space-6) var(--space-5);max-width:none}.account-name{max-width:90px}.account-menu{max-width:40vw}.sync-compact-status{overflow:hidden;text-overflow:ellipsis}.sync-popover>summary>svg:last-child{display:none}.topbar .social-open{width:44px;position:relative;flex-shrink:0}.social-button-label{display:none}.social-open .count-badge{position:absolute;right:0;top:0}.topbar .toolbar-popover-panel{position:fixed;top:calc(var(--toolbar-height) + var(--space-2));left:var(--space-4);right:var(--space-4);width:auto}.conflict-versions{grid-template-columns:1fr}.conflict-card>.secondary{font-size:var(--text-xs)}.public-header{padding:var(--space-5);flex-wrap:wrap}.public-header nav{gap:var(--space-4);font-size:var(--text-xs)}.public-brand{font-size:var(--text-lg)}.public-hero{grid-template-columns:1fr;gap:var(--space-8);padding-bottom:var(--space-8)}.public-main{padding-top:var(--space-8)}.public-hero h1{font-size:38px}.public-hero p{font-size:var(--text-sm)}.public-hero .text-button{display:flex;justify-content:start;margin:var(--space-4) 0 0}.table-illustration{height:210px}.public-features{grid-template-columns:1fr;gap:var(--space-5)}.public-footer{padding:var(--space-6) var(--space-5)}.reading-page{padding-top:var(--space-8)}.reading-page h1{font-size:34px}.sidebar nav{background:var(--color-surface)}}@media (max-width:700px){.sidebar nav :is(button,a){color:var(--color-muted)}.sidebar nav .active{color:var(--color-primary);background:var(--color-nav-active)}.sidebar nav :is(button,a)>span{background:var(--color-surface);color:var(--color-primary)}.stat-strip{padding:var(--space-5) 0;gap:var(--space-5)}.stat-strip>div{padding:0}.table-scene{min-height:340px;max-width:460px;width:100%;margin:auto}.scene-card{padding:var(--space-4)}.auth-panel h1{font-size:34px}input,select,textarea{font-size:var(--text-base)}.primary,.secondary{min-height:44px}.palette-grid{grid-template-columns:repeat(3,1fr)}.palette-swatch{height:80px}.sidebar{background:var(--color-surface)}}@media (max-width:700px){.sidebar nav :is(button,a):hover{background:var(--color-nav-hover);color:var(--color-primary)}}@media (max-width:700px){.sidebar nav :is(button,a){min-width:0;flex:1 1;padding:var(--space-1);font-size:11px}.collection-row{flex-wrap:wrap}.collection-row-actions{width:100%;justify-content:flex-end}.profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}