.brief-wrap { width:min(calc(100% - 48px),1180px); margin-inline:auto; }
.brief-hero { color:#fff; background:radial-gradient(circle at 80% 10%,rgba(229,90,24,.3),transparent 27rem),linear-gradient(120deg,#132d2b,#122332); padding:clamp(4rem,8vw,7rem) 0; }
.brief-kicker { margin:0; color:#e7bb93; font-size:.75rem; font-weight:700; letter-spacing:.14em; }
.brief-hero h1 { max-width:15ch; margin:1.3rem 0; font-size:clamp(2.45rem,6vw,5rem); line-height:1.1; letter-spacing:-.05em; }
.brief-hero h1 em { color:#ffad72; font-style:normal; }
.brief-hero .brief-wrap > p:not(.brief-kicker) { max-width:47rem; color:#dceae6; line-height:1.85; }
.brief-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }
.brief-actions button,.brief-actions a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:.65rem 1.1rem; border:1px solid #b5cac2; border-radius:4px; color:#fff; background:transparent; font:inherit; font-size:.9rem; font-weight:700; cursor:pointer; }
.brief-actions button { color:#172a25; background:#ffb684; border-color:#ffb684; }
.brief-actions :is(button,a):focus-visible,.share-dialog button:focus-visible,.brief-item a:focus-visible,.brief-promo a:focus-visible { outline:3px solid #1463df; outline-offset:3px; }
main { background:#f5f7f5; padding-bottom:5rem; }
.brief-notice { margin:2.5rem 0 0; padding:1.15rem 1.4rem; background:#f9fbf9; border:1px solid #dce6e0; border-left:2px solid #9fb5aa; color:#435b58; font-size:.88rem; line-height:1.8; }
.brief-notice strong { color:#365248; font-size:.9rem; }
.brief-notice p { max-width:92ch; margin:.55rem 0 0; }
.brief-notice-context { color:#5b7068; font-size:.8rem; }
.brief-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:2.5rem; }
.brief-stats p { margin:0; padding:1.3rem 1.5rem; background:#fff; border:1px solid #dce6e0; }
.brief-stats strong,.brief-stats span { display:block; }
.brief-stats strong { color:#a84317; font-size:2rem; line-height:1.1; }
.brief-stats span { margin-top:.35rem; color:#41594f; font-size:.85rem; }
.brief-section { margin-top:4.5rem; }
.brief-section-heading { display:flex; justify-content:space-between; align-items:end; gap:2rem; margin-bottom:1.3rem; }
.brief-section-heading span { color:#9d451d; font-size:.75rem; font-weight:700; }
.brief-section-heading h2 { margin:.4rem 0 0; font-size:clamp(1.8rem,3.5vw,2.7rem); }
.brief-section-heading p { max-width:28rem; margin:0; color:#52685d; font-size:.85rem; line-height:1.65; }
.brief-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.brief-item { min-width:0; padding:1.5rem; background:#fff; border:1px solid #dce6e0; }
.brief-item-meta { display:flex; flex-wrap:wrap; gap:.5rem; }
.brief-item-meta span { padding:.2rem .45rem; color:#37574a; background:#edf4ed; font-size:.72rem; }
.brief-item-meta .expired { color:#88431c; background:#fff0e4; font-weight:700; }
.brief-item h3 { margin:1rem 0 .35rem; font-size:1.45rem; line-height:1.35; }
.brief-item p { color:#425b54; font-size:.88rem; line-height:1.7; }
.brief-item .brief-buyer { margin:.2rem 0 .8rem; color:#62756d; font-size:.78rem; }
.brief-item .brief-deadline { margin:1rem 0; color:#3d564c; font-size:.82rem; }
.brief-item a { display:inline-block; padding-bottom:.15rem; color:#953b13; border-bottom:1px solid #c88762; font-size:.86rem; font-weight:700; }
.brief-promo { margin-top:4.5rem; padding:clamp(2rem,5vw,4rem); color:#fff; background:linear-gradient(120deg,#163831,#122d32); }
.brief-promo > p:first-child { margin:0; color:#f4b88b; font-size:.75rem; letter-spacing:.1em; }
.brief-promo h2 { margin:.75rem 0; font-size:clamp(2rem,4vw,3.2rem); }
.brief-promo > p:nth-of-type(2) { max-width:47rem; color:#dfeae6; line-height:1.8; }
.brief-promo div { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.8rem; }
.brief-promo a { padding:.65rem 1rem; border:1px solid #c0d5cd; border-radius:4px; font-size:.88rem; font-weight:700; }
.brief-source { margin:2rem 0 0; color:#5a6d63; font-size:.8rem; line-height:1.7; }
.share-dialog { width:min(92vw,420px); max-height:calc(100vh - 2rem); padding:0; border:1px solid #d6e2db; border-radius:8px; box-shadow:0 24px 70px rgba(0,0,0,.25); }
.share-dialog::backdrop { background:rgba(10,24,25,.62); }
.share-dialog-inner { position:relative; padding:1.7rem; text-align:center; }
.share-dialog h2 { margin:.4rem 0; }
.share-dialog p { color:#496057; font-size:.88rem; line-height:1.65; }
.share-dialog img { max-width:100%; margin:.25rem auto; }
.share-dialog button:not(.share-close) { min-height:42px; padding:.5rem 1rem; border:0; border-radius:4px; color:#fff; background:#1b4d3d; font:inherit; font-weight:700; cursor:pointer; }
.share-close { position:absolute; top:.35rem; right:.5rem; width:40px; height:40px; border:0; color:#4b5c54; background:transparent; font-size:1.6rem; cursor:pointer; }
#copy-result { min-height:1.4em; margin:.5rem 0 0; }
@media (max-width:760px) { .brief-section-heading { display:block; } .brief-section-heading p { margin-top:.6rem; } .brief-grid { grid-template-columns:1fr; } .brief-stats { gap:.5rem; } .brief-stats p { padding:.85rem; } .brief-stats span { font-size:.72rem; } .brief-hero { padding:4rem 0; } }
@media (max-width:360px) { .brief-stats { grid-template-columns:1fr; } }
