/* VSO's burgundy-and-gold practice folio. Legacy tokens remain for feature modules. */
:root{--burgundy:#59051e;--burgundy-deep:#350b1c;--gold:#b98b42;--gold-light:#eed8a2;--gold-pale:#f8efd9;--green:var(--burgundy);--green-light:#f4e8ec;--ink:#30242a;--muted:#786c70;--line:#e3d8cb;--paper:#fffdf8;--bg:#f6f0e6;--canvas:var(--bg);--red:#ac3547;--radius:8px;background:var(--bg);color:var(--ink)}
body{background:var(--bg)}button:disabled{cursor:not-allowed}a{color:var(--burgundy)}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:3px}input:focus,textarea:focus,select:focus{outline:2px solid #bc935b;outline-offset:2px;border-color:var(--burgundy)}
h1{font-size:36px;color:var(--burgundy-deep);letter-spacing:-.035em}.eyebrow{color:#8b6737;letter-spacing:.15em}.gold-rule{width:50px;height:2px;display:block;background:var(--gold-light);margin:20px 0}
/* Display the original emblem through a window; the supplied image is unmodified. */
.brand{padding:0;display:flex;gap:18px;align-items:center;color:var(--gold-light);min-width:0}.brand-emblem{display:block;position:relative;width:72px;height:40px;overflow:hidden;flex:none}.brand-emblem img{position:absolute;width:160px;height:160px;max-width:none;left:50%;top:-53px;transform:translateX(-50%)}.brand-copy{display:block;min-width:0}.brand-name{display:block;font-family:Georgia,'Times New Roman',serif;color:#f8e9be;font-size:23px;line-height:1.3;letter-spacing:-.02em}.brand-sub{display:flex;align-items:center;gap:11px;font-size:8px;letter-spacing:.26em;color:#dec599;margin-top:7px}.brand-sub i{width:26px;height:1px;background:#a37b4d}.brand-mark{color:var(--gold-light);border-color:var(--gold);border-radius:2px}
.shell{display:block;min-height:100vh}.firm-masthead{background:var(--burgundy);color:#f8efdf;border-top:3px solid var(--gold)}.masthead-inner{max-width:1640px;margin:auto;padding:23px 36px;min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:25px}.masthead-tools{display:flex;align-items:center;gap:20px;min-width:0}.workspace-seal{display:flex;gap:9px;align-items:center;color:#e6cfa4;font-size:8px;letter-spacing:.12em}.workspace-seal strong{font-size:10px;font-weight:400;letter-spacing:.01em;color:#f0dfe0}.account{display:flex;gap:10px;align-items:center;min-width:0;border:0;padding:0}.account-copy{max-width:225px}.account-name{font-size:12px;margin:0;color:#fff3e1;overflow-wrap:anywhere}.account-role{font-size:10px;margin:2px 0 0;color:#dfbfc7}.avatar{background:#f0e3d3;color:var(--burgundy)}.masthead-tools .avatar{background:#ffffff10;border:1px solid #c6a36880;color:#f5ddb2}.icon-button{color:var(--burgundy);border-radius:5px}.icon-button:hover{background:#efe3d6}.masthead-tools .icon-button{color:#f0dcb0}.masthead-tools .icon-button:hover{background:#ffffff16}.notification-dot{background:var(--gold-light);border-color:var(--burgundy)}
.navigation-deck{background:var(--paper);border-bottom:1px solid #ceb58b}.navigation-main{max-width:1640px;margin:auto;display:flex;justify-content:space-between;gap:22px;padding:11px 36px 0}.nav-section{min-width:0}.nav-section+.nav-section{border-left:1px solid var(--line);padding-left:20px}.nav-label{display:block;color:#8b755f;text-transform:uppercase;font-weight:650;font-size:8px;letter-spacing:.16em;margin:0 8px 6px}.nav-items{display:flex;gap:3px}.nav-button{border:0;border-bottom:3px solid transparent;border-radius:0;width:auto;background:transparent;color:#64535a;padding:10px 9px 13px;gap:7px;font-size:11px;white-space:nowrap}.nav-button svg{color:#957d66}.nav-button:hover{color:var(--burgundy);background:#f5eddf}.nav-button.active{color:var(--burgundy);background:#f5eade;border-bottom-color:var(--burgundy);font-weight:650}.nav-button.active:before{content:none}.nav-button.active svg{color:var(--burgundy)}.nav-count{margin-left:0;padding:0 5px;background:#e9d7b6;color:#654212;font-size:9px;border-radius:3px}
.workspace{min-width:0}.topbar{max-width:1640px;margin:auto;height:auto;min-height:51px;padding:12px 36px;display:flex;justify-content:space-between;gap:20px;align-items:center;background:transparent;border:0}.breadcrumb{gap:11px;font-size:10px;color:#8d7b75}.breadcrumb strong{color:#58454c;font-weight:500}.top-date{color:#7e6c68;font-size:10px}.top-date i,.workspace-footer i,.sample-ribbon i{margin:0 8px;font-style:normal;color:#b18b53}.sample-ribbon{background:#eee0c6;color:#705527;font-size:10px;padding:7px 36px}.sample-ribbon span:first-child{letter-spacing:.08em;font-size:9px}.sample-ribbon span:last-child{color:#756347}main.workspace-main{max-width:1640px;margin:auto;padding:28px 36px 48px}.workspace-footer{max-width:1640px;margin:auto;border-top:1px solid var(--line);padding:19px 36px 25px;display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#8a7770}
.page-heading{gap:22px;margin-bottom:24px;padding:3px 0 23px;border-bottom:1px solid #d6bc92;position:relative;isolation:isolate}.page-heading::after{content:'';position:absolute;width:300px;top:-12px;right:0;bottom:0;background:url('/assets/legal-study.png') center 65%/cover;opacity:.055;pointer-events:none;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000)}.page-heading p:last-child{font-size:13px;color:var(--muted)}
.button{border-radius:5px;min-height:39px;padding:11px 16px}.button.primary{color:#fff9ec;background:var(--burgundy);box-shadow:0 2px 2px #59051e12}.button.primary:hover{background:#7a1535}.button.gold{background:#e7c88f;border-color:#e7c88f;color:#4c1525}.button.gold:hover{background:#f0dba8}.button.secondary{background:#fffdf8;border-color:#cdbda8;color:#673747}.button.secondary:hover{background:#f3e9dc}.button.ghost{color:#715763;border-color:#d8cabb}.button.danger{background:#fbe8e8;color:#952e40}.button.hero-link{color:#f6e5c1;border-color:#dcb87766;background:#350b1c30}.button.hero-link:hover{background:#ffffff12}.button.small,.button.compact{padding:7px 10px;min-height:31px;font-size:11px}.text-button{color:#81394e}.card{background:var(--paper);border-color:var(--line);border-radius:8px;box-shadow:0 3px 12px #47263404}.card-head{padding:21px 24px 17px;border-bottom-color:#eadfcf}.card-head h2{font-family:Georgia,'Times New Roman',serif;font-size:21px;font-weight:400;color:var(--burgundy-deep)}.card-head p{color:var(--muted)}.card-head>svg{color:var(--gold)}.card-body{padding:22px 24px}
.pill{border-radius:4px;background:#f0ebe5;color:#726163}.pill.green,.pill.success,.pill.confirmed,.pill.completed,.pill.approved{background:#e7efe5;color:#3b6547}.pill.gold,.pill.warning,.pill.high,.pill.pending_approval,.pill.unverified,.pill.amber{background:#f6eacc;color:#79551c}.pill.red,.pill.danger,.pill.urgent,.pill.blocked{background:#f9e6e8;color:#a32d43}.pill.blue,.pill.info,.pill.in_progress{background:#e8edf4;color:#465d83}.pill.neutral,.pill.slate{background:#ede8e3;color:#706164}.pill.teal{background:#e5eee9;color:#3a655a}
.practice-hero{position:relative;overflow:hidden;border-radius:9px;background:var(--burgundy);color:#f0dec4;min-height:264px;padding:31px 37px;isolation:isolate}.practice-hero::before{content:'';position:absolute;inset:0;background:url('/assets/legal-architecture.png') right 55%/auto 140% no-repeat;opacity:.8;z-index:-2}.practice-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#59051e 0%,#59051ef2 32%,#59051e38 70%,#59051e05);z-index:-1}.hero-copy{max-width:620px}.practice-hero .eyebrow{color:#e5c79b;font-size:9px;letter-spacing:.13em}.practice-hero .eyebrow span{margin:0 9px}.practice-hero h1{font-size:47px;color:#fff4dc;margin:12px 0 0;letter-spacing:-.025em}.practice-hero .gold-rule{margin:17px 0;width:43px}.practice-hero p:not(.eyebrow){color:#ead3d6;line-height:1.7;font-size:12px;margin-bottom:19px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .button{font-size:11px;min-height:36px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:21px 0 28px;background:var(--paper);border:1px solid var(--line);border-bottom:2px solid #c3a06b;border-radius:5px;overflow:hidden}.stat-card{padding:20px 24px;border:0;border-radius:0;border-right:1px solid var(--line);box-shadow:none;display:block;text-align:left;background:transparent}.stat-card:last-child{border-right:0}.stat-card:hover{background:#f4eadd}.stat-top{font-size:11px;color:#735c62}.stat-top svg{color:var(--gold)}.stat-number{font-size:38px;color:var(--burgundy);margin:6px 0 3px}.stat-foot{font-size:10px;color:#897670}.stat-foot strong{color:#77582b;font-weight:500}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,1fr);gap:22px;align-items:start}.dashboard-grid>section:first-child{grid-column:1/-1}.dashboard-grid>section:nth-child(2){grid-column:2;grid-row:2}.dashboard-grid>section:nth-child(3){grid-column:1;grid-row:2}.dashboard-grid>section:nth-child(4){grid-column:1;grid-row:3}.practice-illustration{align-self:stretch;min-height:300px;padding:26px 29px 180px;background:var(--burgundy) url('/assets/legal-study.png') right bottom/100% auto no-repeat;color:#f1dfbd;border-radius:8px;position:relative}.practice-illustration .eyebrow{color:#d7b982}.practice-illustration h2{font-family:Georgia,serif;font-size:27px;font-weight:400;line-height:1.2;margin-bottom:12px;color:#f8e8c8}.practice-illustration>p:not(.eyebrow){font-size:11px;line-height:1.7;color:#e9cfd5;max-width:250px}.practice-illustration .button{font-size:10px;min-height:32px}
.data-table th{color:#8a6b4a;background:#f7f0e5;font-weight:650;letter-spacing:.09em;padding:12px 24px;border-bottom-color:#e7d7bd}.data-table td{padding:17px 24px;border-bottom-color:#ece2d5}.data-table tbody tr.clickable:hover{background:#fbf4e8}.table-scroll{max-width:100%}.row-title{color:#49313b}.row-subtitle{font-size:11px;color:#87746e}.matter-ref{letter-spacing:.05em;color:#966d32;margin-bottom:3px}.mini-stage i{width:16px;border-radius:1px;background:#e9dfd3}.mini-stage i.done{background:#bba685}.mini-stage i.current{background:var(--burgundy)}
.agenda-list{padding:2px 23px 9px}.agenda-row{padding:20px 0;border-bottom-color:#eadfce}.agenda-date{min-width:44px;border-right-color:#d5bd95;padding-right:14px}.agenda-date strong{font-size:27px;color:var(--burgundy)}.agenda-date span{font-size:9px;color:#947448;letter-spacing:.1em}.agenda-content p{color:#87726c}.agenda-meta{font-size:10px;color:#7d666b}.activity-list{padding:4px 24px}.activity-row{padding:16px 0;border-bottom-color:#eee3d5}.activity-icon{border-color:#ddc8a7;color:#966d32;background:#faf1df}.activity-row p{font-size:12px;line-height:1.6}.activity-row small{font-size:10px;color:#8a746d}.task-preview{padding:4px 24px}.task-preview-row{padding:18px 0;border-bottom-color:#ece2d5}.task-checkbox{border-color:#c5a97f;border-radius:2px}.task-preview-content small{color:#8a746d}.task-due{color:#855366}.dashboard-note{color:#8e7b73}.date-chip{border-color:#d4bd95;border-radius:3px;background:#fffdf5;color:#85683d}
.segmented{border-color:#dbcbb7;border-radius:5px;background:#ece3d7}.segmented button{padding:7px 13px;border-radius:3px;color:#7e6765}.segmented button.active{background:var(--paper);color:var(--burgundy)}.search-box{border-color:#d4c3ac;background:var(--paper);padding:9px 12px;border-radius:5px;color:#9a7d58}.search-box input{font-size:12px;min-width:0}.search-box:focus-within{outline:2px solid var(--gold);outline-offset:2px}.field{gap:7px}.field>label,.field-label{font-size:12px;color:#654650}.field input,.field select,.field textarea,select.control{border-color:#d4c3b3;border-radius:5px;min-height:42px;padding:10px 12px;background:#fffefb;color:var(--ink)}.field small{font-size:11px;color:#8b756c}.form-grid{gap:18px}.form-section{border-top-color:#e4d6c4;margin-top:24px;padding-top:22px}.form-section h3{font-size:14px;color:var(--burgundy)}.form-actions{border-top-color:#e4d6c4;gap:10px}.empty-state{color:#9e8361}.empty-state h3{color:#704853;font-size:15px}.empty-state p{font-size:12px;color:#8a736b}.error-notice{border-color:#e9bdc4;background:#fff0f0;color:#992f43;border-radius:5px}.info-notice{border-color:#ddc9a3;background:#fcf4e3;color:#7b5c2d;border-radius:5px;font-size:12px;line-height:1.7}.notice{background:#f5ead5;color:#7b5c2d}.check-label{color:#6b4a55}.check-label input{accent-color:var(--burgundy)}
dialog{border-color:#c4a471;border-radius:9px;max-width:660px;background:var(--paper);box-shadow:0 24px 90px #2e071d3d}dialog.wide{max-width:1010px}dialog::backdrop{background:#2b081959;backdrop-filter:blur(3px)}.modal-head{padding:23px 27px 20px;border-bottom-color:#cdb389;background:#fcf6ec}.modal-head h2{font-size:26px;color:var(--burgundy-deep)}.modal-head .eyebrow{font-size:8px}.modal-body{padding:25px 27px 27px}.comment-entry{border-color:#e1cfb7;border-left:2px solid var(--gold);background:#fffdf8;border-radius:4px;padding:15px}.comment-head{color:#8b746b}.comment-head strong{color:var(--burgundy);font-size:12px}.comment-replies{border-left-color:#d8bd92}.reply-label{background:#f5ebda}.notification-item{padding:16px;border-color:#ddc9ae;border-radius:5px}.notification-item small{color:#8c756c}.toast{background:var(--burgundy);color:#fff4dd;border-left:3px solid #d7b279;border-radius:5px;box-shadow:0 5px 25px #350b1c30}.toast.error{background:#9c3047}.skip-link{background:var(--paper)}
.boot-screen{background:var(--burgundy);color:var(--gold-light);gap:22px}.boot-screen .brand-emblem{margin:auto}.boot-screen p{color:var(--gold-light);font-family:Georgia,serif;font-size:18px}.login-layout{grid-template-columns:1.05fr 1fr;background:var(--burgundy)}.login-story{background:linear-gradient(180deg,#59051e44,#59051e30),url('/assets/legal-architecture.png') 65% bottom/auto 78% no-repeat;padding:42px 9%;color:#edcfca;min-height:100vh}.login-story:after{content:none}.login-story::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#59051e 0%,#59051ef5 26%,#59051e8c 70%,#350b1ce0);pointer-events:none}.login-story>*{position:relative}.login-story .brand{gap:14px}.login-story .brand-name{font-size:21px;line-height:1.3}.login-story-copy{padding:55px 0 90px}.login-story h1{color:#fff2d1;font-size:52px;line-height:1.15;max-width:400px}.login-story p{color:#ecd1d4;max-width:310px}.login-story .eyebrow{color:#e6c38d;font-size:9px}.login-story small{color:#e1b9c0}.login-story small span{color:var(--gold);margin:0 9px}.login-main{padding:60px 40px;background:var(--bg);border-left:1px solid #d2b47b;position:relative}.login-main::before{content:'';position:absolute;inset:24px;border:1px solid #e0cfb6;pointer-events:none}.login-form{max-width:360px;position:relative}.login-form h1{font-size:43px;margin-top:20px}.login-form>p{color:#856e69}.login-form>.eyebrow{color:#926c34;font-size:9px}.login-form .field{margin-bottom:20px}.login-form .button{padding:14px}.login-foot{border-top-color:#d5b98a}.login-local{color:#8b6d57;gap:7px}.filter-select{border-color:#d4c1a6;border-radius:5px;background:var(--paper);color:#74505b}
/* Small supporting text keeps sufficient contrast on ivory work surfaces. */
.nav-label{color:#795f4b}.stat-foot,.row-subtitle,.field small,.activity-row small,.task-preview-content small,.agenda-content p,.comment-head,.notification-item small,.login-form>p{color:#78666a}.workspace-footer,.breadcrumb,.top-date,.empty-state p,.dashboard-note{color:#796661}
@media(min-width:1700px){.masthead-inner,.navigation-main,.topbar,main.workspace-main,.workspace-footer{padding-left:48px;padding-right:48px}.practice-hero{min-height:300px;padding:40px 45px}}
@media(max-width:1250px){.workspace-seal{display:none}.masthead-tools{gap:15px}.navigation-main{gap:9px;padding-left:22px;padding-right:22px}.nav-section+.nav-section{padding-left:9px}.nav-button{font-size:10px;padding-left:7px;padding-right:7px;gap:6px}.nav-button svg{width:14px;height:14px}.masthead-inner,.topbar,main.workspace-main,.workspace-footer{padding-left:28px;padding-right:28px}.account-copy{max-width:200px}}
@media(max-width:1050px){.brand-name{font-size:20px}.account-copy{display:none}.masthead-tools{gap:12px}.navigation-main{flex-wrap:wrap;justify-content:flex-start;column-gap:20px;row-gap:6px}.nav-section+.nav-section{border:0;padding-left:0}.nav-button{font-size:11px;padding:9px 9px 11px}.dashboard-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,1fr)}.stat-card{padding:19px}.practice-hero::before{opacity:.55}.task-preview-row{flex-wrap:wrap}.task-preview-content{flex-basis:65%}.task-preview-row>.pill{margin-left:28px}}
@media(max-width:760px){.firm-masthead{position:sticky;top:0;z-index:20}.masthead-inner{padding:16px 19px;min-height:85px;gap:12px}.brand{gap:10px}.brand-name{font-size:17px;max-width:225px}.brand-sub{font-size:7px;letter-spacing:.18em;gap:7px;margin-top:5px}.brand-sub i{width:16px}.brand-emblem{width:55px;height:32px}.brand-emblem img{width:124px;height:124px;top:-41px}.masthead-tools{gap:5px}.masthead-tools>.button.gold,.masthead-tools .account-copy{display:none}.masthead-tools .account{gap:0}.masthead-tools .icon-button{width:31px;height:34px}.mobile-menu{display:inline-flex}.navigation-deck{display:none}.shell.menu-open .navigation-deck{display:block;position:fixed;top:85px;bottom:0;left:0;width:min(360px,100%);z-index:21;overflow-y:auto;overscroll-behavior:contain;box-shadow:15px 0 0 100vmax #350b1c66}.navigation-main{display:grid;padding:21px;gap:22px}.nav-items{display:grid;gap:3px}.nav-button{justify-content:flex-start;font-size:13px;padding:12px;border:0;border-left:3px solid transparent}.nav-button.active{border-left-color:var(--burgundy)}.nav-count{margin-left:auto}.nav-label{margin:0 12px 9px;font-size:9px}.topbar{position:static;padding:12px 20px;min-height:43px;height:auto}.top-date{display:none}.breadcrumb>span{display:inline}.sample-ribbon{padding:6px 20px}.sample-ribbon span:last-child{display:none}main.workspace-main{padding:23px 20px 35px}.workspace-footer{padding:18px 20px;flex-direction:column;gap:5px}.page-heading{align-items:flex-start;gap:15px;padding-bottom:20px}.page-heading .button{font-size:10px;padding:10px 12px}h1{font-size:30px}.page-heading p:last-child{font-size:12px}.practice-hero{padding:27px;min-height:270px}.practice-hero h1{font-size:38px}.practice-hero .eyebrow{max-width:260px;font-size:8px}.practice-hero::before{background-size:auto 110%;opacity:.32;background-position:70% bottom}.practice-hero::after{background:linear-gradient(90deg,#59051ef5,#59051e30)}.hero-actions{gap:8px}.hero-actions .button{font-size:10px;padding:10px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:17px 0 23px}.stat-card{padding:17px;border-bottom:1px solid var(--line)}.stat-card:nth-child(2){border-right:0}.stat-card:nth-child(n+3){border-bottom:0}.stat-top{font-size:10px}.stat-number{font-size:31px}.stat-foot{font-size:9px}.dashboard-grid{grid-template-columns:1fr;gap:18px}.dashboard-grid>section:nth-child(n),.dashboard-grid>aside{grid-column:auto;grid-row:auto}.card-head{padding:18px 20px}.card-body{padding:20px}.card-head h2{font-size:20px}.data-table{min-width:560px}.data-table th,.data-table td{padding-left:19px;padding-right:19px}.form-grid{grid-template-columns:1fr;gap:16px}.span-2{grid-column:auto}.modal-head,.modal-body{padding:20px}.modal-head h2{font-size:23px}.modal-head .eyebrow{font-size:7px}.toolbar .search-box{min-width:0;flex:1}.practice-illustration{min-height:310px;background-size:auto 85%;padding-bottom:130px}.login-layout{display:block}.login-story{min-height:170px;padding:29px;background-position:right;background-size:auto 160%}.login-story::before{background:linear-gradient(90deg,#59051e,#59051e75)}.login-story-copy,.login-story>small{display:none}.login-story .brand-name{font-size:23px}.login-story .brand-emblem{width:72px;height:40px}.login-story .brand-emblem img{width:160px;height:160px;top:-53px}.login-main{min-height:calc(100dvh - 170px);padding:47px 30px;border-left:0;border-top:1px solid #cfb17b}.login-main::before{inset:13px}.login-form h1{font-size:37px}}
@media(max-width:430px){.masthead-inner{padding-left:13px;padding-right:13px;gap:8px}.masthead-inner .brand-name{font-size:14px;max-width:124px}.masthead-inner .brand{gap:6px}.masthead-inner .brand-emblem{width:55px}.masthead-tools .icon-button{width:29px}.masthead-tools{gap:3px}.hero-copy h1{font-size:34px}.hero-actions .button{width:100%;justify-content:flex-start}main.workspace-main{padding-left:15px;padding-right:15px}.practice-hero{padding:25px}.page-heading{flex-wrap:wrap}.comment-head,.notification-item,.form-actions{flex-wrap:wrap}}
