/* COF2: a fantasy grimoire with two physical-looking leaves per spread. */
#sheetOverlay.cof2-open .sheet.modal{width:min(1200px,97vw);max-height:96vh;background:#34291d;border:2px solid #a88144;overflow:auto}
#sheetOverlay.cof2-open .sheet-top,#sheetOverlay.cof2-open .stat-grid,#sheetOverlay.cof2-open .health-controls{position:absolute!important;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
#sheetOverlay.cof2-open .sheet-body{padding:0}
#sheetOverlay.cof2-open .sheet-bottom{margin:0;padding:10px 22px;background:#332617;border-top:1px solid #795b32}
#sheetOverlay.cof2-open .sheet-config-button{z-index:4}
.cof2-sheet{font:13px Georgia,serif;color:#30251a}
.cof2-book-top{height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 60px 0 28px;background:linear-gradient(#493622,#2c2118);color:#ddc498;letter-spacing:.1em;font-size:10px}
.cof2-book-top strong{font:19px Cinzel,Georgia,serif;color:#f2e3c4;letter-spacing:0}
.cof2-spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:680px;background:#755534;padding:8px 12px 8px;box-shadow:inset 0 0 25px #0007}
.cof2-leaf{min-width:0;position:relative;background:linear-gradient(90deg,#e7d8b9,#f8f0db 7%,#f8f0df 93%,#d8c7a4);box-shadow:0 3px 12px #23160777}
.cof2-leaf:first-child{border-radius:4px 0 0 4px;border-right:7px solid #b6a07c}
.cof2-leaf:last-child{border-radius:0 4px 4px 0;border-left:7px solid #b6a07c}
.cof2-page{position:relative;min-height:680px;padding:28px 33px 36px;display:flex;flex-direction:column;gap:9px}
.cof2-page-header{border-bottom:2px solid #a98b55;padding-bottom:9px;display:flex;justify-content:space-between;align-items:baseline;gap:8px;color:#6e4f2b}
.cof2-page-header span{font:10px Cinzel,Georgia,serif;letter-spacing:.08em}
.cof2-page-header b{font:12px Cinzel,Georgia,serif}
.cof2-page h3{margin:6px 0 0;font:17px Cinzel,Georgia,serif;color:#65451e;border-bottom:1px solid #b7a179;padding-bottom:4px}
.cof2-page label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#6b512d;font-weight:bold}
.cof2-page input,.cof2-page select,.cof2-page textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #baab8f;border-radius:2px;background:#fff9e8;color:#2b2118;padding:6px 7px;font:13px Georgia,serif}
.cof2-page textarea{resize:vertical}
.cof2-page button,.cof2-book-nav button{border:1px solid #a98b55;background:#e7d4ab;color:#4e371b;padding:6px 9px;border-radius:2px;cursor:pointer}
.cof2-page button:hover,.cof2-book-nav button:hover:not(:disabled){background:#d2b784}
.cof2-page-number{position:absolute;bottom:14px;left:50%;color:#8e7957}
.cof2-photo{height:215px;max-width:240px;width:100%;margin:6px auto 0;border:5px double #a98b55;background:#e6d5ad;display:grid;place-items:center;overflow:hidden;font:70px Cinzel,serif}
.cof2-photo img{width:100%;height:100%;object-fit:cover}
.cof2-page [data-cof2-photo]{align-self:center}
.cof2-name-label{font:15px Cinzel,serif!important;text-align:center}
.cof2-name-label input{text-align:center;font:23px Cinzel,serif}
.cof2-two,.cof2-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.cof2-identity p{margin:0;font-size:10px;color:#8a714b;letter-spacing:.08em}
.cof2-identity strong{display:block;font:16px Cinzel,Georgia,serif;color:#3b2c1c;letter-spacing:0;margin-top:4px}
.cof2-attributes{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.cof2-attributes label{text-align:center;align-items:center}
.cof2-attributes input{text-align:center;padding:5px 0}
.cof2-attributes button{width:100%;padding:2px}
.cof2-stat-strip,.cof2-attack-grid,.cof2-resources,.cof2-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.cof2-stat-strip span{background:#735330;color:#fff5db;text-align:center;padding:6px}
.cof2-stat-strip b{font:17px Cinzel,serif;margin-left:4px}
.cof2-attack-grid button{font-size:11px}
.cof2-resources label{display:flex;flex-direction:row;align-items:center;gap:4px}
.cof2-resources input{width:45px;text-align:center}
.cof2-stats{grid-template-columns:repeat(4,1fr)}
.cof2-inventory{min-height:38px;max-height:95px;overflow:auto;border:1px solid #c4b392;background:#fff9e6}
.cof2-inventory>div{padding:4px 7px;display:flex;justify-content:space-between;border-bottom:1px solid #e0d5be}
.cof2-inventory button{border:0;background:transparent;padding:0 5px}
.cof2-import{display:flex;gap:6px}
.cof2-import select{flex:1}
.cof2-roll-controls,.cof2-rest{display:flex;align-items:center;gap:5px}
.cof2-roll-controls select{max-width:100px}.cof2-roll-controls input[type=number]{width:56px}
.cof2-roll-controls label,.cof2-rest label{display:flex;flex-direction:row;align-items:center;gap:3px}
.cof2-roll-controls input[type=checkbox],.cof2-rest input[type=checkbox]{width:auto}
.cof2-book-nav{height:48px;display:flex;justify-content:space-between;align-items:center;padding:0 22px;background:#493622}
.cof2-book-nav button{font:12px Georgia,serif}
.cof2-book-nav button:disabled{opacity:.35;cursor:default}
.cof2-page-paths{padding:26px 17px 36px}
.cof2-page-paths h3{text-align:center}
.cof2-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;flex:1;min-height:0}
.cof2-path-column{display:flex;flex-direction:column;min-width:0;border:1px solid #c4af82;background:#f4e8cd}
.cof2-path-title{height:74px;padding:8px;display:flex;flex-direction:column;justify-content:center;gap:7px;background:#695031;color:#fff2d2}
.cof2-path-title small{font-size:9px;letter-spacing:.13em}
.cof2-path-title strong{font-size:12px;line-height:1.2}
.cof2-path-title select{font-size:11px;padding:4px;min-width:0}
.cof2-rank{flex:1;min-height:80px;border:0!important;border-bottom:1px solid #cbb994!important;border-radius:0!important;background:transparent!important;color:#a8a197!important;text-align:left;padding:8px!important;display:flex;flex-direction:column;gap:8px}
.cof2-rank span{font:9px Cinzel,serif;letter-spacing:.1em}
.cof2-rank strong{font:12px Georgia,serif;line-height:1.25}
.cof2-rank.known{color:#17120d!important;background:#fff9e6!important}
.cof2-rank.unlearned{color:#aaa59b!important}
.cof2-rank:disabled{opacity:1;cursor:default}
#addOverlay.cof2-create .small-modal{width:min(1050px,98vw);padding:17px 18px;background:#3a2a1a;border:2px solid #a98348}
#addOverlay.cof2-create .small-modal>label:has(#newName){position:absolute!important;width:1px;height:1px;overflow:hidden;opacity:0}
#addOverlay.cof2-create .small-modal>h2{font-size:18px;margin:4px 0 3px;color:#e7d7b7}
#addOverlay.cof2-create .small-modal>.eyebrow{font-size:9px}
#addOverlay.cof2-create .small-modal>label:has(#newKind){max-width:230px;margin:3px 0 8px}
.cof2-creation{padding:0;max-height:74vh;overflow:auto}
.cof2-create-spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#a18559;padding:7px;gap:8px;box-shadow:inset 0 0 16px #201406}
.cof2-create-leaf{padding:18px 23px;min-width:0;background:linear-gradient(90deg,#e9ddc3,#fbf2dd 8%,#f8edda 94%,#d5c19b);color:#33251a;min-height:465px}
.cof2-create-leaf header{font:10px Cinzel,Georgia,serif;letter-spacing:.08em;color:#775629;border-bottom:2px solid #ad8f5d;padding-bottom:8px}
.cof2-create-leaf h3{font:18px Cinzel,Georgia,serif;color:#674820;margin:14px 0 12px}
.cof2-create-leaf .cof2-builder-grid{gap:0 10px}
.cof2-create-leaf .cof2-builder-grid:first-of-type{grid-template-columns:1fr 1fr}
.cof2-create-leaf p{color:#806c50;font-size:11px}
.cof2-creation label{display:block;margin:8px 0;color:#674d2c;font-size:11px;font-weight:bold}
.cof2-creation input,.cof2-creation select{display:block;width:100%;margin-top:4px;padding:7px;background:#fff8e8;border:1px solid #b8a47e;color:#33251a;border-radius:2px}
.cof2-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.cof2-builder-attrs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
@media(max-width:850px){.cof2-spread{grid-template-columns:1fr}.cof2-leaf:first-child{display:none}.cof2-leaf:last-child{border-left:0}.cof2-page{min-height:650px}.cof2-book-top{padding:0 42px 0 14px}.cof2-path-grid{gap:4px}.cof2-page-paths{padding:18px 8px 32px}.cof2-rank{padding:5px!important}.cof2-create-spread{grid-template-columns:1fr}.cof2-create-leaf{min-height:0}}

/* Match the same open-volume mockup used by journal and compendium readers. */
#sheetOverlay.cof2-open .sheet.modal,#addOverlay.cof2-create .small-modal{
  position:relative;width:min(1500px,96vw,138vh);height:auto;aspect-ratio:3/2;max-height:92vh;
  padding:0;border:0;border-radius:0;overflow:hidden;
  background:url('assets/compendium-open-grimoire.webp') center/100% 100% no-repeat;
  box-shadow:0 30px 90px #000c;
}
#sheetOverlay.cof2-open .sheet-body,#sheetOverlay.cof2-open #cof2Sheet{position:relative;width:100%;height:100%;padding:0}
#sheetOverlay.cof2-open .close,#addOverlay.cof2-create .close{top:1.1%;right:1.4%;display:grid;place-items:center;width:36px;height:36px;border:1px solid #b89861;border-radius:50%;background:#3e281be8;color:#edd4a4;z-index:12}
#sheetOverlay.cof2-open .sheet-bottom{position:absolute;bottom:3.9%;left:12%;right:12%;z-index:6;margin:0;padding:0;border:0;background:none;pointer-events:none}
#sheetOverlay.cof2-open .sheet-bottom>*{pointer-events:auto}
#sheetOverlay.cof2-open .sheet-bottom .gold-button{height:30px;font-size:10px}
#sheetOverlay.cof2-open .sheet-bottom .sheet-save-status{color:#ebd2a8;text-shadow:0 1px 2px #000;pointer-events:none}
@media(max-width:850px){
  #sheetOverlay.cof2-open .sheet-bottom .sheet-save-status[data-state="saved"]{visibility:hidden}
  #sheetOverlay.cof2-open .sheet-bottom .sheet-save-status:not([data-state="saved"]){position:absolute;right:0;bottom:34px;padding:3px 6px;background:#3d2619e8;border-radius:3px}
}
#sheetOverlay.cof2-open .sheet-place-token{position:absolute;bottom:4%;right:13%;z-index:7;width:auto;height:30px;background:#62462c;color:#f5e5c8}
#sheetOverlay.cof2-open .sheet-place-token{right:auto;left:24%;width:76px;padding:0;font-size:0}
#sheetOverlay.cof2-open .sheet-place-token:after{content:'+ Token';font-size:10px}
.cof2-book-top{position:absolute;z-index:5;top:1.1%;left:13%;right:13%;height:auto;display:flex;justify-content:center;gap:15px;padding:0;background:none;color:#e9cf9d;font:12px Cinzel,Georgia,serif;text-shadow:0 2px 5px #0d0907}
.cof2-book-top strong{font:17px Cinzel,Georgia,serif;color:#f3dbad}
.cof2-book-top span:last-child{display:none}
.cof2-spread{position:absolute;top:12.7%;bottom:15.5%;left:9.5%;right:10.3%;min-height:0;display:block;padding:0;background:none;box-shadow:none}
.cof2-leaf{position:absolute;top:0;width:45.5%;height:100%;overflow:auto;background:none;border:0!important;border-radius:0!important;box-shadow:none;scrollbar-color:#ac895e transparent}
.cof2-leaf:first-child{left:0}.cof2-leaf:last-child{right:0}
.cof2-page{min-height:100%;padding:1% 1.5% 4% 0;background:none}
.cof2-photo{height:clamp(115px,20vh,195px)}
.cof2-page-header{font-size:9px}
.cof2-page-number{bottom:0}
.cof2-book-nav{position:absolute;z-index:5;right:39%;bottom:4.2%;left:39%;height:36px;justify-content:center;gap:13px;padding:0;background:none}
.cof2-book-nav button{width:29px;height:29px;overflow:hidden;white-space:nowrap;text-indent:-999px;border:1px solid #c09c65;border-radius:50%;background:#3d2619dc;color:#f0d7aa}
.cof2-book-nav button:before{content:'‹';display:block;text-indent:0;font-size:25px;line-height:12px}
.cof2-book-nav button[data-cof2-next]:before{content:'›'}
#addOverlay.cof2-create .small-modal>.eyebrow{display:none}
#addOverlay.cof2-create .small-modal>h2{position:absolute;z-index:5;top:1.1%;left:13%;width:74%;margin:0;color:#e9cf9d;text-align:center;font:17px Cinzel,Georgia,serif;letter-spacing:.12em;text-shadow:0 2px 5px #0d0907}
#addOverlay.cof2-create .small-modal>label:has(#newKind){position:absolute;z-index:6;top:10%;left:10%;width:25%;margin:0;color:#684b2a}
#addOverlay.cof2-create .small-modal>label:has(#newKind){top:1.2%;left:12%;width:160px;color:#ead8ae;font-size:9px}
#addOverlay.cof2-create .small-modal>label:has(#newKind) select{height:25px;margin:0;padding:2px 5px;font-size:10px}
#addOverlay.cof2-create .cof2-builder-attrs select{appearance:none;text-align:center;padding:4px 1px;font-size:11px}
#addOverlay.cof2-create .small-modal>label:has(#newKind) select{background:#f3e5c7;color:#3a2818;border-color:#ae9166}
#addOverlay.cof2-create #cof2Creation{position:absolute;top:12.7%;bottom:15.5%;left:9.5%;right:10.3%;width:auto;max-height:none;overflow:visible}
#addOverlay.cof2-create .cof2-create-spread{display:block;position:relative;width:100%;height:100%;padding:0;background:none;box-shadow:none}
#addOverlay.cof2-create .cof2-create-leaf{position:absolute;top:0;width:45.5%;height:100%;min-height:0;padding:1% 1.5% 2% 0;overflow:auto;background:none}
#addOverlay.cof2-create .cof2-create-leaf:first-child{left:0}
#addOverlay.cof2-create .cof2-create-leaf:last-child{right:0}
#addOverlay.cof2-create #createCharacter{position:absolute;z-index:7;right:12%;bottom:4%;width:auto;height:31px;margin:0;background:#755436;color:#f5e5c8;border-color:#b49362}
@media(max-width:650px){
  #sheetOverlay.cof2-open .sheet.modal,#addOverlay.cof2-create .small-modal{width:100%;height:94vh;max-height:none;aspect-ratio:auto;background-size:auto 100%}
  .cof2-spread,#addOverlay.cof2-create #cof2Creation{left:12%;right:12%}
  .cof2-leaf:first-child,#addOverlay.cof2-create .cof2-create-leaf:first-child{display:none}
  .cof2-leaf:last-child,#addOverlay.cof2-create .cof2-create-leaf:last-child{left:0;right:auto;width:100%}
}
@media(min-width:651px){.cof2-leaf:first-child{display:block}}
/* Ink on parchment: inputs reveal a line on focus without an opaque box. */
.cof2-page input:not([type=checkbox]),.cof2-page select,.cof2-page textarea,
.cof2-create-leaf input,.cof2-create-leaf select,.cof2-create-leaf textarea{
  background:transparent!important;border:0!important;border-bottom:1px solid #a98f66!important;
  border-radius:0!important;box-shadow:none!important;color:#2c2118!important;
}
.cof2-page input:focus,.cof2-page select:focus,.cof2-page textarea:focus,
.cof2-create-leaf input:focus,.cof2-create-leaf select:focus,.cof2-create-leaf textarea:focus{
  outline:1px solid #9a7441!important;outline-offset:1px;background:#f8edda8c!important;
}
.cof2-page select option,.cof2-create-leaf select option{background:#f2e1bf;color:#2c2118}
.cof2-level{display:flex;align-items:center;gap:5px;flex-wrap:wrap;color:#6b512d}
.cof2-level>span{width:100%;font-size:10px;letter-spacing:.06em}
.cof2-level>strong{font:20px Cinzel,Georgia,serif;color:#2c2118;margin-right:3px}
.cof2-level button{width:25px;height:25px;padding:0;display:grid;place-items:center;font:18px Georgia,serif}
.cof2-level small{width:100%;font-size:10px;color:#765734}
.cof2-page-paths h3 small{font:10px Georgia,serif;letter-spacing:0;color:#745934;white-space:nowrap}
.cof2-rank{position:relative;cursor:pointer;padding-right:27px!important}
.cof2-rank:hover{background:#fff9e0!important}
.cof2-rank .cof2-learn,.cof2-rank .cof2-unlearn{position:absolute;right:4px;top:6px;width:22px;height:22px;padding:0;border:1px solid #a98b55!important;border-radius:50%!important;background:#f0dfb8!important;color:#3e2c18!important;display:grid;place-items:center;font-size:13px;line-height:1;z-index:1}
.cof2-rank .cof2-learn:hover,.cof2-rank .cof2-unlearn:hover{background:#d9bd87!important}
#cof2RankOverlay{z-index:50}
.cof2-rank-modal{width:min(610px,92vw);max-height:86vh;overflow:auto;padding:34px 42px 30px;background:radial-gradient(circle at 35% 20%,#fff6e1,#e7d2ac);color:#34251a;border:2px solid #9b7441;box-shadow:0 25px 80px #000b}
.cof2-rank-modal:before{content:"";position:absolute;inset:12px;border:1px solid #b89d6e;pointer-events:none}
.cof2-rank-modal>small{font:10px Cinzel,serif;letter-spacing:.12em;color:#7b5730}
.cof2-rank-modal h2{font:24px Cinzel,Georgia,serif;color:#4a321e;margin:16px 0 4px}
.cof2-detail-rank{font:11px Cinzel,serif;color:#8c6337;letter-spacing:.12em;margin:18px 0 6px}
.cof2-rank-modal h3{font:20px Georgia,serif;margin:0 0 17px;color:#332419}
.cof2-rank-modal p{font:15px/1.65 Georgia,serif;white-space:pre-wrap;margin:0 0 22px}
.cof2-rank-modal footer{border-top:1px solid #bc9b6c;padding-top:10px;font:11px Georgia,serif;color:#7e6646}
#addOverlay.cof2-create .small-modal>label:has(#newKind) select{background:transparent;border:0;border-bottom:1px solid #b89861;color:#f6e6c5}
/* Compact character heading on the first leaf. */
.cof2-hero-head{display:grid;grid-template-columns:39% minmax(0,1fr);gap:13px;align-items:start;margin-top:7px}
.cof2-hero-head .cof2-photo{width:100%;height:clamp(145px,25vh,230px);max-width:none;margin:0;border-width:3px}
.cof2-hero-summary{min-width:0;display:flex;flex-direction:column;gap:9px}
.cof2-hero-summary [data-cof2-photo]{align-self:start;font:10px Georgia,serif;padding:3px 5px;background:transparent;border:0;border-bottom:1px solid #a98b55}
.cof2-hero-summary .cof2-name-label{text-align:left;font-size:10px!important}
.cof2-hero-summary .cof2-name-label input{text-align:left;font-size:19px;padding:2px 0}
.cof2-identity{gap:7px 10px}
.cof2-identity strong{font-size:12px;margin-top:2px;line-height:1.25}
.cof2-level{display:block}
.cof2-level>span{display:block;font-size:10px}
.cof2-level .cof2-level-trigger{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:auto;height:auto;min-width:0;padding:0;border:0;background:transparent;box-shadow:none;color:#6b512d;text-align:left;cursor:pointer}
.cof2-level-trigger>span{font:10px Georgia,serif;letter-spacing:.06em}
.cof2-level-trigger>strong{font:700 22px/1 Cinzel,Georgia,serif;color:#2c2118}
.cof2-level-trigger:hover>strong,.cof2-level-trigger:focus-visible>strong{color:#925b28}
.cof2-level small{display:block;font-size:9px;white-space:nowrap}
.cof2-page-identity>label{margin-top:4px}
.cof2-page-identity textarea{min-height:80px}
/* Foundry inspired inventory groups, with one row per compendium object. */
.cof2-inventory{min-height:90px;max-height:230px;overflow:auto;border:0;background:transparent}
.cof2-item-group{margin:0 0 6px}
.cof2-item-group h4{margin:0;padding:4px 7px;background:#705034;color:#f5e5c7;font:11px Cinzel,Georgia,serif}
.cof2-item-row{display:flex;justify-content:space-between;align-items:center;min-height:29px;padding:2px 3px;border-bottom:1px solid #c8b48b;gap:3px}
.cof2-item-row .cof2-item-name{flex:1;text-align:left;min-width:0;padding:2px 4px;border:0;background:transparent;font:11px Georgia,serif}
.cof2-item-name small{color:#806643;font-size:9px;white-space:nowrap}
.cof2-item-actions{display:flex;align-items:center;gap:2px}
.cof2-item-actions button{padding:0;width:19px;height:20px;border:0;background:transparent;font-size:13px}
.cof2-item-actions button.active{color:#246b34;font-weight:bold}
.cof2-item-actions input[type=number]{width:27px;min-width:27px;padding:1px;text-align:center;font-size:10px}
.cof2-item-actions input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}
.cof2-encumbrance{display:flex;justify-content:space-between;gap:8px;padding:5px 3px;border-bottom:1px solid #b7a179;font:11px Georgia,serif;color:#513c27}
.cof2-encumbrance.overloaded{color:#9b2e27;font-weight:bold}
.cof2-item-load{white-space:nowrap;color:#806643;font:10px Georgia,serif}
.cof2-import{margin-top:4px}
.cof2-import select{min-width:0;font-size:11px}
.cof2-import button{font-size:10px;padding:3px 6px}
.cof2-resources{gap:3px}
.cof2-page-combat .cof2-resources{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 7px}
.cof2-resource{display:flex;align-items:center;gap:2px;font:11px Georgia,serif;white-space:nowrap}
.cof2-resource>span:first-child{font-weight:bold}
.cof2-resource input[type=number]{width:24px;min-width:24px;padding:2px 0;text-align:center}
.cof2-resource button{width:14px;height:14px;min-width:14px;padding:0;border:1px solid #b89b6e;border-radius:50%;background:transparent;font:10px/10px Georgia,serif;opacity:.65}
.cof2-resource button:hover{opacity:1}
.cof2-resource button[data-cof2-reset]{margin-left:1px}
.cof2-page-combat{gap:7px}
.cof2-page-combat h3{margin-top:3px}
.cof2-page-identity{padding-left:3%;padding-right:1.5%}
.cof2-weapon-actions{display:flex;flex-wrap:wrap;gap:3px}
.cof2-weapon-actions button{padding:3px 6px;background:transparent;font-size:10px;max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.cof2-hero-head{grid-template-columns:35% minmax(0,1fr);gap:7px}.cof2-identity strong{font-size:10px}.cof2-level small{white-space:normal}}
.cof2-photo{position:relative}
.cof2-photo [data-cof2-photo]{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:28px;height:28px;padding:3px;border:1px solid #a98b55;border-radius:50%;background:#f5e9ceeb;color:#51391f}
.cof2-photo [data-cof2-photo] svg{width:16px;height:16px}
.cof2-identity strong{font-weight:700}
.cof2-stat-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}
.cof2-stat-strip>.cof2-stat{position:relative;display:flex;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:38px;padding:3px;background:#735330;color:#fff5db;text-align:center}
.cof2-stat-strip .cof2-stat span{display:flex;align-items:center;justify-content:center;gap:2px;padding:0;background:transparent;color:inherit}
.cof2-stat svg{flex:none;width:17px;height:17px}
.cof2-stat b,.cof2-stat-strip .cof2-stat b{font:700 14px Cinzel,Georgia,serif;margin:0}
.cof2-stat small{font:9px Georgia,serif;white-space:nowrap}
.cof2-stat>span:first-child:not(.cof2-stat-top){font:700 9px Cinzel,Georgia,serif}
.cof2-stat-points{flex-direction:column;padding-bottom:14px!important}
.cof2-stat-top{width:100%;white-space:nowrap}
.cof2-stat-points input[type=number]{width:21px;min-width:18px;padding:0!important;border:0!important;border-bottom:1px solid #dbc49f!important;background:transparent!important;color:#fff5db!important;text-align:center;font:700 12px Cinzel,Georgia,serif}
.cof2-stat-points input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}
.cof2-stat-adjust{position:absolute;bottom:1px;left:0;right:0;display:flex!important;justify-content:center;gap:2px}
.cof2-stat-adjust button{width:12px;height:12px;padding:0;border:1px solid #d8bc89;border-radius:50%;background:transparent;color:#fff5db;font:9px/9px Georgia,serif}
.cof2-stat-adjust button:hover{background:#9b7441}
.cof2-attack-grid button{display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 2px}
.cof2-attack-grid svg{width:18px;height:18px;flex:none}
.cof2-attack-grid b{font:700 12px Cinzel,Georgia,serif}
.cof2-page-combat .cof2-resources{display:block}
.cof2-item-actions button[data-cof2-equip]{position:relative;width:24px;height:23px;display:grid;place-items:center}
.cof2-item-actions button[data-cof2-equip] svg{width:18px;height:18px}
.cof2-item-actions button[data-cof2-equip] sup{position:absolute;right:-2px;top:-3px;font:700 9px Georgia,serif}
@media(max-width:900px){.cof2-stat-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
#tokenImageOverlay.cof2-portrait-only .character-image-field:has(#tokenImageLabel){display:none}
#tokenImageOverlay.cof2-portrait-only .token-image-modal{max-width:500px}
.cof2-book-nav button{font-size:0!important;line-height:0!important;text-indent:0!important;color:transparent!important}
.cof2-book-nav button:before{color:#f0d7aa;font-size:25px;line-height:12px}
#sheetOverlay.cof2-open .cof2-path-title select{font:700 12px Georgia,serif!important;color:#fff7e8!important;border:0!important;border-bottom:1px solid #d4b884!important;padding:2px 14px 3px 0!important;background:transparent!important}
#sheetOverlay.cof2-open .cof2-path-title select option{color:#2c2118;background:#f2e1bf}
#sheetOverlay.cof2-open .cof2-path-title select{width:100%;font-size:10px!important;white-space:nowrap;text-overflow:clip;appearance:none;-webkit-appearance:none;padding-right:0!important;cursor:pointer}
#sheetOverlay.cof2-open .cof2-path-title select:disabled{opacity:1;cursor:default}
@media(max-width:900px){.cof2-path-title{padding:5px 4px}#sheetOverlay.cof2-open .cof2-path-title select{font-size:7px!important}}
.cof2-inventory-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #b7a179}
.cof2-inventory-head h3{flex:1;border:0;margin:3px 0 0}
.cof2-inventory-head button{display:grid;place-items:center;flex:none;width:28px;height:28px;padding:2px;background:transparent;border:0}
.cof2-inventory-head svg{width:20px;height:20px}
#sheetOverlay.cof2-open #removeCharacter,#sheetOverlay.cof2-open #addTokenBtn{display:none!important}
#cof2InventoryOverlay{z-index:55}
.cof2-add-modal{width:min(680px,92vw);max-height:85vh;overflow:auto;padding:24px 28px;background:radial-gradient(circle at 35% 20%,#fff6e1,#e5d0aa);color:#35261b;border:2px solid #9b7441}
.cof2-add-modal h2{font:21px Cinzel,Georgia,serif;margin:0 0 15px;color:#51381d}
.cof2-add-tabs{display:flex;gap:8px;margin-bottom:14px}
.cof2-add-tabs button,.cof2-add-modal button[type=submit]{border:1px solid #9b7441;background:#ead8b4;color:#432d19;padding:6px 10px;cursor:pointer}
.cof2-add-tabs button.active{background:#65482b;color:#fff4db}
.cof2-add-filters{display:grid;grid-template-columns:1fr 180px;gap:8px;margin-bottom:8px}
.cof2-add-modal input,.cof2-add-modal select,.cof2-add-modal textarea{box-sizing:border-box;width:100%;padding:7px;border:1px solid #b5996b;background:#fff8e8;color:#2c2118;font:13px Georgia,serif}
.cof2-add-results{max-height:320px;overflow:auto;border:1px solid #d0b98d}
.cof2-add-results button{display:flex;justify-content:space-between;gap:8px;width:100%;padding:8px 10px;border:0;border-bottom:1px solid #d0b98d;background:transparent;color:#2c2118;text-align:left;cursor:pointer}
.cof2-add-results button:hover{background:#e9d7b4}
.cof2-add-results small{color:#765734}
.cof2-add-manual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cof2-add-manual label{display:flex;flex-direction:column;gap:4px;font:11px Georgia,serif;color:#684822}
.cof2-add-manual label.wide,.cof2-add-manual button{grid-column:1/-1}
.cof2-add-manual label:has(input[type=checkbox]){flex-direction:row;align-items:center}
.cof2-add-manual input[type=checkbox]{width:auto}
@media(max-width:560px){.cof2-add-filters,.cof2-add-manual{grid-template-columns:1fr}}
.cof2-stat-strip{grid-template-columns:repeat(5,minmax(0,1fr))}
.cof2-stat-strip>.cof2-stat-button{border:0;border-radius:0;background:#735330;color:#fff5db;padding:3px;cursor:pointer}
.cof2-stat-strip>.cof2-stat-button:hover{background:#8b6740}
.cof2-stat-strip>.cof2-stat-button:focus-visible{outline:2px solid #bd935b;outline-offset:1px}
.cof2-resource-button{align-self:start;border:0;background:transparent;color:#5b4024;font:700 12px Georgia,serif;padding:3px;cursor:pointer}
.cof2-resource-button:hover{text-decoration:underline}
#cof2ResourceOverlay{z-index:56}
.cof2-resource-modal{width:min(350px,90vw);padding:26px 30px;background:radial-gradient(circle at 35% 20%,#fff6e1,#e5d0aa);color:#35261b;border:2px solid #9b7441;text-align:center}
.cof2-resource-modal h2{font:19px Cinzel,Georgia,serif;margin:2px 0 20px}
.cof2-resource-editor{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:18px}
.cof2-resource-editor input{width:58px;padding:6px;border:1px solid #ad8c60;background:#fff9e8;text-align:center;font:700 18px Cinzel,Georgia,serif}
.cof2-resource-editor span{font:16px Cinzel,Georgia,serif}
.cof2-resource-editor button{width:28px;height:28px;border:1px solid #aa895b;border-radius:50%;background:#e9d5ab;color:#52391e;cursor:pointer}
.cof2-resource-modal [data-cof2-resource-full]{border:1px solid #aa895b;background:#ead5ac;color:#52391e;padding:6px 12px;cursor:pointer}
#addOverlay.cof2-create #newKind option{color:#2c2118!important;background:#f3e5c7!important}
.cof2-level .cof2-first-dr{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:auto;height:auto;max-width:100%;margin:8px 0 0;padding:0;border:0!important;background:transparent!important;box-shadow:none!important;color:#583d20;text-align:left;font:12px Georgia,serif;cursor:pointer}
.cof2-first-dr .cof2-dr-label{font-size:9px;font-weight:400;line-height:1.2;letter-spacing:0;text-transform:uppercase;white-space:normal;overflow-wrap:break-word}
.cof2-first-dr .cof2-dr-value{font-size:13px;font-weight:400;white-space:nowrap}
.cof2-first-dr .cof2-dr-value b{font-size:15px}.cof2-first-dr .cof2-dr-value span{margin-left:4px;font-weight:bold}
.cof2-first-dr:hover{color:#925b28}
.cof2-page-identity .cof2-rest{margin-top:6px;justify-content:flex-start}
.cof2-rest button{display:grid;place-items:center;width:34px;height:34px;padding:4px;border:1px solid #a58b5e;border-radius:50%;background:#ead8b3;color:#684321;cursor:pointer}
.cof2-rest button:hover{background:#d8ba82}.cof2-rest button:disabled{opacity:.4;cursor:not-allowed}
.cof2-rest svg{width:21px;height:21px}
.cof2-wallet{margin-top:10px;border-top:1px solid #bda77f;padding-top:6px}
.cof2-wallet h3{margin:0 0 3px}.cof2-wallet>button{display:flex;gap:14px;width:100%;border:0;background:transparent;color:#4c3823;text-align:left;cursor:pointer;font:12px Georgia,serif}
.cof2-wallet>button:hover{color:#965a29}.cof2-wallet-modal{box-sizing:border-box;width:min(440px,calc(100vw - 32px));padding:26px;text-align:left}.cof2-wallet-modal h2{text-align:center;margin-bottom:15px}.cof2-wallet-balance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.cof2-wallet-balance>div{display:grid;gap:2px;padding:10px 6px;background:#e8d4ad;border:1px solid #bd9d6b;text-align:center}.cof2-wallet-balance small{color:#765837;font:11px Georgia,serif}.cof2-wallet-balance strong{color:#3f2a18;font:700 24px Cinzel,Georgia,serif}.cof2-wallet-balance span{font:700 10px Georgia,serif;color:#765837}.cof2-wallet-rate{margin:11px 0 17px;color:#715336;font:12px/1.4 Georgia,serif;text-align:center}.cof2-wallet-modes{display:grid;grid-template-columns:1fr 1fr;border:1px solid #a88655}.cof2-wallet-modes button{padding:8px;border:0;background:transparent;color:#5b4025;cursor:pointer}.cof2-wallet-modes button.active{background:#6b4e2e;color:#fff1d4}.cof2-wallet-amount{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:10px;margin-top:16px}.cof2-wallet-amount label{display:grid;gap:5px;min-width:0;color:#5b4025;font:12px Georgia,serif}.cof2-wallet-amount input,.cof2-wallet-amount select{box-sizing:border-box;width:100%;min-width:0;padding:7px;border:1px solid #aa895b;background:#fff7e6;color:#382719;font:14px Georgia,serif}.cof2-wallet-preview{min-height:34px;margin:14px 0;color:#5b4025;font:13px/1.35 Georgia,serif}.cof2-wallet-preview.error{color:#9a342e}.cof2-wallet-modal [data-wallet-submit]{width:100%;padding:9px;border:1px solid #806039;background:#ead5ad;color:#46301d;cursor:pointer}.cof2-wallet-modal [data-wallet-submit]:disabled{opacity:.5;cursor:not-allowed}
.cof2-long-rest-modal{box-sizing:border-box;width:min(420px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:24px;text-align:left}.cof2-long-rest-modal>*{min-width:0}.cof2-long-rest-modal h2,.cof2-long-rest-modal>p{text-align:center}.cof2-long-rest-modal label{display:grid;gap:4px;min-width:0}.cof2-long-rest-modal select{box-sizing:border-box;width:100%;min-width:0}.cof2-long-rest-modal fieldset{box-sizing:border-box;min-width:0;margin:0;border:1px solid #bda77f}.cof2-long-rest-modal fieldset label,.cof2-long-rest-modal>label:has(input[type=checkbox]){display:flex;align-items:flex-start;gap:7px}.cof2-long-rest-modal input[type=checkbox],.cof2-long-rest-modal input[type=radio]{flex:none;margin-top:3px}.cof2-long-rest-modal [data-cof2-long-confirm],.cof2-resource-modal [data-cof2-wallet-save]{padding:7px;border:1px solid #9b7441;background:#ead8b4;color:#432d19;cursor:pointer}
.compendium-entry-actions .compendium-buy{display:inline-flex;align-items:center;gap:5px}
.cof2-add-result{display:flex;align-items:stretch;border-bottom:1px solid #d0b98d}.cof2-add-result>button:first-child{flex:1;min-width:0;border-bottom:0}.cof2-add-results .cof2-add-buy{flex:none;width:38px;padding:5px;align-items:center;justify-content:center;border-left:1px solid #d0b98d;border-bottom:0}
#cof2LevelOverlay{z-index:56}
.cof2-resource-editor [data-cof2-level-current]{min-width:42px;font:700 22px Cinzel,Georgia,serif}
.cof2-resource-editor button:disabled{opacity:.35;cursor:default}
.cof2-level-xp{margin:0 0 6px;font:700 12px Georgia,serif}
.cof2-level-hint{margin:0;color:#765734;font:11px Georgia,serif}
.cof2-item-actions button[data-cof2-weapon-roll]{width:25px;height:23px;display:grid;place-items:center;color:#804322}
.cof2-item-actions button[data-cof2-weapon-roll]:hover{color:#bd5b20}
.cof2-item-actions button[data-cof2-weapon-roll] svg{width:18px;height:18px}
.cof2-roll-overlay{z-index:150}
.cof2-roll-modal{width:min(530px,94vw);max-height:88vh;overflow:auto;padding:25px 28px;background:radial-gradient(circle at 35% 20%,#fff6e1,#e5d0aa);color:#35261b;border:2px solid #9b7441}
.cof2-roll-modal h2{font:20px Cinzel,Georgia,serif;margin:4px 25px 4px 0}
.cof2-roll-eyebrow{font:9px Cinzel,Georgia,serif;color:#89683a;letter-spacing:.08em}
.cof2-roll-summary{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid #b69a6e;color:#765734;font:12px Georgia,serif}
.cof2-roll-summary span{font-weight:bold;color:#3c2b19}
.cof2-roll-armor-note{margin:-4px 0 10px;color:#8a4529;font:11px/1.4 Georgia,serif}
.cof2-roll-modal label,.cof2-roll-modal fieldset{display:block;margin:10px 0;color:#614629;font:700 11px Georgia,serif}
.cof2-roll-modal fieldset{padding:0;border:0}
.cof2-roll-modal legend{margin-bottom:6px}
.cof2-roll-modal input[type=number],.cof2-roll-modal select{display:block;width:100%;height:31px;margin-top:4px;padding:4px 7px;border:1px solid #b69a6e;border-radius:2px;background:#fff7e6;color:#342515;font:12px Georgia,serif}
.cof2-roll-mode-labels{display:flex;justify-content:space-between;gap:5px;color:#765734;font:10px Georgia,serif}
.cof2-roll-mode-labels span:nth-child(2){text-align:center}
.cof2-roll-mode input[type=range]{width:100%;margin:6px 0;accent-color:#815c32}
.cof2-roll-skill-note{display:block;max-height:50px;overflow:auto;color:#7b6040;font:10px/1.35 Georgia,serif}
.cof2-roll-tactic-note{min-height:13px;margin:5px 0;color:#735431;font:11px Georgia,serif}
.cof2-roll-actions{display:flex;gap:8px;margin-top:14px}
.cof2-roll-actions button{flex:1;padding:7px 9px;border:1px solid #9f7d4a;background:#e8d5b2;color:#3a2818;font:12px Georgia,serif;cursor:pointer}
.cof2-roll-actions button[type=submit]{background:#71502e;color:#fff1d5}
.cof2-roll-modal>[data-cof2-visibility]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px;border:1px solid #c3a87e;background:#f7e9cb;color:#3b291a;text-align:left;cursor:pointer}
.cof2-roll-modal>[data-cof2-visibility]+[data-cof2-visibility]{border-top:0}
.cof2-roll-modal>[data-cof2-visibility]:hover{background:#ebd6af}
.cof2-roll-modal small{color:#785b38}
.cof2-chance-button{display:block;margin:5px 0 0;padding:3px 7px;border:1px solid #9e7c4a;border-radius:4px;background:#d9ba83;color:#352518;font:11px Georgia,serif;cursor:pointer}
.cof2-chance-used{display:block;margin:4px 0 0;font:11px Georgia,serif;color:#d7b36f}
.log-entry.roll:has(.cof2-roll-result){display:flex;flex-direction:column}
.log-entry.roll:has(.cof2-roll-result) .log-top{order:0}
.log-entry.roll:has(.cof2-roll-result) .cof2-roll-result{order:1}
.log-entry.roll:has(.cof2-roll-result) .log-text{order:2}
.log-entry.roll:has(.cof2-roll-result) .cof2-roll-targets{order:3}
.log-entry.roll:has(.cof2-roll-result) .cof2-chance-button,.log-entry.roll:has(.cof2-roll-result) .cof2-chance-used{order:4}
.log-entry.roll:has(.cof2-roll-result) .cof2-apply-damage{order:5}
.log-entry.roll:has(.cof2-roll-result) .cof2-damage-results{order:6}
.log-entry.roll:has(.cof2-roll-result) .log-visibility{order:7}
.cof2-roll-result{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:3px 8px;margin-top:7px;padding:9px 11px;background:#263737;border:1px solid #9d8258;border-radius:4px;color:#f5dca5}
.cof2-roll-result>strong{font:700 24px Cinzel,Georgia,serif;line-height:1.1}
.cof2-roll-result>small{font:9px 'DM Sans',sans-serif;letter-spacing:.1em;color:#bdc9bc}
.cof2-roll-result>span{grid-column:1/-1;color:#dfd6bc;font:11px Georgia,serif;overflow-wrap:anywhere}
.cof2-roll-targets{display:grid;gap:3px;margin-top:7px}
.cof2-roll-targets>div{display:flex;justify-content:space-between;gap:5px;font:11px Georgia,serif;color:#e5dcc2}
.cof2-roll-targets span{color:#c8ac7c}
.cof2-apply-damage{align-self:start;margin-top:7px;padding:6px 9px;border:1px solid #b79865;border-radius:4px;background:#d7ba81;color:#30261c;font:700 11px Georgia,serif}
.cof2-critical-choice,.cof2-critical-decision,.cof2-critical-awaiting{order:4;display:block;width:100%;min-width:0;margin:9px 0 0;padding:9px;border:1px solid #a88958;border-radius:4px;background:#ead6ad;color:#382817;font:11px/1.35 Georgia,serif}
.cof2-critical-choice>strong,.cof2-critical-decision strong{display:block;margin-bottom:5px;font:700 12px/1.3 Cinzel,Georgia,serif}
.cof2-critical-choice label{display:flex;align-items:flex-start;gap:7px;margin:6px 0;cursor:pointer}
.cof2-critical-choice label span{min-width:0;overflow-wrap:anywhere}
.cof2-critical-choice input[type=radio]{flex:none;margin:1px 0 0;accent-color:#6c4525}
.cof2-critical-choice input[type=text]{box-sizing:border-box;width:100%;margin:6px 0;padding:5px;border:1px solid #b69a6e;background:#fff3d8;color:#382817;font:11px Georgia,serif}
.cof2-critical-choice button{padding:5px 8px;border:1px solid #7f603b;background:#72502d;color:#fff2d9;font:700 11px Georgia,serif}
.cof2-critical-decision span{display:block;margin-top:3px}
.cof2-damage-results{margin-top:7px;font:11px Georgia,serif;color:#dfc7a5}
.cof2-targeting .token{cursor:crosshair!important}
.token.cof2-targeted{outline:3px solid #e33827!important;box-shadow:0 0 0 5px #b9181880,0 0 26px 9px #e22121a6!important}
#cof2AreaPreview{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:2}
#cof2AreaPreview ellipse,#cof2AreaPreview polygon{fill:#db352a45;stroke:#e4392b;stroke-width:.35;vector-effect:non-scaling-stroke}
.map-board.cof2-area-aiming{cursor:crosshair}
.cof2-attack-panel{position:fixed;z-index:18;left:50%;bottom:25px;transform:translateX(-50%);width:min(340px,90vw);padding:14px 16px;background:#ecdbb9;border:2px solid #9d7644;border-radius:7px;box-shadow:0 10px 35px #0009;color:#3a281c;font:12px Georgia,serif}
.cof2-attack-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font:700 14px Cinzel,Georgia,serif}
.cof2-attack-panel-head button{border:0;background:transparent;color:#513b26;font-size:21px}
.cof2-attack-panel p{margin:9px 0}
.cof2-attack-panel label{display:block;margin-top:9px;font-weight:bold}
.cof2-attack-panel select{display:block;width:100%;margin-top:5px;padding:6px;background:#fff2d7;border:1px solid #b39766;color:#3a281c}
.cof2-attack-panel [data-cof2-target-confirm]{width:100%;padding:7px;border:1px solid #9d7644;background:#d1ae70;color:#2d2117;font-weight:bold}
.cof2-target-names{min-height:16px;color:#855332}
.cof2-spellbook{width:min(530px,92vw);max-height:82vh;overflow:auto;padding:25px 30px;background:linear-gradient(90deg,#e8d1a5,#fff1d3 8%,#f9e8c4 92%,#d5b682);border:10px solid #5c3920;color:#35261b;box-shadow:0 12px 40px #0009}
.cof2-spellbook header{font:10px Cinzel,Georgia,serif;letter-spacing:.1em;border-bottom:1px solid #ac8855;color:#8a673c}
.cof2-spellbook h2{text-align:center;font:22px Cinzel,Georgia,serif;margin:14px 0 3px}
.cof2-spell-mana{text-align:center;margin:0 0 16px;color:#735632}
.cof2-spell-list{border-top:1px solid #aa885b}
.cof2-spell-row{display:flex;align-items:center;gap:8px;border-bottom:1px solid #c8ab78}
.cof2-spell-row button{border:0;background:transparent;color:#382719;cursor:pointer}
.cof2-spell-row button:first-child{flex:1;display:flex;flex-direction:column;align-items:flex-start;padding:9px 3px;text-align:left}
.cof2-spell-row small{margin-top:2px;color:#7c5a32}
.cof2-spell-row [data-cof2-cast]{width:34px;height:34px;display:grid;place-items:center;border:1px solid #a98652;border-radius:50%;background:#efd9aa}
.cof2-spell-row [data-cof2-cast]:disabled{opacity:.4;cursor:not-allowed}
.cof2-spell-row svg{width:18px;height:18px}
.cof2-compendium-ranks article{padding:.5rem 0;border-top:1px solid #b49768}
.cof2-compendium-ranks article p{margin:.3rem 0 0;white-space:pre-line;line-height:1.45}
.cof2-compendium-links button{display:block;width:100%;margin:.35rem 0;padding:.4rem .6rem;border:1px solid #ad8d58;background:#f3dfb4;color:#3d2b1b;text-align:left;cursor:pointer}
.cof2-people-description p strong{font-weight:700}
.cof2-people-description p{margin:.25rem 0 .8rem}
.cof2-condition-tags{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:4px 0 9px}
.cof2-condition-tags span{padding:2px 6px;border:1px solid #9e483e;border-radius:10px;background:#8b342b;color:#fff;font:700 10px 'DM Sans',sans-serif}
.cof2-condition-tags button{padding:2px 6px;border:1px solid #9b7a4c;background:transparent;color:#513c27;font-size:11px;cursor:pointer}
.cof2-token-condition{position:absolute;top:-8px;right:-8px;z-index:3;display:grid;place-items:center;width:19px;height:19px;border:1px solid #ffd9b8;border-radius:50%;background:#bb302d;color:white;font:700 12px 'DM Sans',sans-serif;box-shadow:0 1px 5px #0009;pointer-events:auto}
.cof2-condition-modal{width:min(480px,92vw);max-height:80vh;overflow:auto}.cof2-condition-list>div{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:6px 0;border-bottom:1px solid #bfa77b}.cof2-condition-list strong{min-width:125px}.cof2-condition-list button{padding:3px 6px;border:1px solid #a98b64;background:#f1dfbc;color:#3d2b1b;cursor:pointer}
.cof2-compendium-equipment h5{margin:.7rem 0 .25rem}
.cof2-equipment-table-wrap{max-height:19rem;overflow:auto;border:1px solid #b69766}
.cof2-equipment-table-wrap table{width:100%;border-collapse:collapse;font-size:.78rem;color:#342719}
.cof2-equipment-table-wrap th{position:sticky;top:0;background:#d8bf8d;text-align:left}
.cof2-equipment-table-wrap th,.cof2-equipment-table-wrap td{padding:.32rem;border-bottom:1px solid #c4a776}
.cof2-equipment-table-wrap tr[data-compendium-open-entry]{cursor:pointer}
.cof2-equipment-table-wrap tr.selected{background:#e6c993;font-weight:bold}
.cof2-beast-statline,.cof2-beast-attributes{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}
.cof2-beast-statline span,.cof2-beast-attributes span{padding:.25rem .45rem;border:1px solid #b49768;background:#ead5ad}
.cof2-beast-token{font-size:.75rem;color:#6d4f2e}
#compendiumTokenField img{display:block;max-width:8rem;max-height:8rem;object-fit:contain;margin:.5rem 0}
#compendiumTokenField img.hidden{display:none}
.cof2-spellbook>.close,.cof2-roll-modal>.close,.cof2-resource-modal>.close,.cof2-add-modal>.close{color:#4b321d;background:#ead5ad;border:1px solid #9a784c;border-radius:50%;width:28px;height:28px;display:grid;place-items:center}

/* Commandes discrètes au pied de la page de création des créatures. */
#addOverlay.cof2-create #newCof2NpcModeWrap:not(.hidden){position:absolute;z-index:8;left:10.5%;bottom:16%;display:flex;align-items:center;gap:5px;width:auto;margin:0;color:#684b2a;font-size:10px;white-space:nowrap}
#addOverlay.cof2-create #newCof2NpcModeWrap span{display:flex;align-items:center;gap:5px}
#addOverlay.cof2-create #newCof2NpcMode{width:48px;height:auto;margin:0;padding:0;accent-color:#8a6037;cursor:pointer}
#addOverlay.cof2-create #newNpcCompendium:not(.hidden){position:absolute;z-index:8;left:10.5%;bottom:19%;width:auto;height:auto;margin:0;padding:2px 0;border:0;background:transparent;box-shadow:none;color:#684b2a;font:11px Georgia,serif;text-decoration:underline;text-underline-offset:3px}
#addOverlay.cof2-create #newNpcCompendium:not(.hidden):hover{color:#342111}
@media(max-width:650px){
  #addOverlay.cof2-create #newCof2NpcModeWrap:not(.hidden),#addOverlay.cof2-create #newNpcCompendium:not(.hidden){left:13%}
}

/* Commandes des capacités de créature. */
.cof2-page-npc .cof2-npc-edit-capacity,.cof2-page-npc .cof2-npc-remove-capacity{display:grid;place-items:center;flex:none;width:20px;height:20px;padding:2px;border:0;background:transparent}
.cof2-page-npc .cof2-npc-edit-capacity svg{width:13px;height:13px}
.cof2-page-npc .cof2-npc-attack-values{font-size:12px;color:#684822}
.cof2-page-npc [data-cof2-remove-npc-capacity] svg{width:16px;height:16px}
.cof2-attributes [data-cof2-roll] .dice-icon{width:16px;height:16px;display:block;margin:auto}

/* Les descriptions de capacités restent lisibles sur toute la largeur. */
.cof2-page-npc .cof2-item-row{align-items:flex-start}
.cof2-page-npc .cof2-item-name small{display:block;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.3}
#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode{display:flex;align-items:center;gap:6px;margin:8px 0;color:#684822;font:11px Georgia,serif}
#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode input{width:34px;height:17px;margin:0;accent-color:#8a6037}

#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode input{appearance:none;position:relative;border:1px solid #92724b;border-radius:12px;background:#c7af84;cursor:pointer}
#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode input::before{content:"";position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:#fff4dc;transition:transform .15s}
#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode input:checked{background:#80603d}
#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode input:checked::before{transform:translateX(16px)}

#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode{position:absolute;z-index:8;left:10%;bottom:4.2%;display:flex;flex-direction:row;align-items:center;gap:6px;margin:0;color:#f2dcba;font:11px Georgia,serif;white-space:nowrap}
#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode span{display:inline;width:auto}
#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode input{display:block;flex:none;width:34px;height:17px;padding:0;margin:0}
@media(max-width:650px){#sheetOverlay.cof2-open #cof2Sheet .cof2-npc-mode{left:12%;bottom:9%}}

.cof2-hero-head.cof2-landscape .cof2-photo{grid-column:1/-1;grid-row:2;height:clamp(120px,18vh,170px)}
.cof2-hero-head.cof2-landscape .cof2-photo img{object-fit:contain}
.cof2-hero-head.cof2-landscape .cof2-hero-summary{grid-column:1/-1;grid-row:1}
.cof2-hero-summary [data-cof2-photo-format]{display:inline-block;width:auto;margin-top:5px;padding:2px 0;border:0;border-bottom:1px solid #a98b55;background:transparent;color:#684822;font:11px Georgia,serif;cursor:pointer}

/* La page d’identité PNJ garde ses champs fixes au-dessus des médias. */
.cof2-leaf:has(.cof2-npc-identity){overflow:hidden}
.cof2-page.cof2-npc-identity{box-sizing:border-box;height:100%;min-height:0;display:flex;flex-direction:column}
.cof2-npc-identity>.cof2-hero-summary{flex:none}
.cof2-npc-name-row{display:grid;grid-template-columns:minmax(0,1fr) 65px;gap:12px;align-items:end}
.cof2-npc-media-scroll{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#ac895e transparent;padding:8px 5px 18px 0}
.cof2-npc-media-scroll .cof2-photo{height:clamp(145px,25vh,230px);width:45%;max-width:none;margin:0 auto 8px;border-width:3px}
.cof2-npc-media-scroll.cof2-landscape .cof2-photo{width:100%;height:clamp(120px,18vh,170px)}
.cof2-npc-media-scroll .cof2-photo img{object-fit:contain}
.cof2-npc-media-scroll label{display:flex;flex-direction:column}
.cof2-npc-media-scroll textarea{height:auto;min-height:80px;overflow:hidden;resize:none}
.cof2-npc-media-scroll [data-cof2-photo-format]{position:absolute;top:5px;left:5px;display:grid;place-items:center;width:28px;height:28px;padding:4px;border:1px solid #a98b55;border-radius:50%;background:#f5e9ceeb;color:#51391f}
.cof2-npc-media-scroll [data-cof2-photo-format] svg{width:16px;height:16px}

/* La liste des capacités est la seule zone défilante de la page PNJ. */
.cof2-leaf:has(.cof2-page-npc){overflow:hidden}
.cof2-page.cof2-page-npc{box-sizing:border-box;height:100%;min-height:0;display:flex;flex-direction:column}
.cof2-page-npc>.cof2-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
.cof2-page-npc>.cof2-stats label{min-width:0}
.cof2-page-npc>.cof2-stats input{min-width:0;padding-left:3px;padding-right:3px}
.cof2-page-npc>[data-cof2-npc-capacities]{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#ac895e transparent;padding-right:4px}
.cof2-page-npc>.cof2-inventory-head,.cof2-page-npc>.cof2-stats,.cof2-page-npc>.cof2-attributes,.cof2-page-npc>label{flex:none}

/* Contraindre l’image au cadre et placer les notes après les capacités. */
.cof2-npc-media-scroll .cof2-photo>img{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.cof2-page-npc>.cof2-npc-capacity-scroll{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#ac895e transparent;padding-right:4px}
.cof2-npc-capacity-scroll>label{display:flex;flex-direction:column;margin-top:8px}
.cof2-npc-capacity-scroll textarea{height:auto;min-height:80px;overflow:hidden;resize:none}

/* Étiquettes d’états sur parchemin. */
.cof2-condition-modal.modal{position:relative;box-sizing:border-box;width:min(560px,92vw);max-height:85vh;overflow:auto;padding:25px 28px;background:radial-gradient(circle at 35% 20%,#fff6e1,#e5d0aa);border:2px solid #9b7441;color:#35261b;box-shadow:0 20px 70px #0009}
.cof2-condition-modal>small{font:10px Cinzel,Georgia,serif;letter-spacing:.1em;color:#80623a}
.cof2-condition-modal h2{margin:6px 35px 8px 0;color:#51381d;font:21px Cinzel,Georgia,serif}
.cof2-condition-modal p{margin:8px 0 15px;color:#6e5433;font:12px/1.45 Georgia,serif}
.cof2-condition-modal>.close{color:#4b321d;background:#ead5ad;border:1px solid #9a784c;border-radius:50%;width:28px;height:28px;display:grid;place-items:center}
.cof2-condition-modal .cof2-condition-list{display:flex;flex-wrap:wrap;gap:8px}
.cof2-condition-modal .cof2-condition-chip{display:inline-flex;align-items:stretch;gap:0;padding:0;border:1px solid #b4986d;border-radius:18px;background:#f4e5c6;overflow:hidden}
.cof2-condition-modal .cof2-condition-chip.is-active{border-color:#873a30;background:#8b4034;color:#fff5df}
.cof2-condition-modal .cof2-condition-chip button{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 10px;border:0;background:transparent;color:inherit;font:12px Georgia,serif;cursor:pointer}
.cof2-condition-modal .cof2-condition-chip button:hover{background:#74543922}
.cof2-condition-modal .cof2-condition-chip button:focus-visible{outline:2px solid #c68c39;outline-offset:-3px}
.cof2-condition-modal .cof2-condition-symbol{font-size:15px;line-height:1}
.cof2-condition-modal .cof2-condition-duration{min-width:16px;text-align:center;font:700 11px 'DM Sans',sans-serif}
.cof2-condition-modal .cof2-condition-chip .cof2-condition-less{padding:4px 10px;border-left:1px solid #b98b71;font-size:16px}
.cof2-condition-modal .cof2-condition-stand{margin-top:14px;padding:6px 10px;border:1px solid #9b7441;background:#ead8b4;color:#432d19;cursor:pointer}
.cof2-condition-modal .cof2-condition-hint{margin:16px 0 0;font-size:11px}

.cof2-beast-origin{display:inline-block;padding:0 .3em;border:1px solid #ad8d58;border-radius:.3em;color:#694b2f;font-size:.72em;line-height:1.35;white-space:nowrap}

/* Fiche PNJ sans portrait : caractéristiques sur la page d’identité. */
.cof2-npc-identity>.cof2-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;flex:none}
.cof2-npc-identity>.cof2-stats label{min-width:0}
.cof2-npc-identity>.cof2-stats input{min-width:0;padding-left:3px;padding-right:3px}
.cof2-npc-identity>.cof2-attributes{flex:none}
.cof2-page .cof2-npc-add-portrait{align-self:flex-start;border:0;border-bottom:1px solid #ad8d58;padding:1px 0;background:transparent;color:#684822;font:11px Georgia,serif;cursor:pointer}
.cof2-item-actions button[data-cof2-share-npc-capacity]{display:grid;place-items:center;width:23px;height:23px;color:#684822}
.cof2-item-actions button[data-cof2-share-npc-capacity] svg{width:16px;height:16px}
.cof2-item-actions button[data-cof2-share-npc-capacity]:hover{color:#a45b2f}
