/* Understory Composer Portal */
.ust-portal{--copper:#8C6A3A;--cream:#F7F5EF;--card:#FAF8F4;--charcoal:#29292B;--ink:#1A1A1C;--beige:#D9CBAF;--forest:#3B4A3A;--good:#3B4A3A;--warn:#8a4b1f;max-width:1140px;margin:0 auto;font-family:Bitter,Georgia,serif;color:var(--charcoal);font-size:16px;line-height:1.6}
.ust-portal *,.ust-portal *::before,.ust-portal *::after{box-sizing:border-box}
.ust-portal h1,.ust-portal h2,.ust-portal h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;color:var(--ink);line-height:1.1;letter-spacing:0;text-transform:none;margin:0 0 12px}
.ust-portal h2{font-size:34px}
.ust-portal h3{font-size:24px}
.ust-portal p{margin:0 0 12px}
.ust-portal a{color:var(--copper)}
.ust-portal a:hover{color:var(--ink)}
.ust-p-muted{color:#5c5c5e}
.ust-p-small{font-size:14px}
.ust-p-hint{font-size:13px;color:#6b6b6d;margin:6px 0 0}
.ust-p-hint.is-over{color:var(--warn);font-weight:600}
.ust-p-eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);font-weight:600;margin:0 0 6px}
.ust-p-center{text-align:center}

/* Buttons */
.ust-p-btn{display:inline-block;background:var(--copper);color:var(--cream)!important;border:1px solid var(--copper);border-radius:2px;padding:12px 24px;font-family:Bitter,Georgia,serif;font-size:15px;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}
.ust-p-btn:hover{background:var(--ink);border-color:var(--ink);color:var(--cream)!important}
.ust-p-btn-ghost{background:transparent;color:var(--copper)!important}
.ust-p-btn-ghost:hover{background:var(--copper);border-color:var(--copper)}
.ust-p-btnrow{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}

/* Header */
.ust-p-head{display:flex;align-items:center;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--beige);margin-bottom:0}
.ust-p-who{flex:1;min-width:0}
.ust-p-name{font-size:clamp(32px,4vw,46px)!important;margin:0!important}
.ust-p-headlinks{display:flex;align-items:center;gap:16px;font-size:14px}
.ust-p-badge{background:var(--forest);color:var(--cream);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:2px}
.ust-p-avatar{width:72px;height:72px;border-radius:50%;overflow:hidden;background:var(--beige);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:"Cormorant Garamond",Georgia,serif;font-size:34px;color:var(--ink)}
.ust-p-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.ust-p-avatar-lg{width:112px;height:112px;font-size:52px}

/* Tabs */
.ust-p-tabs{display:flex;gap:4px;border-bottom:1px solid var(--beige);margin:0 0 32px;overflow-x:auto;scrollbar-width:none}
.ust-p-tabs::-webkit-scrollbar{display:none}
.ust-p-tabs a{padding:16px 18px 14px;text-decoration:none;color:#5c5c5e;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;font-size:15px}
.ust-p-tabs a:hover{color:var(--ink)}
.ust-p-tabs a.is-active{color:var(--ink);border-bottom-color:var(--copper);font-weight:600}

/* Stats */
.ust-p-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px}
.ust-p-stat{background:var(--card);border:1px solid var(--beige);padding:22px 22px 18px}
.ust-p-stat-lead{background:var(--forest);border-color:var(--forest)}
.ust-p-stat-lead .ust-p-stat-label,.ust-p-stat-lead .ust-p-stat-sub{color:var(--beige)}
.ust-p-stat-lead .ust-p-stat-num,.ust-p-stat-lead .ust-p-stat-num .amount{color:var(--cream)}
.ust-p-stat-label{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#6b6b6d;margin:0 0 8px!important}
.ust-p-stat-num{font-family:"Cormorant Garamond",Georgia,serif;font-size:40px;line-height:1;color:var(--ink);margin:0 0 8px!important;font-variant-numeric:lining-nums tabular-nums}
.ust-p-stat-sub{font-size:13px;color:#6b6b6d;margin:0!important}

/* Sections and tables */
.ust-p-section{margin-bottom:44px}
.ust-p-sectionhead{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.ust-p-sectionhead h2{margin:0}
.ust-p-tablewrap{overflow-x:auto}
.ust-p-table{width:100%;border-collapse:collapse;font-size:15px;background:var(--card);border:1px solid var(--beige)}
.ust-p-table th{text-align:left;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#6b6b6d;padding:14px 16px;border-bottom:1px solid var(--beige);background:var(--cream)}
.ust-p-table td{padding:14px 16px;border-bottom:1px solid #ece4d3;vertical-align:top}
.ust-p-table tr:last-child td{border-bottom:0}
.ust-p-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.ust-p-sku{display:block;font-size:12px;color:#7a7a7c;letter-spacing:.04em;margin-top:2px}
.ust-p-actions{text-align:right;white-space:nowrap}
.ust-p-actions a{margin-left:12px}
.ust-p-empty{background:var(--card);border:1px dashed var(--copper);color:var(--copper);font-style:italic;padding:24px;text-align:center}
.ust-p-pill{display:inline-block;font-size:12px;padding:3px 10px;border-radius:999px;background:#ece4d3;color:var(--charcoal);white-space:nowrap}
.ust-p-pill.is-good{background:#dfe5dc;color:var(--good)}
.ust-p-pill.is-warn{background:#f2e1cf;color:var(--warn)}
.ust-p-note{background:var(--cream);border-left:3px solid var(--copper);padding:18px 22px;font-size:15px}
.ust-p-alert{padding:12px 16px;border-radius:2px;font-size:15px}
.ust-p-alert.is-good{background:#dfe5dc;color:var(--good)}
.ust-p-alert.is-warn{background:#f2e1cf;color:var(--warn)}

/* Statement */
.ust-p-statement{background:#fff;border:1px solid var(--beige);padding:36px}
.ust-p-st-head{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-bottom:1px solid var(--beige);padding-bottom:20px;margin-bottom:24px}
.ust-p-st-head h2{font-size:42px;margin:0 0 4px}
.ust-p-st-meta{text-align:right;font-size:14px}
.ust-p-st-meta p{margin:0 0 2px}
.ust-p-st-total{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;background:var(--cream);padding:18px 22px;margin-bottom:28px}
.ust-p-st-total strong{font-family:"Cormorant Garamond",Georgia,serif;font-size:38px;font-weight:400;color:var(--ink)}
.ust-p-statement h3{margin-top:24px}

/* Submissions */
.ust-p-subs{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.ust-p-sub{background:var(--card);border:1px solid var(--beige);padding:24px}
.ust-p-subtop{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.ust-p-sub h3{margin:0 0 4px}
.ust-p-sub .ust-p-muted{font-size:14px;margin:0}
.ust-p-steps{list-style:none;display:flex;margin:20px 0 0;padding:0;counter-reset:s}
.ust-p-steps li{flex:1;position:relative;font-size:12px;color:#8a8a8c;padding-top:22px;text-align:center}
.ust-p-steps li::before{content:"";position:absolute;top:5px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;border:1px solid var(--beige);background:var(--card);z-index:1}
.ust-p-steps li::after{content:"";position:absolute;top:10px;left:-50%;width:100%;height:2px;background:var(--beige)}
.ust-p-steps li:first-child::after{display:none}
.ust-p-steps li.is-done{color:var(--ink)}
.ust-p-steps li.is-done::before{background:var(--copper);border-color:var(--copper)}
.ust-p-steps li.is-done::after{background:var(--copper)}
.ust-p-subnote{margin-top:18px;background:var(--cream);border-left:3px solid var(--copper);padding:14px 18px;font-size:15px}
.ust-p-subnote p{margin:4px 0 0}

/* Forms */
.ust-p-form{background:var(--card);border:1px solid var(--beige);padding:28px;max-width:760px}
.ust-p-form label{display:block;font-weight:600;font-size:14px;margin:20px 0 6px;color:var(--ink)}
.ust-p-form input[type=text],.ust-p-form input[type=url],.ust-p-form textarea{width:100%;padding:12px 14px;border:1px solid #cdbf9f;border-radius:2px;background:#fff;font-family:Bitter,Georgia,serif;font-size:15px;color:var(--charcoal)}
.ust-p-form input:focus,.ust-p-form textarea:focus{outline:2px solid var(--copper);outline-offset:1px;border-color:var(--copper)}
.ust-p-form input[type=file]{font-size:14px}
.ust-p-photo{display:flex;gap:20px;align-items:center}
.ust-p-photo label{margin-top:0}
.ust-p-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}

/* Login */
.ust-p-login{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:stretch}
.ust-p-card{background:var(--card);border:1px solid var(--beige);padding:36px}
.ust-p-aside{background:var(--forest);color:var(--beige);padding:36px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.ust-p-aside h3{color:var(--cream);font-size:30px}
.ust-p-aside .ust-p-btn-ghost{color:var(--cream)!important;border-color:var(--cream);margin-top:8px}
.ust-p-aside .ust-p-btn-ghost:hover{background:var(--cream);color:var(--forest)!important}
.ust-portal #loginform p{margin:0 0 16px}
.ust-portal #loginform label{display:block;font-weight:600;font-size:14px;margin-bottom:6px;color:var(--ink)}
.ust-portal #loginform input[type=text],.ust-portal #loginform input[type=password]{width:100%;padding:12px 14px;border:1px solid #cdbf9f;border-radius:2px;background:#fff;font-size:15px}
.ust-portal #loginform .login-remember label{font-weight:400;display:inline}
.ust-portal #loginform input[type=submit]{background:var(--copper);color:var(--cream);border:1px solid var(--copper);border-radius:2px;padding:12px 28px;font-family:Bitter,Georgia,serif;font-size:15px;cursor:pointer}
.ust-portal #loginform input[type=submit]:hover{background:var(--ink);border-color:var(--ink)}

@media (max-width:900px){
	.ust-p-stats{grid-template-columns:1fr 1fr}
	.ust-p-login{grid-template-columns:1fr}
}
@media (max-width:640px){
	.ust-p-head{flex-wrap:wrap;gap:14px}
	.ust-p-avatar{width:56px;height:56px;font-size:26px}
	.ust-p-headlinks{width:100%}
	.ust-p-stat-num{font-size:32px}
	.ust-p-two{grid-template-columns:1fr}
	.ust-p-form,.ust-p-card,.ust-p-aside,.ust-p-statement{padding:22px}
	.ust-p-st-meta{text-align:left}
	/* Stack table rows as cards */
	.ust-p-table thead{display:none}
	.ust-p-table,.ust-p-table tbody,.ust-p-table tr,.ust-p-table td{display:block;width:100%}
	.ust-p-table tr{border-bottom:1px solid var(--beige);padding:10px 0}
	.ust-p-table td{border:0;padding:4px 16px;display:flex;justify-content:space-between;gap:16px;text-align:right}
	.ust-p-table td::before{content:attr(data-label);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#7a7a7c;text-align:left}
	.ust-p-table td:not([data-label])::before{content:none}
	.ust-p-table td.num{text-align:right}
	.ust-p-actions a{margin:0 0 0 16px}
	.ust-p-steps li{font-size:10px}
}

@media print{
	#masthead,#colophon,.site-header,.site-footer,.ust-p-tabs,.ust-p-head,.ust-p-noprint,.ust-pagehero,.ust-cta,#wpadminbar{display:none!important}
	.ust-portal{max-width:none}
	.ust-p-statement{border:0;padding:0}
	body{background:#fff!important}
}
