/* ITAT Order — a bound casebook: off-white leaves, ledger margin rule, oxblood binding, pencil notes */
:root{
  --paper:#F7F3EA; --leaf:#FBF8F2; --paper-2:#EFE8DA; --ink:#211B17; --ink-2:#5C5249; --rule:#DCD1BE;
  --accent:#7B1E2A; --accent-2:#5E1520; --on-accent:#FBF3EA; --pencil:#2C4C80; --margin:#C98A8A;
  --ok:#2E6A3A; --warn:#8C6210; --bad:#8E2A2A; --wa:#1E7A4C;
  --f-display:"Cormorant Garamond","Iowan Old Style","Palatino Linotype",Georgia,serif;
  --f-body:"Crimson Pro","Iowan Old Style",Georgia,"Times New Roman",serif;
  --f-hand:"Caveat","Segoe Print","Bradley Hand",cursive;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --shadow:0 1px 0 var(--rule),0 18px 40px -28px rgba(60,40,20,.35);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root{
  --paper:#1A1612; --leaf:#211C17; --paper-2:#29221C; --ink:#EDE4D3; --ink-2:#B4A893; --rule:#3B3229;
  --accent:#C9727C; --accent-2:#5A1A24; --on-accent:#1A1612; --pencil:#9DB7E2; --margin:#6E3A3A;
  --ok:#7FBF8A; --warn:#E0B45A; --bad:#E58A8A; --shadow:0 1px 0 var(--rule),0 18px 40px -28px rgba(0,0,0,.7); color-scheme:dark}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--accent);text-underline-offset:3px}
h1,h2,h3{font-family:var(--f-display);font-weight:700;line-height:1.08;text-wrap:balance;margin:0;letter-spacing:-.005em}
h1{font-size:clamp(32px,4.4vw,50px)} h2{font-size:28px} h3{font-size:24px}
p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--pencil);outline-offset:2px;border-radius:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;z-index:30;background:var(--leaf);padding:8px 12px}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.label{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);display:block}
.hand{font-family:var(--f-hand);color:var(--pencil);font-weight:500;font-size:22px}
.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-size:.84em}
.muted{color:var(--ink-2)} .nowrap{white-space:nowrap}
.mt{margin-top:18px}.mt-s{margin-top:10px}.mt-l{margin-top:44px}
.grow{flex:1 1 200px;min-width:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Header */
.top{position:sticky;top:0;z-index:9;background:var(--leaf);border-bottom:1px solid var(--rule)}
.promo{background:var(--accent-2);color:#FBF3EA;font-size:15px}
.promo .wrap{display:flex;justify-content:center;gap:4px 12px;flex-wrap:wrap;padding-block:7px;text-align:center}
.promo a{color:#FFE2C4;font-weight:600}
.mast{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;padding-block:12px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.seal{width:44px;height:44px;flex:none;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:17px;letter-spacing:.04em;box-shadow:inset 0 0 0 3px var(--accent),inset 0 0 0 4px var(--on-accent)}
.brand b{font-family:var(--f-display);font-size:26px;line-height:1;display:block}
.brand small{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.mast-r{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.today{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);text-align:right}
.callbtn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--on-accent);text-decoration:none;padding:8px 14px;border-radius:3px;font-family:var(--f-mono);font-size:13px;letter-spacing:.04em}
.callbtn.wa{background:var(--wa);color:#fff}
nav.tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin-bottom:-1px}
nav.tabs a{font-family:var(--f-mono);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-2);text-decoration:none;padding:10px 12px 11px;border-bottom:2px solid transparent;white-space:nowrap}
nav.tabs a[aria-current="page"]{color:var(--accent);border-bottom-color:var(--accent)}
nav.tabs a:hover{color:var(--ink)}

main{padding-block:36px 64px}
.leaf{background:var(--leaf);border:1px solid var(--rule);box-shadow:var(--shadow);border-radius:2px;position:relative}
.ledger{background-image:linear-gradient(90deg,transparent 46px,var(--margin) 46px,var(--margin) 47px,transparent 47px);padding:30px 34px 30px 72px}
.narrow{max-width:760px;margin:0 auto}.narrow.small{max-width:480px}
.pad{padding:20px}
.section{display:grid;gap:22px}
.section>*,.stack>*,.order>*,.hero>*{min-width:0}
.stack{display:grid;gap:14px}
.h-page{font-size:clamp(36px,5vw,58px)}
.lede{font-size:20px;color:var(--ink-2);max-width:62ch;margin-top:12px}
.flash{background:color-mix(in srgb,var(--ok) 12%,var(--leaf));border:1px solid color-mix(in srgb,var(--ok) 40%,var(--rule));padding:10px 14px;margin-bottom:18px}
.error{background:color-mix(in srgb,var(--bad) 10%,var(--leaf));border:1px solid color-mix(in srgb,var(--bad) 40%,var(--rule));padding:10px 14px;margin:12px 0;color:var(--ink)}

/* Hero */
.hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:40px;align-items:start;margin-bottom:34px}
.hero h1{font-size:clamp(40px,6vw,70px);margin-top:12px}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero .lede{margin-top:16px}
.note{font-family:var(--f-hand);font-size:24px;color:var(--pencil);transform:rotate(-1.5deg);display:inline-block;margin-top:14px}
.feed{padding:22px 22px 18px 64px}
.feed h2{margin-bottom:4px}
.feed ol{list-style:none;margin:14px 0 0;padding:0}
.feed li{border-top:1px dashed var(--rule);padding-block:11px;display:grid;gap:2px}
.feed li a{color:var(--ink);text-decoration:none;font-weight:600;line-height:1.3}
.feed li a:hover{color:var(--accent)}
.feed .meta{font-family:var(--f-mono);font-size:11.5px;color:var(--ink-2)}

/* Register */
.reg-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
.reg-head h2{font-size:38px}
.filters{display:grid;grid-template-columns:minmax(0,2.2fr) repeat(3,minmax(0,1fr)) auto;gap:12px;padding:16px;background:var(--paper-2);border:1px solid var(--rule);border-bottom:0;align-items:end}
.filters+.leaf,.filters+p{margin-top:0}
.field{display:grid;gap:5px;min-width:0}
.field label{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
input[type=text],input:not([type]),input[type=search],input[type=email],input[type=tel],input[type=date],input[type=password],input[type=file],select,textarea{width:100%;background:var(--leaf);border:1px solid var(--rule);border-radius:3px;padding:9px 11px;font-size:16px;min-width:0}
textarea{resize:vertical;line-height:1.45}
.check{display:flex;gap:8px;align-items:center;font-size:16px}
.tablebox{overflow-x:auto;border:1px solid var(--rule);background:var(--leaf)}
table{border-collapse:collapse;width:100%;min-width:1060px}
thead th{background:var(--accent);color:var(--on-accent);font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;text-align:left;padding:11px 12px;white-space:nowrap}
thead th a{color:inherit;text-decoration:none}
tbody td{padding:12px;border-top:1px solid var(--rule);vertical-align:top;font-size:16px;line-height:1.4}
tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--paper-2) 45%,transparent)}
tbody tr:hover td{background:color-mix(in srgb,var(--accent) 7%,var(--leaf))}
td.assessee a{color:var(--ink);font-weight:600;text-decoration:none}
td.assessee a:hover{color:var(--accent);text-decoration:underline}
td.assessee .label{margin-top:3px}
td.held{max-width:230px} td.held div{margin-top:6px} td.hist{max-width:300px;color:var(--ink-2)}
tr.adrow td{background:color-mix(in srgb,var(--accent) 6%,var(--leaf))!important;text-align:center;color:var(--ink-2);font-size:15px;padding:10px}
tr.adrow .label{display:inline}
.pill{display:inline-block;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border:1px solid currentColor;border-radius:99px;white-space:nowrap}
.o-allowed{color:var(--ok)} .o-partly{color:var(--warn)} .o-dismissed{color:var(--bad)} .o-remanded{color:var(--pencil)}
.sample{font-family:var(--f-hand);font-size:17px;color:var(--pencil);white-space:nowrap}
.sample.big{font-size:21px;margin-bottom:8px}
.tfoot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border:1px solid var(--rule);border-top:0;background:var(--paper-2);font-size:14.5px;color:var(--ink-2)}
.empty{padding:44px 20px;text-align:center;display:grid;gap:10px;justify-items:center}
.empty h3{font-size:26px}.empty p{max-width:52ch;color:var(--ink-2)}
.pager{display:flex;gap:6px;flex-wrap:wrap;font-family:var(--f-mono);font-size:14px}
.pager a,.pager span{padding:6px 11px;border:1px solid var(--rule);background:var(--leaf);text-decoration:none;color:var(--ink)}
.pager [aria-current]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:3px;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;text-decoration:none;font-weight:600;font-size:16px;line-height:1.2}
.btn.ghost{background:transparent;color:var(--accent)}
.btn.sm{padding:5px 10px;font-size:14px;font-weight:500}
.btn.danger{border-color:var(--bad);color:var(--bad);background:transparent}
.btn.wabtn{background:var(--wa);border-color:var(--wa);color:#fff}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.row form{display:inline}

/* Ads & share */
.ad,.ad-live{border:1px dashed var(--rule);padding:16px;text-align:center;color:var(--ink-2);margin-block:6px}
.ad{background:repeating-linear-gradient(135deg,transparent 0 10px,color-mix(in srgb,var(--paper-2) 60%,transparent) 10px 11px)}
.ad .label,.ad-live .label{margin-bottom:4px}
.share{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.share a,.share button{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;padding:6px 10px;border:1px solid var(--rule);border-radius:3px;color:var(--ink);text-decoration:none;background:var(--leaf);cursor:pointer}
.share a:hover,.share button:hover,.share a[aria-current]{border-color:var(--accent);color:var(--accent)}
.wa-fab{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:15;background:var(--wa);color:#fff;text-decoration:none;border-radius:99px;padding:12px 18px;font-weight:600;font-size:16px;box-shadow:0 12px 30px -8px rgba(0,0,0,.5);display:flex;align-items:center;gap:8px}
.wa-fab span{font-family:var(--f-hand);font-size:21px;font-weight:700}

/* Bands & cards */
.band{background:var(--accent-2);color:#F6EBDD;margin-block:48px;border-radius:2px}
.band .in{padding:40px clamp(18px,4vw,48px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:36px}
.band h2{font-size:clamp(32px,4vw,46px);color:#FBF3EA}
.band p{color:#E8D6C6}.band .label{color:#E3CFBD}
.band .hand{color:#F2C9A8}
.svc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.svc div{border-top:1px solid rgba(246,235,221,.25);padding:14px 14px 14px 0}
.svc b{font-family:var(--f-display);font-size:22px;display:block;color:#FBF3EA}
.svc span{font-size:15.5px;color:#E3CFBD}
.band .btn{background:#FBF3EA;color:#5E1520;border-color:#FBF3EA}
.band .btn.ghost{background:transparent;color:#FBF3EA}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.card{padding:22px;display:grid;gap:10px;align-content:start}
.card p{color:var(--ink-2);font-size:16.5px}
a.card.plain{text-decoration:none;color:inherit}
.firm{border:1px dashed var(--accent);padding:18px;display:grid;gap:6px;align-content:start;background:var(--leaf)}
.firm h3{font-size:22px}
.msg{font-size:15.5px;color:var(--ink-2)}

/* Order page */
.crumbs{font-family:var(--f-mono);font-size:12px;color:var(--ink-2);margin-bottom:14px}
.crumbs a{color:var(--ink-2)}
.order{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}
.order h1{margin-top:8px}
dl.meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px;margin:22px 0;padding:16px 0;border-block:1px solid var(--rule)}
dl.meta dt{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
dl.meta dd{margin:2px 0 0;font-weight:600}
.prose{max-width:65ch;display:grid;gap:12px}
.prose h2{margin-top:10px}.prose h3{font-size:22px;margin-top:6px}
.prose ul{margin:0;padding-left:1.2em}
.held-box{border-left:3px solid var(--accent);padding:4px 0 4px 16px;font-size:20px}
.cite{font-size:14.5px;color:var(--ink-2);border-top:1px dashed var(--rule);padding-top:12px;margin-top:6px}
.copybox{margin-top:30px;padding-top:24px;border-top:2px solid var(--accent);display:grid;gap:12px}
.feebox{background:var(--paper-2);border:1px solid var(--rule);padding:10px 12px;font-size:16px}
ul.rel{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}
.copyline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.copyline code{font-family:var(--f-mono);font-size:15px;user-select:all}
.benches{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));border-top:1px solid var(--rule)}
.benches a{display:flex;justify-content:space-between;gap:8px;padding:12px 6px;border-bottom:1px solid var(--rule);color:var(--ink);text-decoration:none;font-size:19px}
.benches a:hover{color:var(--accent)}
.plan{padding:24px;display:grid;gap:12px;align-content:start}
.plan .price{font-family:var(--f-display);font-size:40px;font-weight:700}.plan .price small{font-size:18px}
.plan ul{margin:0;padding-left:1.1em;color:var(--ink-2);font-size:16.5px}
.plan.feature{border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent),var(--shadow)}
.rate{display:grid;grid-template-columns:minmax(0,1fr) auto;border-top:1px solid var(--rule);margin-top:10px}
.rate>*{padding:11px 0;border-bottom:1px solid var(--rule)}
.rate b{font-family:var(--f-display);font-size:21px}
.rate .num{text-align:right;font-size:15px;align-self:center;padding-left:12px}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form .full{grid-column:1/-1}

/* Admin */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--rule);background:var(--leaf)}
.stats>div{padding:16px 18px;border-right:1px solid var(--rule);display:grid;gap:4px}
.stats>div:last-child{border-right:0}
.stats b{font-family:var(--f-display);font-size:40px;line-height:1}
.stats small{font-size:14px;color:var(--ink-2)}
.alist{display:grid;max-height:520px;overflow:auto}
.alist.tall{max-height:none}
.aitem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 14px;border-bottom:1px solid var(--rule);align-items:start}
.aitem.done{opacity:.55}
.aitem small{display:block;color:var(--ink-2);font-family:var(--f-mono);font-size:11.5px}
pre.code{background:var(--paper-2);border:1px solid var(--rule);padding:12px;overflow-x:auto;font-family:var(--f-mono);font-size:12.5px;line-height:1.5;margin:0}

/* Footer */
footer{border-top:1px solid var(--rule);background:var(--leaf);padding-block:36px 90px;font-size:15.5px;color:var(--ink-2)}
.fgrid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:28px}
footer h4{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;color:var(--ink);font-weight:500}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
footer a{color:var(--ink-2)}
.disc{margin-top:26px;padding-top:16px;border-top:1px solid var(--rule);font-size:14px}

@media (max-width:900px){
  .hero,.order,.band .in{grid-template-columns:minmax(0,1fr)}
  .filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .filters .wide{grid-column:1/-1}
  .grid3{grid-template-columns:minmax(0,1fr)}
  .fgrid,.stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .today{display:none}
}
@media (max-width:560px){
  body{font-size:17px}
  .grid2,.svc,.form,.fgrid{grid-template-columns:minmax(0,1fr)}
  dl.meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .top{position:static}
  .mast{padding-block:10px}
  .ledger{background-image:none;padding:20px}
  .feed{padding:20px}
  .reg-head h2{font-size:32px}
  .wa-fab b{display:none}.wa-fab{padding:13px 15px}
  .aitem{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
